mybatis注解记录
目录
- mybatis注解有感
- 1.了解
- 2.利用注解开发
- 3.分析
- 4.mybatis执行过程
mybatis注解有感
1.了解
- mybatis最初配置信息是基于 XML ,映射语句(SQL)也是定义在 XML 中的。而到MyBatis 3提供了新的基于注解的配置。不幸的是,Java 注解的的表达力和灵活性十分有限。最强大的 MyBatis 映射并不能用注解来构建
- sql类型主要成分:
- @select()
- @update()
- @insert()
- @delect()
- 根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 , 上层不用管具体的实现 , 大家都遵守共同的标准 , 使得开发变得容易 , 规范性更好
2.利用注解开发
- 我们在我们的接口中添加注解
//查询全部用户
@Select("select id,name,pwd password from user")
public List<User> getAllUser();
- 在mybatis的核心配置文件中注入
<!--使用class绑定接口-->
<mappers><mapper class="com.fww.mapper.UserMapper"/>
</mappers>
- 我们去进行测试
@Test
public void testGetAllUser() {SqlSession session = MybatisUtils.getSession();//本质上利用了jvm的动态代理机制UserMapper mapper = session.getMapper(UserMapper.class);List<User> users = mapper.getAllUser();for (User user : users){System.out.println(user);}session.close();
}
3.分析
众所周知,注解是利用了反射机制完成功能 本质上利用了jvm的动态代理机制
- mapper.xml往sqlsessionfactory中注入一系列的属性值。
<mappers><mapper class="com.fww.mapper.UserMapper"/>
</mappers>
getMapper(UserMapper.class);
锁定目标mapper对象,session.getMapper(UserMapper.class);
读取注解中的值(sql语句)和接口中的方法名,返回值类型等.- 完成功能
4.mybatis执行过程
mybatis注解记录相关推荐
- Mybatis注解学习记录
Mybatis注解使用 1. SQL语句映射 1.1 @Select注解:实现查询功能 1.1.1 用法 1.2 @Insert注解:实现新增功能 1.2.1 用法 1.3 @Update注解:实现更 ...
- mybatis注解详解
mybatis注解详解 首 先当然得下载mybatis-3.0.5.jar和mybatis-spring-1.0.1.jar两个JAR包,并放在WEB-INF的lib目录下 (如果你使用maven,则 ...
- mybatis添加记录时返回主键id
参考:mybatis添加记录时返回主键id 场景 有些时候我们在添加记录成功后希望能直接获取到该记录的主键id值,而不需要再执行一次查询操作. 在使用mybatis作为ORM组件时,可以很方便地达到这 ...
- SSM框架之MyBatis3专题5:MyBatis注解式开发
1 注解的基本知识 以下注解知识的讲解,均使用@Override.@Deprecated(过时).@SuppressWarnings举例. 1.1 注解的基本语法 注解后是没有分号的: 注解首字母是大 ...
- MyBatis注解sql及映射
MyBatis注解sql及映射 MyBatis支持使用注解来配置映射的sql语句,这样可以省掉映射器xml文件 一.映射语句 1.insert 比如入门实例中的: public int insert( ...
- 博为峰JavaEE技术文章 ——MyBatis 注解
2019独角兽企业重金招聘Python工程师标准>>> 前面在介绍Mybatis时,我们都是使用mapper xml文件来配置SQL语句的.Mapper xml使用起来比较方便,但是 ...
- java 注解生成实例_Java 8 开发的 Mybatis 注解代码生成工具
MybatisAnnotationTools MybatisAnnotationTools 是基于 Java8 开发的一款可以用于自动化生成 MyBatis 注解类的工具,支持配置数据源.类路径,表名 ...
- Mybatis注解实现一对多关联映射(@Many)
mybatis注解实现一对多关联映射 @Select("<script> \n" +"\t\tselect a.*,p.punishment_money, p ...
- Mybatis注解开发(一对一)
其他代码访问:Mybatis注解开发基础操作 1.添加OrderMapper接口 public interface OrderMapper {// @Select("select *,o.i ...
最新文章
- 汤家凤高等数学基础手写笔记-微分方程
- 网页渲染的颜色竟然和设定值的不同!Chrome 61+色差解决办法
- 中国大学MOOC 人工智能导论第三章测试
- Hadoop分布式系统的安装部署
- mmdnn tensorflow 转 caffe
- CF1422F Boring Queries(ST表 + 主席树)
- 从开源视角分析,搞定边缘计算云原生方案选型
- 软考信息系统项目管理师_信息系统安全管理---软考高级之信息系统项目管理师026
- c++11 多线程编程(四)------ 死锁(Dead Lock)
- 百叶窗叶片锋利,不安全
- 关于《Delphi源代码分析》的讨论
- filezilla里怎么解决中文乱码问题
- 修改数据库密码的多种方法
- Volatile能不能保证线程安全?
- java 读取485_java通信 485
- 说说程序员不解风情的瞬间
- 5-46 新浪微博热门话题 (30分)
- MATLAB画图---设置坐标轴为固定值(以4厘米为例)
- 用程序编写计算公式的高次方程数字计算机
- Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must