Mybatis面向接口式编程
Mybatis面向接口编程
1.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">
<mapper namespace="com.dao.BookMapper"> <select id="selectBook" resultType="Book" databaseId="mysql">
select * from Book where id = #{id}
</select> <insert id="insertBook">
insert into book (title,price,publishDate) value(#{title},#{price},#{publishDate})
</insert> <update id="updateBook">
update book set title=#{title},price=#{price},publishDate=#{publishDate}
</update> <delete id="deleteBook">
delete from book where id=#{1}
</delete> </mapper>
namespace:接口全类名
resultType:返回值类型(起得别名)
databaseId:指定数据库厂商id
2.测试
public class Test {
public static void main(String[] args) throws IOException {
// 读取全局配置文件
String resource = "conf/mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
// 获取sqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
// 打开session
SqlSession session = sqlSessionFactory.openSession();
try {
// 面向接口方式
BookMapper bookMapper = session.getMapper(BookMapper.class);
// 测试新增
Book book = new Book(null, "jack", "2.1", "2018-01-19");
boolean flag = bookMapper.insertBook(book);
System.out.println(flag);
// 一定得手动提交
session.commit();
} finally {
// 关闭session
session.close();
}
}
}
Mybatis面向接口式编程的更多相关文章
- MyBatis的接口式编程Demo
很久没细看过MyBatis了,时间一长就容易忘记. 下面是一个接口式编程的例子. 这里的例子一共分为4步: 1 首先要有一个namespace为接口的全类名的映射文件,该例中是 IMyUser.xml ...
- mybatis面向接口的编程
一.实现面向接口编程 具体操作方法如下: 第一:编写一个接口(IUser.java) 接口暂时为空接口,接口文件包路径:com.gusi.demo.idao.IUser 第二:修改映射文件(User. ...
- MyBatis源码解析【7】接口式编程
前言 这个分类比较连续,如果这里看不懂,或者第一次看,请回顾之前的博客 http://www.cnblogs.com/linkstar/category/1027239.html 修改例子 在我们实际 ...
- mybaits接口式编程
Mybatis是接口式编程实现对.xml中sql语句的执行,其过程如下(取自慕课网视频<通过自动回复机器人学Mybatis---加强版>): 1.加载配置信息2.通过加载配置信息加载一个代 ...
- Mybatis笔记二:接口式编程
目录 旧方法的弊端 接口式编程 接口式编程的好处 接口式编程的增删改查 旧方法的弊端 在Mybatis笔记一中,我们使用命名空间+id的方式实现了Mybatis的执行,不过这里的命名空间是我们随便写的 ...
- 通过自动回复机器人学Mybatis 笔记:接口式编程
[接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...
- 通过自动回复机器人学Mybatis笔记:接口式编程
[接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...
- MyBatis3-topic04,05 -接口式编程
笔记要点 /**接口式编程: * 1. 原生: Dao 接口-->Dao接口的实现类 * mybatis: Mapper --> 有一个与之对应的 XXMapper.xml * 2. Sq ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(3)-面向接口的编程
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(3)-面向接口的编程 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1)框架搭建 (2):数据 ...
随机推荐
- php生成0~1随机小数方法
php生成0~1随机小数方法JavaScript生成0~1随机小数的方法可以调用自带的Math.random(); php生成0~1随机小数方法如下:<pre><?php/** * ...
- 使用gomod后,导入模块与编译要注意的事项
问题:在使用go mod后,执行编译会报错: Cannot load xxx: cannot find module providing package xxx 目录结构如下: J:. │ └─src ...
- Linux查看库依赖方法
1.查看依赖的库:objdump -x xxx.so | grep NEEDED 2.查看可执行程序依赖的库:objdump -x 可执行程序名 | grep NEEDED 3.查看缺少的库: ldd ...
- SecureCRT系列:生成公私钥
SecureCRT下载地址:http://www.portablesoft.org/securecrt-securefx-legacy-versions/1.打开我们的SecureCRT客户端,点击t ...
- C++实现2048小游戏
代码如下: #define _CRT_SECURE_NO_WARNINGS//去掉编译器内部扩增问题 #include<stdio.h> #include<stdlib.h> ...
- MySQL中的case when 中对于NULL值判断的坑
sql中的case when 有点类似于Java中的switch语句,比较灵活,但是在Mysql中对于Null的处理有点特殊 Mysql中case when语法: 语法1: CASE case_val ...
- unbantu...
待更新装个中文输入法装半天,还不好用,难受 注销到一个语句 sudo systemctl restart lightdm
- NOPI 读与写
Excel读取和写入的完整代码using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using NPOI.XSSF.UserModel;using Sys ...
- string.Format 格式化
1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...
- U盘安装Ubuntu14.04&配置远程win10远程连接
1.U盘安装Ubuntu:https://blog.csdn.net/baigoocn/article/details/26561473 2.win10远程访问Ubuntu系统:https://www ...