Javaweb mybatis接口开发实现过程详解
作者:岁月染过的梦 时间:2022-03-11 22:02:21
mapper.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值为对应接口的全路径 -->
<mapper namespace="com.tedu.dao.DoorMapper">
<!-- 1.查询所有门店信息,id值为对应接口中方法的名字
resultType指定将查询的结果封装到哪个pojo对象中
-->
<select id="findAll" resultType="com.tedu.pojo.Door">
select * from tb_door
</select>
</mapper>
mapper的接口文件(接口由我们自己声明,由Spring-mybatis提供子类实现类)
package com.tedu.dao;
import java.util.List;
import com.tedu.pojo.Door;
/**
* DoorMapper接口
* 声明增删改查方法,对门店信息进行操作
*/
public interface DoorMapper {
/**
*接口由我们开发人员负责提供,但接口的实现类(子类)由框架负责提供
*如果不整合mybatis和spring框架,接口的子类实例也是由mybatis负责创建
* 如果整合了mybatis和spring框架,接口的子类实例将会由spring容器负责创建
*/
//方法名必须肯mapper文件中的id值一致
public List<Door> findAll();
}
测试类中调用findAll方法
package com.tedu;
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;
import org.apache.jasper.tagplugins.jstl.core.ForEach;
import org.junit.Test;
import com.tedu.dao.DoorMapper;
import com.tedu.pojo.Door;
/**
* mybatis的入门案例: 查询yonghedb.emp表中的所有员工信息
*/
public class TestMybatis01 {
/* 练习1: 查询emp中的所有员工信息 */
@Test
public void testFindAll01() throws Exception {
//1.读取mybatis核心配置文件(mybatis-config.xml),Resources是mybatis提供的工具类
InputStream in = Resources.getResourceAsStream("mybatis/mybatis-config.xml");
//2.通过配置信息获取SqlSession工厂对象
SqlSessionFactory fac = new SqlSessionFactoryBuilder().build( in );
//3.获取SQLSession对象(打开与数据库的连接)
SqlSession session = fac.openSession();
//4.获取Doormapper子类实例
DoorMapper doormapper = session.getMapper(DoorMapper.class);
List<Door> lis = doormapper.findAll();
//5.输出结果
for (Door door : lis) {
System.out.println(door);
}
}
}
来源:https://www.cnblogs.com/syrgdm/p/13371082.html
标签:Java,web,mybatis,接口,开发
0
投稿
猜你喜欢
浅析C#中的Main(String[] args)参数输入问题
2023-08-13 01:45:58
SpringBoot深入了解日志的使用
2023-01-06 15:40:34
Flutter图片与文件选择器使用实例
2023-07-17 09:11:12
Java线程的五种状态介绍
2023-06-16 01:22:15
Java 如何安全的发布对象
2022-08-09 05:38:52
C#实现winform中RichTextBox在指定光标位置插入图片的方法
2022-04-04 01:50:16
浅谈SpringMVC的执行流程
2023-09-30 17:59:59
你所不知道的Spring的@Autowired实现细节分析
2023-11-25 05:40:47
c#操作xml帮助类分享(xml增删改查)
2022-03-02 04:09:21
Java中List转Map List实现的几种姿势
2022-10-23 19:19:57
springboot异常处理的基本规范
2023-11-23 15:48:19
C#生成带二维码的专属微信公众号推广海报实例代码
2023-04-04 23:30:57
MyBatis动态SQL标签的用法详解
2021-07-24 10:38:56
详解java中的6种单例写法及优缺点
2021-06-01 17:26:01
Java实现树形List与扁平List互转的示例代码
2023-03-15 00:18:23
Java线程中的常见方法(start方法和run方法)
2023-11-16 17:41:32
Java Socket 编程详解
2022-06-13 12:06:57
java简单实现用语音读txt文档方法总结
2022-11-10 22:02:54
C++高并发内存池的整体设计和实现思路
2023-07-03 16:29:31
Java图像之自定义角度旋转(实例)
2023-10-07 21:04:28