Mybatis 实践-环境搭建

工程结构如下

1、引入jar  mybatis-3.2.3.jar 和mysql-connector-java-5.1.25.bin.jar

2、使用Mysql创建表

CREATE TABLE `user` (
  `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(64) NOT NULL DEFAULT '',
  `dept` VARCHAR(254) NOT NULL DEFAULT '',
  `website` VARCHAR(254) DEFAULT '',
  `phone` VARCHAR(16) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=2 ;


INSERT INTO `user` VALUES ('1', 'larry', 'IT', 'http://www.baidu.com', '13688889999');

  

3、创建User实体类

public class User {
    private int id;
    private String name;
    private String dept;
    private String phone;
    private String website;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDept() {
        return dept;
    }

    public void setDept(String dept) {
        this.dept = dept;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getWebsite() {
        return website;
    }

    public void setWebsite(String website) {
        this.website = website;
    }
}

  

4、resources/configs/下创建Configure.xml

mybatis 配置文件,用来建立sessionFactory。里面主要包含了数据库连接,还有Java类对应的别名

<?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>
    <typeAliases>
        <typeAlias alias="User2" type="com.example.mybatis.model.User" />
    </typeAliases>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"></transactionManager>
            <dataSource type="POOLED">
                <property name="driver"  value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mapper/User.xml" />
    </mappers>
</configuration>  

这里<mapper resource="mapper/User.xml" /> 要映射类的xml配置文件

5、resources/mapper下创建User.xml

包含了各种SQL语句

<?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">
<mapper namespace="com.example.mybatis.dao.UserMapper">
    <select id="getUserById" parameterType="int" resultType="User2">
        select * from user where id = #{id}
    </select>
</mapper>

  

6、创建接口com.example.mybatis.dao.UserMapper

public interface UserMapper {
    User getUserById(int id);
}

  

7、创建测试类

public class MyBatisTest1 {

    private static SqlSessionFactory sqlSessionFactory;
    private static Reader reader;

    static {
        try {
            reader = Resources.getResourceAsReader("config/Configure.xml");
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
        }catch (Exception e){
            e.printStackTrace();
        }
    }

    public static  SqlSessionFactory getSession(){
        return  sqlSessionFactory;
    }

    public static void main(String[] args) {
        SqlSession session = sqlSessionFactory.openSession();
        try {
           User user =  (User)session.selectOne("com.example.mybatis.dao.UserMapper.getUserById",1 ) ;
           if(user != null){
               System.out.println("name is : " + user.getName() + ",所属部门: " + user.getDept());
           }
        }finally {
            session.close();
        }
    }
}

  

8、显示

猜你喜欢

转载自www.cnblogs.com/linlf03/p/12565333.html