MyBatis 入门01

来源:互联网 发布:模拟基金软件有哪些 编辑:程序博客网 时间:2024/06/08 11:54

第一步准备jar包:
log4j-1.2.16.jar
mybatis-3.1.1.jar
mysql-connector-java-5.1.7-bin.jar.

第二步:创建数据库:

SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for users-- ----------------------------DROP TABLE IF EXISTS `users`;CREATE TABLE `users` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `name` varchar(50) DEFAULT NULL,  `age` int(11) DEFAULT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;-- ------------------------------ Records of users-- ----------------------------INSERT INTO `users` VALUES ('1', 'tom', '20');INSERT INTO `users` VALUES ('2', 'jack', '29');

第三步添加配置文件conf.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>    <!-- 配置实体类的别名 -->    <typeAliases>        <!-- <typeAlias type="com.atguigu.day03_mybaits.test1.User" alias="_User"/> -->        <package name="com.atguigu.day03_mybaits.bean"/>    </typeAliases>    <environments default="development">        <environment id="development">            <transactionManager type="JDBC" />            <dataSource type="POOLED">                <property name="driver" value="com.mysql.jdbc.Driver" />                <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />                <property name="username" value="root" />                <property name="password" value="root" />            </dataSource>        </environment>    </environments></configuration>

第四步 建造实体类:

public class User {//shift+alt+s    private int id;    private String name;    private int age;    public User(int id, String name, int age) {        super();        this.id = id;        this.name = name;        this.age = age;    }    public User() {        super();    }    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 int getAge() {        return age;    }    public void setAge(int age) {        this.age = age;    }    @Override    public String toString() {        return "User [id=" + id + ", name=" + name + ", age=" + age + "]";    }}

2.5. 定义操作users表的sql映射文件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"> <mapper namespace="com.atguigu.mybatis_test.test1.userMapper">     <select id="getUser" parameterType="int"         resultType="com.atguigu.mybatis_test.test1.User">        select * from users where id=#{id}    </select></mapper>

2.6. 在conf.xml文件中注册userMapper.xml文件

<mappers>    <mapper resource="com/atguigu/mybatis_test/test1/userMapper.xml"/></mappers>

2.7. 编写测试代码:执行定义的select语句

public class Test {    public static void main(String[] args) throws IOException {        String resource = "conf.xml";         InputStream is = Test.class.getClassLoader().getResourceAsStream(resource);        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);        SqlSession session = factory.openSession();        String statement = "com.atguigu.day03_mybaits.test1.userMapper.getUser";        User user = session.selectOne(statement, 2);        System.out.println(user);    }}
0 0
原创粉丝点击