MyBatis的使用(一)

来源:互联网 发布:java jar 打包依赖jar 编辑:程序博客网 时间:2024/06/06 02:01

MyBatis的使用

工具:eclipse、mysql
jar包:mybatis-3.4.0.jar、mysql-connector-java-5.1.36.jar

第一步:新建数据库-user表

第二步:新建实体类及映射文件


实体类内容(路径:com.test.mybatis.model):

public class User implements Serializable {private Long id;private String code;private String name;private String password;private static final long serialVersionUID = 1L;public Long getId() {    return id;}public void setId(Long id) {    this.id = id;}public String getCode() {    return code;}public void setCode(String code) {    this.code = code;}public String getName() {    return name;}public void setName(String name) {    this.name = name;}public String getPassword() {    return password;}public void setPassword(String password) {    this.password = password;} } 

映射文件内容(路径:com.test.mybatis.mapping):

<?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.test.mybatis.mapper.UserMapper"> <resultMap id="BaseResultMap" type="com.test.mybatis.model.User">    <id column="id" jdbcType="BIGINT" property="id" />    <result column="code" jdbcType="VARCHAR" property="code" />    <result column="name" jdbcType="VARCHAR" property="name" />    <result column="password" jdbcType="VARCHAR" property="password" /> </resultMap>     <select id="selectAll"  resultMap="BaseResultMap">        select * from user    </select></mapper>  

第三步:新建配置文件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><typeAliases>     <typeAlias alias="User" type="com.test.mybatis.model.User"/> </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="123456"/>        </dataSource>    </environment></environments><mappers>    <mapper resource="com/test/mybatis/mapping/UserMapper.xml"/></mappers>

第四步:测试连接数据库及增删改查操作

public class Main {public static void main(String[] args) throws IOException {    // TODO Auto-generated method stub    Reader reader = Resources.getResourceAsReader("mybatis_config.xml");    SqlSessionFactory  sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);            SqlSession session = sqlSessionFactory.openSession();    List<User> userList = session.selectList("com.test.mybatis.mapper.UserMapper.selectAll");    for (int i = 0; i < userList.size(); i++) {        User user = userList.get(i);        System.out.println("id:"+user.getId()+" name:"+user.getName()+" code:"+user.getCode());    }           session.close();}}  

总结

1、看完例子后不要感觉,每次都要编写实体类和映射文件,因为有人已经想到这点了。generator可以根据数据表自动生成实体类和映射文件,并且映射文件中基本的增删改查都有。如果业务需要很复杂的数据库操作,才需要在映射文件中编写sql语句。
2、配置文件只需要配置一次就行了,抛去配置文件,发现我们需要做的基本没有,好开森。
3、有人可能会说前面的都很简单,但是使用起来很复杂啊,需要Reader、SqlSessionFactory、SqlSession等。亲,不要着急,你可以在网上搜到好多别人已经封装好了的接口。而且,实际使用中也不需要你实现,一般都是和spring一起使用,spring把这些都已弄好了,你会发现更简单。

原创粉丝点击