Java持久化ORM框架
JDBC操作数据库步骤 (以查询为例)
MyBatis示例
<?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="development">
<environment id="development">
<!-- 配置事务管理器的类型 -->
<transactionManager type="JDBC"/>
<!-- 配置数据源的类型,以及数据库连接的相关信息 -->
<dataSource type="POOLED">
<!-- 数据库的链接信息-->
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql:///mybatis?useSSL=false&zeroDateTimeBehavior=convertToNull&useTimezone=true&serverTimezone=GMT%2B8"/>
<property name="username" value="root"/>
<property name="password" value="mt980312"/>
</dataSource>
</environment>
</environments>
<mappers>
<!-- 加载sql的映射文件 -->
<mapper resource="UserMapper.xml"/>
</mappers>
</configuration>
- 了解了mybatis-config.xml配置文件的大致结构之后,来看一下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">
<!--
namespace:名称空间
-->
<!-- 定义SQL 语句,除了select 节点,还可以定义insert,
update 、delete 节点。为了便于描述,后面统称为“ SQL 节点” -->
<mapper namespace="test">
<select id="selectAll" resultType="com.itheima.User">
select * from tb_user where;
</select>
</mapper>
package com.itheima;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
/**
* @author mengtong5
* @description Mybatis快速入门代码
* @date 2022/8/9
*/
public class MybatisDemo {
public static void main(String[] args) throws IOException {
//1.加载Mybatis的核心配置文件,获取sqlSessionFactory
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//2.获取对应的sqlSession对象,用它来执行sql
SqlSession sqlSession = sqlSessionFactory.openSession();
//3.执行sql
List<User> Users = sqlSession.selectList("test.selectAll");
//4.打印查询数据
System.out.println(Users);
//5.释放资源
sqlSession.close();
}
}
-
映射实体类
-
表结构