什么是 MyBatis?
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
Getting started
要使用 MyBatis, 只需将 mybatis-x.x.x.jar 文件置于 classpath 中即可。 如果使用 Maven 来构建项目,则需将下面的 dependency 代码置于 pom.xml 文件中:
org.mybatis mybatis 3.5.0
由于要我操作的是mysql数据库,所以再引入mysql驱动包
mysql mysql-connector-java 8.0.15
首先工程目录结构如下:
1.创建一张测试表:t_user
2.然后根据表字段,写出实体类
//orm映射:要求实体类属性和数据库表字段要一一对应public class User { private String userId; private String userName; private int age; private String phone; private String address; //Getters和Setters方法省略 @Override public String toString() { return "{userId=" + userId + ", userName=" + userName + ", age=" + age + ", phone=" + phone + ", address=" + address + "}"; }}
3.写一个测试接口
public interface UserMapper { ListselectAll();}
4.编写sql映射文件:UserMapper.xml
5.核心配置文件:mybatis.config.xml
6.测试
public class Test { public static void main(String[] args) { try { String resource = "mybatis-config.xml"; InputStream is = Resources.getResourceAsStream(resource); SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is); //获取sqlsession SqlSession session = factory.openSession(); UserMapper mapper = session.getMapper(UserMapper.class); Listlist = mapper.selectAll(); for (User user : list) { System.out.println(user); } session.close();//关闭sqlsession } catch (IOException e) { e.printStackTrace(); } }}
将数据库查询到的所有数据打印如下: