目录
1.5.2加载核心配置文件,获取SqlSessionFactory对象
一、Mybatis
1.1创建User表,添加数据
|
1.2创建模块,添加依赖
|
1.3编写MyBatis核心配置文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "https://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <!-- 数据库连接池--> <property name="driver" value="dm.jdbc.driver.DmDriver"/> <property name="url" value="jdbc:dm://127.0.0.1:5236"/> <property name="username" value="TEST"/> <property name="password" value="TEST123456"/> </dataSource> </environment> </environments> <!-- 指定sql映射文件的路径--> <mappers> <mapper resource="UserMapper.xml"/> </mappers> </configuration> |
1.4编写SQL映射文件
id 对应该namespace下独特的SqlId,后续在sql会话工厂中调用。 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "https://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!--namespace 名称空间--> <mapper namespace="test"> <!-- resultType 返回数据类型--> <!-- id 查询的唯一ID--> <select id="selectAll" resultType="com.tyrtest.pojo.User"> <!-- 可修改--> select * from TEST."user" </select> </mapper> |
1.5编码
1.5.1定义POJO类
|
1.5.2加载核心配置文件,获取SqlSessionFactory对象
import com.tyrtest.pojo.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.InputStream; import java.util.List; public class MyBatisDemo { public static void main(String[] args) throws IOException { // 1.加载核心配置文件,获取SqlSession String resource = "mybatis-config.xml"; // 2.获取字符串字节流 InputStream inputStream = Resources.getResourceAsStream(resource); // 3.创建sql会话工厂,传入已构建字节流对象 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); // 4.打开sql会话,获取SqlSession对象,用于执行sql SqlSession sqlSession = sqlSessionFactory.openSession(); // 5.选用sql并收集数据 List<User> users = sqlSession.selectList("test.selectAll"); System.out.printf(String.valueOf(users)); // 6.释放资源 sqlSession.close(); } } |
1.6Mapper代理开发
1.6.1自定义Mapper接口
- 定义SQL映射文件同名的Mapper接口,将Mapper接口和映射文件放在同一目录下
创建对应Mapper接口文件,该接口文件针对SQL映射文件 将对应目录创建到resource环境中 使用maven进行检测,切记要在resource下建立和该Mapper接口同名的目录,然后再使用Maven进行解析,这样你的接口就可以正常的被使用了。 |
1.6.2编写对应Mapper.xml文件
- 设置SQL映射文件的NameSpace和对应SQL的唯一id
将SQL映射文件的命名空间更改为对应的接口类,以便标识 |
1.6.3Mapper调用
- Mapper接口中定义方法,方法名为SQL的id,并保证SQL返回的数据类型一致
调用User类中的 selectAll() 方法,并调整返回结果与查询所需要的类型一致 package com.tyrtest.Mapper; import com.tyrtest.pojo.User; import java.util.List; public interface UserMapper { List<User> selectAll(); } |
- 按照如下方法进行编码
// 4.打开sql会话,获取SqlSession对象,用于执行sql SqlSession sqlSession = sqlSessionFactory.openSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); // 5.选用sql并收集数据 List<User> users = mapper.selectAll(); |
1.7demo测试
二、Maven
2.1加载maven
2.2查找依赖包
Maven的依赖包建议到官方查找:
- 可以根据全类名查找
- (Maven官网)种类齐全,支持关键字检索
- 备用(界面简陋)
2.3添加依赖
在pom.xml文件中可以添加依赖包
2.4添加插件MavenHelper
如果你的Maven无法使用编译compile功能,那么看一看这里
三、常见问题
3.1Mybatis常见问题
3.1.1解决SQL警示
#正常来讲,IDEA已经正常连接过数据库以后,是可以直接提示sql语句的,因此在此尝试使用IDEA连接您的数据库即可 |
更多的和达梦数据库有关的技巧请前往达梦技术社区:
eco.dameng.com