Mybatis学习总结

    xiaoxiao2021-03-26  32

    Mybatis快速入门

    一、Mybatis介绍

    MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。

    二、mybatis快速入门

    2.1、准备开发环境

    1.创建java项目 2.导入相应的jar包 3.创建数据库和表

    2.2、使用MyBatis查询表中的数据

    1.添加mybatis配置文件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> <environments default="mybatisDemo"> <environment id="mybatisDemo"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver" /> <property name="username" value="root" /> <property name="password" value="" /> <property name="url" value="jdbc:mysql:///test" /> </dataSource> </environment> </environments> </configuration>

    2.定义表对应的实体类

    package entity; public class User { private int id; private String name; private String pwd; 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 getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } @Override public String toString() { return "User [id=" + id + ", name=" + name + ", pwd=" + pwd + "]"; } }

    3.定义操作t_user表的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,namespace的值习惯上设置成包名+sql映射文件名,这样就能够保证namespace的值是唯一的 --> <mapper namespace="mapper.userMapper"> <!-- 根据id查询user对象,参数类型为int --> <select id="getUser" parameterType="int" resultType="entity.User"> select id,name,password from t_user where id=#{id} </select> </mapper>

    4、在conf.xml文件中注册userMapper.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="mybatisDemo"> <environment id="mybatisDemo"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver" /> <property name="username" value="root" /> <property name="password" value="" /> <property name="url" value="jdbc:mysql:///test" /> </dataSource> </environment> </environments> <!-- 注册userMapper.xml文件 --> <mappers> <mapper resource="mapper/userMapper.xml" /> </mappers> </configuration>

    5.编写测试类,执行select语句

    package test; import java.io.IOException; import java.io.InputStream; import java.io.Reader; 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 entity.User; public class Test { public static void main(String[] args) throws IOException { // 使用类加载器加载conf.xml文件 InputStream in = Test.class.getClassLoader().getResourceAsStream("conf.xml"); // 创建SqlSessionFactory SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(in); /* * 使用MyBatis提供的Resources类加载mybatis的配置文件(它也加载关联的映射文件) Reader reader = * Resources.getResourceAsReader("conf.xml"); SqlSessionFactory * sessionFactory = new SqlSessionFactoryBuilder().build(reader); */ SqlSession session = sessionFactory.openSession(); User user = session.selectOne("mapper.userMapper.getUser", 1); System.out.println(user); } }

    查询结果

    转载请注明原文地址: https://ju.6miu.com/read-660857.html

    最新回复(0)