MyBatis使用注解开发实现步骤解析
mybatis可以使用xml文件编写映射语句,也可以通过注解来编写简单的映射语句,在官方文档中有具体描述。简单的说,因为Java 注解的的表达力和灵活性十分有限,简单的一些语法可以使用注解来编写比较方便,但复杂的语句还是要使用xml文件。
在之前的开发中,我们使用mybatis,需要以下几个步骤:
- 配置核心文件
- 创建dao接口,定义方法(如MyBatis工具类)
- 编写Mapper.xml配置文件,在该Ml文件中编写sql语句
- 最后把Mapper文件配置在mybatis核心文件中就可以进行测试了
使用注解注意事项
使用注解开发,可以直接在dao接口的方法中编写sql语句,就 不需要创建mapper.xml映射文件。
具体步骤
在dao接口(UserMapper.java)中添加注解
//查询全部用户
@Select("select * from user")
public List<User> getUsers();
在mybatis的核心配置文件中注入
<!--使用class绑定接口--> <mappers> <mapper class="com.lf.mapper.UserMapper"/> </mappers>
进行测试
@Test public void testgetUsers() { 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(); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
mybatis多个接口参数的注解使用方式(@Param)
1 简介 1.1 单参数 在 Mybatis 中, 很多时候, 我们传入接口的参数只有一个. 对应接口参数的类型有两种, 一种是基本的参数类型, 一种是 JavaBean . 例如在根据主键获取对象时, 我们只需要传入一个主键的参数即可. 而在插入, 更新等操作时, 一般会涉及到很多参数, 我们就使用 JavaBean . 1.2 多参数 但是, 在实际的情况中, 我们遇到类似这样的情况可能: 接口需要使用的参数多于一个: 接口需要使用的参数又远少于对应 JavaBean 的成员变量, 或者需要
-
详解spring boot mybatis全注解化
本文重点给大家介绍spring boot mybatis 注解化的实例代码,具体内容大家参考下本文: pom.xml <!-- 引入mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.0</version
-
Mybatis如何通过注解开启使用二级缓存
这篇文章主要介绍了Mybatis基于注解开启使用二级缓存,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 本文主要是补充一下Mybatis中基于注解的二级缓存的开启使用方法. 1.在Mybatis的配置文件中开启二级缓存 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.or
-
详解SpringBoot 快速整合Mybatis(去XML化+注解进阶)
序言:使用MyBatis3提供的注解可以逐步取代XML,例如使用@Select注解直接编写SQL完成数据查询,使用@SelectProvider高级注解还可以编写动态SQL,以应对复杂的业务需求. 一. 基础注解 MyBatis 主要提供了以下CRUD注解: @Select @Insert @Update @Delete 增删改查占据了绝大部分的业务操作,掌握这些基础注解的使用是很必要的.例如下面这段代码无需XML即可完成数据查询: @Mapper public interface UserMa
-
详解Mybatis注解写法(附10余个常用例子)
[前言] Mybatis 除了 XML 配置写法,还可以使用注解写法. 首先需要引入 Mybatis 的依赖: <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency> <
-
mybatis学习笔记之mybatis注解配置详解
Java API 既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升技能了. MyBatis 的 Java API 就是你收获你所做的努力的地方.正如你即将看到的,和 JDBC 相比, MyBatis 很大程度简化了你的代码而且保持简洁,很容易理解和维护.MyBatis 3 已经引入 了很多重要的改进来使得 SQL 映射更加优秀. MyBatis 3构建在基于全面且强大的Java配置API上.该配置API是基于XML的MyBatis配置的基础,也是新的基于注解配置的基础
-
mybatis @Alias注解在类上的使用方式(推荐)
比如在类上使用该注解 @Alias("dDebtEntity") 则在mapper.xml文件中resultType="dDebtEntity" 在myBatisConfig.xml中 sqlSessionFactory需要配置注解 需要扫的路径 <typeAliases> <package name="com.xxxxx.core"/> </typeAliases> Mybatis之typeAlias配置的
-
Mybatis注解实现多数据源读写分离详解
首先需要建立两个库进行测试,我这里使用的是master_test和slave_test两个库,两张库都有一张同样的表(偷懒,喜喜),表结构 表名 t_user | 字段名 | 类型 | 备注 | | :------: | :------: | :------: | | id | int | 主键自增ID | | name | varchar | 名称 | 表中分别添加两条不同数据,方便测试 主数据库记录name为xiaobin,从库为xiaoliu 开始使用Springboot 整合mybati
-
MyBatis使用注解开发实现步骤解析
mybatis可以使用xml文件编写映射语句,也可以通过注解来编写简单的映射语句,在官方文档中有具体描述.简单的说,因为Java 注解的的表达力和灵活性十分有限,简单的一些语法可以使用注解来编写比较方便,但复杂的语句还是要使用xml文件. 在之前的开发中,我们使用mybatis,需要以下几个步骤: 配置核心文件 创建dao接口,定义方法(如MyBatis工具类) 编写Mapper.xml配置文件,在该Ml文件中编写sql语句 最后把Mapper文件配置在mybatis核心文件中就可以进行测试了
-
MyBatis使用注解开发和无主配置文件开发的情况
MyBatis使用注解开发时就不在需要和接口对应的映射文件了 主要有以下几个注解 @Select() @Insert @Update() @Delete() 代码演示 项目结构: 数据库表设计 实体类 User public class User implements Serializable { private long userId; private String userName; private Date birthday; private String sex; private Str
-
MyBatis使用注解开发实现过程详解
使用注解开发 1.面向接口编程 面向接口编程的根本原因:解耦,可扩展,提高复用,分层开发中.上层不用管具体的实现,大家都遵守共同的标准,使得开发变得容易,规范性好 2.使用注解开发 注解在接口上实现 @Select(value = "select * from user") List<User> getUsers(); 需要在核心配置文件中绑定接口 <!--绑定接口--> <mappers> <mapper class="rui.da
-
HelloSpringMVC注解版实现步骤解析
注解版步骤 新建一个module,添加web的支持 由于Maven可能存在资源过滤的问题,我们将配置完善pom.xml <build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</inclu
-
Java Mybatis框架多表操作与注解开发详解分析
目录 一对一查询 多对多查询 Mybatis的注解开发 Mybatis的增删查改 MyBatis的注解实现复杂映射开发 一对一查询 一对一查询的模型 用户表和订单表的关系为,一个用户有多个订单,一个订单只从属于一个用户. 一对一查询的需求:查询一个订单,与此同时查询出该订单所属的用户 一对一查询的语句 对应的sql语句: select * from orders o,user u where o.uid=u.id;查询的结果如下: 创建Order和User实体 创建OrderMapper接口 p
-
Spring纯注解开发模式让开发简化更简化
目录 一.注解开发 二.注解定义Bean 三.衍生注解 四.纯注解开发模式 五.注解实现注入 1.自动装配 2.按名称注入 3.简单数据注入 4.读取properties配置文件 六.Spring整合MyBatis 一.注解开发 以前跟老韩学习SE时他就说: 注解本质是一个继承了Annotation 的特殊接口,其具体实现类是Java 运行时生成的动态代理类. 而我们通过反射获取注解时,返回的是Java 运行时生成的动态代理对象$Proxy1.通过代理对象调用自定义注解(接口)的方法,会最终调用
-
Mybatis示例讲解注解开发中的单表操作
目录 Mybatis注解开发单表操作 MyBatis的常用注解 MyBatis的增删改查 注解开发总结 常用注解 配置映射关系 练习项目代码 Mybatis注解开发单表操作 MyBatis的常用注解 Mybatis也可以使用注解开发方式,这样我们就可以减少编写Mapper映射文件了.我们先围绕一些基本的CRUD来学习,再学习复杂映射多表操作. 注解 说明 @Insert 实现新增 @Update 实现更新 @Delete 实现删除 @Select 实现查询 @Result 实现结果集封装 @Re
-
SpringBoot整合Mybatis注解开发的实现代码
官方文档: https://mybatis.org/mybatis-3/zh/getting-started.html SpringBoot整合Mybatis 引入maven依赖 (IDEA建项目的时候直接选就可以了) <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <ve
-
Mybatis分页的实现及使用注解开发操作
分页的实现 sql的分页语句为(第一个参数为当前页面的索引起始位置,第二个参数为页面的展示个数) select * from user limit #{startIndex},#{pageSize}: # startIndex : 起始位置 ,默认是0开始 # pageSize :页面大小 # 如何计算出当前页面索引起始位置 # currentPage = (currentPage-1)* pageSize limit实现分页 1.编写dao接口 //查询全部用户实现分页 List<User>
-
MyBatis图文并茂讲解注解开发一对一查询
目录 MyBatis的注解实现复杂映射开发 一对一查询 一对一查询的模型 一对一查询的语句 创建PersonMapper接口 使用注解配置Mapper 测试类 一对一配置总结 MyBatis的注解实现复杂映射开发 实现复杂关系映射之前我们可以在映射文件中通过配置来实现,使用注解开发后,我们可以使用@Results注解,@Result注解,@One注解,@Many注解组合完成复杂关系的配置 一对一查询 一对一查询的模型 一对一查询的需求:查询一个用户信息,与此同时查询出该用户对应的身份证信息 一对
随机推荐
- seajs加载jquery时提示$ is not a function该怎么解决
- 简单理解Python中基于生成器的状态机
- Web前端开发工具——bower依赖包管理工具
- C# 汉字转拼音(全拼和首字母)实例
- asp.net textbox javascript实现enter与ctrl+enter互换 文本框发送消息与换行(类似于QQ)
- php判断字符串在另一个字符串位置的方法
- 解密ThinkPHP3.1.2版本之模块和操作映射
- 利用Fn.py库在Python中进行函数式编程
- 通过第三方接口发送短信验证码/短信通知(推荐)
- MySQL利用profile分析慢sql详解(group left join效率高于子查询)
- Python文本相似性计算之编辑距离详解
- java IO流 之 输入流 InputString()的使用
- 微信小程序实战之自定义抽屉菜单(7)
- jQuery对象的selector属性用法实例
- JavaScript使用位运算符判断奇数和偶数的方法
- js在Firefox与IE中对DOM对像的引用的比较
- C#制作简易的屏保
- 图解Eclipse j2ee开发环境的搭建过程
- Android判断用户2G/3G/4G移动数据网络
- 排除路由故障的常见方法