maven与eclipse的集成

由于篇幅问题,本文将不介绍maven的安装和配置。

 

一、maven的概念

Maven(翻译为"专家","内行")是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。

 

二、maven的目录骨架

 

 

 

三、maven的命令


mvn  compile   编译命令,maven项目编译后会生成一个target文件夹

mvn  test          测试命令

mvn  package      打包命令

mvn  clean           清除编译生成的target文件夹

mvn  install          安装jar包到本地仓库中

 

与eclipse集成之后就可以在如图所示的位置执行命令

 

 

四、maven的仓库以及坐标


1、maven仓库分为本地仓库和远程仓库,maven项目需要使用的jar包都是先从本地仓库中进行查找,如果没有找到,再从远程的maven中心仓库中下载到本地仓库

2、maven坐标是构件的唯一标识,而任何依赖,插件,项目构件的输出都可以被认为是一个构件。

  <groupId>公司地址反写-项目名</groupId>

  <artifactId>项目名-模块名</artifactId>

  <version>版本号</version>

 

五、eclispe新建maven项目

(这里我将直接改写之前没有使用maven管理的mybatis入门博客的例子,地址为https://www.cnblogs.com/lzxin/p/9589067.html)


1、新建一个maven项目,选择quickstart

 

 2、在pom.xml文件添加依赖

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <!--每个maven项目都需要的定义,自动生成的  -->
  <modelVersion>4.0.0</modelVersion>
  
  <groupId>com.lzx.maven</groupId>
  <artifactId>mybatis</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>mybatis</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <!--在这里编写有关依赖jar包的坐标  -->
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.6</version>
    </dependency>
    <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.46</version>
    </dependency>
  </dependencies>
  

</project>

 

3、其他的类和配置信息的代码

User类无变化省略

 

mybatis-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--环境配置,即连接哪种数据库。-->
    <environments default="mysql">
    <!--用于配置其中的一个环境(原因不太懂,先用着)  -->
    <environment id="mysql">
        <!--设置事务管理类型,使用了JDBC的提交和回滚机制  -->
        <transactionManager type="JDBC"/>
        <!--dataSource指数据源,POOLED是JDBC连接对象的数据源连接池的实现  -->
        <dataSource type="POOLED">
            <property name="driver" value="com.mysql.jdbc.Driver"/>
            <!--&amp;符号将转义为&  -->
            <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis?useUnicode=true&amp;characterEncoding=utf8"/>
            <property name="username" value="root"/>
            <property name="password" value="123456"/>
        </dataSource>
    </environment>
    </environments>
    <!--引入持久化类的映射文件-->
    <mappers>
        <mapper resource="mapper/UserMapper.xml"/>
    </mappers>
</configuration>

 

UserMapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--命名空间会用于Main类的session代码的增删改查  -->
<mapper namespace="mapper.UserMapper">
    <!--parameterType表示传入的参数,使用useGeneratedKeys="true"表示使用数据库的自动增长策略,#{name}表示去参数对象User中name的属性值  -->
    <insert id="save" parameterType="com.lzx.maven.mybatis.domin.User" useGeneratedKeys="true">
        insert into user(name,sex,age) values(#{name},#{sex},#{age})
    </insert>
</mapper>

 

Main类

public class Main {
    
    public static void main(String[] args) throws Exception {
        new Main().addUser();
    }
    
    public void addUser() throws Exception{
        InputStream inputStream=Resources.getResourceAsStream("mybatis-config.xml");
        SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession session=sqlSessionFactory.openSession();
        User user=new User("小明","男",30);
        session.insert("mapper.UserMapper.save",user);
        //提交事务
        session.commit();
        //关闭session
        session.close();
    }
}

 

posted @ 2018-10-03 19:24  professorxin  阅读(520)  评论(0编辑  收藏  举报