1、创建maven工程导入坐标
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.4</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.19</version>
</dependency>
2、创建实体类和dao接口
private Integer id;
private String username;
private Date birthday;
private Integer sex;
private String address;
//geter以及setter tostring
3、创建mybatis的主配置文件
注意数据库的连接8.0以上连接 & 换成 &
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/ssm_crud?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true "/>
<configuration>
<!--配置环境-->
<environments default="mysql">
<!--配置mysql环境-->
<environment id="mysql">
<!--配置事务类型-->
<transactionManager type="JDBC"></transactionManager>
<!--配置连接池-->
<dataSource type="POOLED">
<!--配置数据库四个连接信息-->
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/ssm_crud?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true "/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<!--指定映射文件位置-->
<mappers>
<mapper resource="com/milearn/dao/UserDao.xml"/>
</mappers>
4、创建映射配置文件
<mapper namespace="com.milearn.dao.UserDao">
<!--配置查询所有 id为方法名 必须说清楚返回值类型-->
<select id="findAll" resultType="com.milearn.domain.User">
select * from user ;
</select>
</mapper>
5、环境搭建注意事项
-
mybatis的映射配置文件的位置必须和dao接口的包结构保持一致
-
映射的配置文件的操作配置(select),id属性必须跟方法名相同
-
映射的配置文件的mapper标签namespace属性的取值必须是dao全类名
遵守上面三条规则,可以不写dao实现类
6、数据库操作
public static void main(String[] args) throws IOException {
//1、读取配置文件
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
//2、创建SqlSessionFactory工厂
SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
SqlSessionFactory factory=builder.build(in);
//3、使用工厂创建SqlSession对象
SqlSession session = factory.openSession();
//4、使用SqlSession创建dao接口的代理对象
UserDao userDao = session.getMapper(UserDao.class);
//5、代理对象执行方法
List<User> users = userDao.findAll();
for (User user :
users) {
System.out.println(user);
}
///6、释放资源
session.close();
in.close();
}