mybatis使用注解开发
mybatis使用注解开发
- 面向接口编程
在之前我们是通过面向对象编程,但是在真正开发的时候我们会选择面向接口编程.
根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 , 上层不用管具体的实现 , 大家都遵守共同的标准 , 使得开发变得容易 , 规范性更好
在面向对象的系统中,系统的各种功能是通过不同对象之间的协作完成的.在这种情况下各个对象的内部是如何实现的,对系统的设计人员就不那么重要了.
接口的理解:应该是定义与实现的分离.
接口本身反应了系统设计人员对系统的抽象理解.
接口应该有两类:
- 第一类是一个个体抽象,它可对应为一个抽象体.
- 第二类是对一个个体某一方面的抽象,集形成一个抽象面.
- 一个体可以有多个抽象面,抽象体和抽象面是有区别的.
利用注解开发
mybatis
最初配置信息是基于xml
,映射语句(sql
)也是定义在xml
中的,在新的3版本中基于注解配置.
sql的主要类型分成:
@select
@update
@insert
@delete
备注:利用注解开发就不需要mapper.xml
映射文件了.
在mybatis核心配置文件中注入:
<!-
-使用class绑定接口-->
<mappers><mapper class="com.kuang.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();
}
关于@Param
@Param
注解用于给方法参数起一个名字。以下是总结的使用原则:
在方法只接受一个参数的情况下,可以不使用@Param
。
在方法接受多个参数的情况下,建议一定要使用@Param
注解给参数命名。
如果参数是JavaBean
, 则不能使用@Param
。
不使用@Param
注解时,参数只能有一个,并且是Javabean
。
mybatis使用注解开发相关推荐
- mybatis之注解开发与逆向工程
注解开发 MyBatis 最初是一个 XML 驱动的框架.配置信息是基于 XML 的,而且映射语句也是定义在 XML 中的.随着技术的更新发展,对于开发效率要求也原来越高,特别是一些小型项目;越来越多 ...
- MyBatis之注解开发
mybatis常用注解: @Insert:实现新增 @Update:实现更新 @Delete:实现删除 @Select:实现查询 @Result:实现结果集封装 @Results:可以与@Result ...
- mybatis的注解开发之三种动态sql
脚本sql XML配置方式的动态SQL我就不讲了,有兴趣可以自己了解,下面是用<script>的方式把它照搬过来,用注解来实现.适用于xml配置转换到注解配置 @Select(" ...
- SSM—mybatis框架-注解开发-动态sql(where,set,trim,choose,when,foreach)-模糊查询写法-特殊符号处理-缓存
文章目录 2.0.注解 2.1.动态sql 2.1.1.where 2.1.2.set 2.1.3.trim 2.1.3.1.trim的where 2.1.3.2.trim的set 2.1.4.1.c ...
- Mybatis接口注解开发
[1.在项目中新增一个接口,如下] package com.crayon.test; import java.util.List; import org.apache.ibatis.annotatio ...
- MyBatis----回顾mybatis自定义和环境搭建+完善自定义Mybatis的注解开发
上一篇
- MyBatis-学习笔记04【04.自定义Mybatis框架基于注解开发】
Java后端 学习路线 笔记汇总表[黑马程序员] MyBatis-学习笔记01[01.Mybatis课程介绍及环境搭建][day01] MyBatis-学习笔记02[02.Mybatis入门案例] M ...
- Mybatis—注解开发
Mybatis的注解开发 MyBatis的常用注解 这几年来注解开发越来越流行,Mybatis也可以使用注解开发方式,这样我们就可以减少编写Mapper映射文件了. @Insert:实现新增 @Upd ...
- Mybatis注解开发笔记
Mybatis注解开发(笔记) 欢迎来到菜鸟研究所 创建新的Maven项目 配置文件 prom.xml log4j.properties jdbcConfig.properties SqlMapCom ...
最新文章
- 项目: 实时钟表(C语言)
- OMNet++新建工程及运行
- [译]模型-视图-提供器 模式
- 小程序调用阿里云身份证识别OCR(附带七牛云上传图片)
- 园区网VLAN应用实例
- Poor God Water【矩阵快速幂】
- 地图统计_博客 城市访问量统计并且通过Echarts+百度地图展示
- 小数加分数怎样计算讲解_“分数,小数,百分数 的互化”我这样教学,学生很快就学会了。...
- 【转】sql server 订阅发布、快照发布(一)
- Clr编写Insert Triggr
- Linux下用C获取so库所在路径
- 华为交换机配置远程连接
- 华硕笔记本怎么关闭触控板,禁用按钮是灰色的
- linux趋势防病毒软件进程,你了解linux的防病毒软件吗?你知道我说的不是防火墙...
- python excel操作 bom_Python Pandas比较BOM表数据
- python语言后缀_在Python语言中,可以作为源文件后缀名的是
- 兼容android模拟器的微信apk,Android模拟器中安装apk的方法
- linux在gpt分区装系统,linux安装到GPT分区
- Cg Programming In Unity Specular Highlights (Wiki翻译自用)
- VIVADO synthesis和implementation具体完成什么操作
热门文章
- 2022-2028年中国离心机行业市场研究及前瞻分析报告
- 2022-2028年中国化妆品OEM行业市场发展规模及前瞻分析报告
- mount 挂载磁盘报错 mount: wrong fs type, bad option, bad superblock on
- Docker使用遇到问题Got permission denied while trying to connect to the Docker daemon socket解决方案
- 详细通俗重点CRF层讲解
- python的print格式化输出,以及使用format来控制。
- TensorFlow Keras API用法
- Battery electric vehicles (BEVs) 快充技术
- CUDA刷新:GPU计算生态系统
- CapsuleNet(了解)