首页 > 其他 > 详细

mybatis 简单实例

时间:2017-03-01 21:46:06      阅读:237      评论:0      收藏:0      [点我收藏+]

    mybatis -- orm框架 支持定制化sql、存储过程


    1.引入依赖到pom

<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>3.0.5</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.25</version>
</dependency>

    2.mybatis应用的关键在于SqlSessionFactory,用于创建session(会话)。SqlSessionFactory通过SqlSessionFactoryBuilder 创建。

        -- mybatis-config.xml构建SqlSessionFactory  ,配置数据源

<?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.dao.UserDao" alias="UserDao"/>
        <typeAlias type="com.dto.User" alias="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://127.0.0.1:3306/iMybatis?characterEncoding=GBK"/>
                <property name="username" value="root"/>
                <property name="password" value="123"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="UserDao.xml"/>
    </mappers>
</configuration>

    -- 读取配置(写在测试类中)

SqlSessionFactoryBuilder sqlSessionFactoryBuilder;
SqlSessionFactory sqlSessionFactory;
String resource = "mybatis-config.xml";(记得修改成自己的路径)
Reader reader = Resources.getResourceAsReader(resource);
sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
sqlSessionFactory = sqlSessionFactoryBuilder.build(reader);

    2.创建dao及其映射文件

package com.dto;

/**
 * Created by ltsd on 2017/2/28.
 */
public class User {
    private Integer userid;
    private String username;
    private String password;
    private String address;
    private String createtime;

    public Integer getUserid() {
        return userid;
    }

    public void setUserid(Integer userid) {
        this.userid = userid;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getCreatetime() {
        return createtime;
    }

    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }

}
package com.dao;

import com.dto.User;

public interface UserDao {
    User queryUser(User user);
}
<?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.dao.UserDao">
    <select id="queryUser" resultType="User" parameterType="User">
        select * from t_user where userid = #{userid}
    </select>
</mapper>

3.测试

     --运行sql文件(添加一条记录)


package com;

import com.dao.UserDao;
import com.dto.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.Reader;

/**
 * Created by ltsd on 2017/2/28.
 */
public class Test {
    public static void main(String[] args) throws IOException {
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder;
        SqlSessionFactory sqlSessionFactory;
        String resource = "mybatis-config.xml";
        Reader reader = Resources.getResourceAsReader(resource);
        sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
        sqlSessionFactory = sqlSessionFactoryBuilder.build(reader);
        SqlSession session = null;
        try {
            session = sqlSessionFactory.openSession();
            UserDao userDao = session.getMapper(UserDao.class);
            User user = new User();
            user.setUserid(1);
            User user1 = userDao.queryUser(user);
            System.out.print(user1.getUsername());
            session.commit(true);
        } catch (Exception e) {
            session.rollback(true);
        } finally {
            session.close();
        }
    }
}


mybatis 简单实例

原文:http://cw666.blog.51cto.com/12488150/1902360

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!