MyBatis
文章平均质量分 81
Williamwhc
代码改变世界 + 我改变代码 = 我改变世界
展开
-
mybatis中resultMap配置细则
resultMap算是mybatis映射器中最复杂的一个节点了,能够配置的属性较多,我们在mybatis映射器配置细则这篇博客中已经简单介绍过resultMap的配置了,当时我们介绍了resultMap中的id和result节点,那么在resultMap中除了这两个之外,还有其他节点,今天我们就来详细说说resultMap中的这些节点。 如果小伙伴对mybatis尚不了解,建议先翻看博主前面几篇...原创 2018-09-20 15:27:05 · 2144 阅读 · 0 评论 -
mybatis高级映射一对多查询实现代码
1.需求分析: 在开发中会遇到这样一个问题,查询订单信息,级联查询出用户信息和订单明细信息 2.sql语句实现 2.1确定主查询表:订单表 2.2确定关联查询表:用户表, 订单明细表 sql语句如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...原创 2018-04-04 09:16:26 · 213 阅读 · 0 评论 -
MyBatis基本使用方法
Mybatis的基本使用方法 1.导入mybatis的jar包:mybatis-x.x.x.jar 2.使用XML配置mybatis,创建SqlSessionFactory XML配置文件的名称通常为mybatis-config.xml,内容基本格式如下: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE conf...原创 2018-04-11 21:32:25 · 139 阅读 · 0 评论 -
MyBatis快速入门
1. 持久化概念: 1.1. 持久化是程序数据在瞬时状态和持久状态间转换的过程 2. ORM概念 2.1. Object Relational Mapping 对象关系映射 2.2. 数据在程序中以对象的形式被操作,例如User user=new User(1,”jack”); 2.3. 数据在数据库以一行记录的形式被保存,例如 编号 姓名 ...原创 2018-04-11 21:30:37 · 150 阅读 · 0 评论 -
MyBatis数据库操作总结
1. Namespace 1.1. 当前XxxMapper.xml文件针对哪个接口 1.2. 接口写全称 2. 配置文件实现接口的步骤 2.1. 通过配置select,insert,update,delete节点并拼写sql语句实现接口 2.2. ID 方法名 2.3. parameterType 接口方法的参数类型(如果方法有多个参数,则可以省略) 3. 复杂参数的接口方法的映射配...原创 2018-04-11 21:29:57 · 176 阅读 · 0 评论 -
Mybatis的基本使用方法
Mybatis的基本使用方法 1.导入mybatis的jar包:mybatis-x.x.x.jar 2.使用XML配置mybatis,创建SqlSessionFactory XML配置文件的名称通常为mybatis-config.xml,内容基本格式如下: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE conf...原创 2018-04-07 11:06:13 · 330 阅读 · 0 评论 -
mybatis数据操作总结
1. Namespace 1.1. 当前XxxMapper.xml文件针对哪个接口 1.2. 接口写全称 2. 配置文件实现接口的步骤 2.1. 通过配置select,insert,update,delete节点并拼写sql语句实现接口 2.2. ID 方法名 2.3. parameterType 接口方法的参数类型(如果方法有多个参数,则可以省略) 3. 复杂参数的接口方法的映射配...原创 2018-04-07 11:04:33 · 127 阅读 · 0 评论 -
MyBatis实现模糊查询的几种方式
在学习MyBatis过程中想实现模糊查询,可惜失败了。后来上百度上查了一下,算是解决了。记录一下MyBatis实现模糊查询的几种方式。 数据库表名为test_student,初始化了几条记录,如图: 起初我在MyBatis的mapper文件中是这样写的: <select id="searchStudents" resultType="com.examp...原创 2018-04-15 14:41:54 · 173 阅读 · 0 评论 -
关于Mybatis中foreach的用法以及与service中循环调用dao层中的差异
导读: 在实际开发过程中遇到需要批量插入、批量更新、批量删除等操作,纠结于是在service层中直接调用dao层的方式还是直接使用Mybatis中的标签,因此特地做了一个实验。 做两个批量插入操作,一个是在service层中循环调用dao层的方法,另一个是在Mybatis中使用标签做插入操作。 代码如下: service层对应的代码: public void doSave() { ...原创 2018-04-15 14:40:59 · 783 阅读 · 0 评论 -
mybatis实现对数据的增删查改
前期准备 新建java web项目, 需要导入以下的包, 基本工作已经完成,接下来开始进入正题。 新建实体类 新建与数据库表对应的实体类 [java] view plain copy package com.edu.hpu.domain; /** * @author Administrator *user表所对应的实体类 */ publ...原创 2018-04-21 23:05:12 · 185 阅读 · 0 评论 -
mybatis中的#{}和${}区别
1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id". 2. $将传入的数据直接显示生成在sql中。如:order by $user_id$,如果传入的值是111,那么解析成sql时的值为or...原创 2018-04-21 21:53:37 · 139 阅读 · 0 评论 -
mybatis添加新用户
1、配置数据库映射文件(User.xml) 在其中加入如下代码: [html] view plain copy <!-- 添加用户 parameterType:指定输入的参数类型是pojo #{}中指定pojo的属性名,接收到pojo对象的属性值,mybatis也是通过OGNL来获取对象的属性值 --> <insert id="insertU...原创 2018-04-21 23:03:36 · 1758 阅读 · 0 评论 -
MyBatis动态SQL语句实现多条件查询
MyBatis中动态SQL语句完成多条件查询,条件可以为字符串,数值,时间,以及自定义的类. 写的不好之处请指教~ MyBatis的XML: <mapper namespace="com.dao.NotifyManagementInfoDao"> <resultMap type="com.model.NotifyManagementInfo" id="notifyManag...原创 2018-04-22 09:13:16 · 1122 阅读 · 0 评论 -
mybatis中的缓存问题
关于mybatis基础我们前面几篇博客已经介绍了很多了,今天我们来说一个简单的问题,那就是mybatis中的缓存问题。mybatis本身对缓存提供了支持,但是如果我们没有进行任何配置,那么默认情况下系统只开启了一级缓存,一级缓存就是同一个SqlSession执行的相同查询是会进行缓存的,OK,那么今天我们就来看看这些缓存,并简单验证下。 系统默认开启了一级缓存 这个缓存系统默认情况下是开启的,...原创 2018-09-20 15:24:11 · 215 阅读 · 2 评论 -
mybatis中的动态SQL
在实际开发中,数据库的查询很难一蹴而就,我们往往要根据各种不同的场景拼接出不同的SQL语句,这无疑是一项复杂的工作,我们在使用mybatis时,mybatis给我们提供了动态SQL,可以让我们根据具体的业务逻辑来拼接不同的SQL语句。OK,那么我们今天就来看看如何使用mybatis中的动态SQL。 mybatis中的动态SQL主要包含如下几种元素:if、choose、when、otherwise...原创 2018-09-20 15:23:18 · 102 阅读 · 0 评论 -
mybatis映射器配置细则
前面三篇博客我们已经多次涉及到映射器的使用了,增删查基本上都用过一遍了,但是之前我们只是介绍了基本用法,实际上mybatis中映射器可以配置的地方还是非常多,今天我们就先来看看映射器还有哪些需要配置的地方,用好这些配置,可以让我们的mybatis变得非常灵活。如果小伙伴对于mybatis尚不了解可以先参考前面三篇博客(初识mybatis/初识mybatis(二)/mybatis常用配置)否则小伙伴...原创 2018-09-20 15:00:26 · 131 阅读 · 0 评论 -
初识mybatis(二)
上篇博客我们介绍通过Java代码来创建mybatis的配置文件,港真,这种方式看起来有意思实际在开发中用的并不多,mybatis的配置还是以xml配置为主,本文我们就来看看如何通过xml文件来配置mybatis。关于mybatis的一些基础知识小伙伴们可以参考这篇博客 初识mybatis。另外,上篇博客中,小伙伴们也看到了通过添加jar包的方式来搭建mybatis环境太过于麻烦,so,本文我们还是...原创 2018-09-20 14:56:59 · 186 阅读 · 0 评论 -
初识mybatis
说道JavaWeb,很多人都知道SSH,这里的H代表了hibernate,这是一个数据库访问框架,hibernate在Java开发中的地位也是相当高,众所周知的JPA标准就是由hibernate主导完成的。然而,数据库访问框架除了hibernate之外,还有另外一个大名鼎鼎的数据库框架,那就是mybatis,mybatis的前身ibatis早在2001年就发布了,那么这里我不想过多的去比较这两个东...原创 2018-09-20 14:55:04 · 122 阅读 · 0 评论 -
mybatis常用配置
前面两篇博客我们简单介绍了mybatis的使用,但是在mybatis的配置问题上我们只是使用了最基础的配置,本文我们就来说说其他一些常用的配置。如果小伙伴对mybatis尚不了解,可以先参考这两篇博客初识mybatis/初识mybatis(二)。老司机请略过。 由于本文算是初识mybatis/初识mybatis(二)两篇博客的补充,所以强烈建议没有mybatis基础的小伙伴一定要先看这两篇博客。...原创 2018-09-20 14:58:24 · 136 阅读 · 0 评论 -
mybatis映射器配置细则
select中字段的映射问题 select元素用来执行一条查询语句,Select可以算作是最常用,最复杂的元素之一,我们在使用Select的时候可以自定义元素自定义结果集等,非常灵活,OK,在说Select强大的一面之前,我们先来看看我们在前面几篇博客中是怎么使用Select的: <select id="getUser" resultType="user" parameterType=...原创 2018-08-28 14:00:26 · 174 阅读 · 0 评论 -
mybatis框架基于注解的方式,实现对数据的增删改查
编写Mybatis代码,与spring不一样,不需要导入插件,只需导入架包即可; 在lib下 导入mybatis架包:mybatis-3.1.1.jar mysql驱动架包:mysql-connector-java-5.1.6-bin.jar 在src目录下建立xml配置文件:conf.xml,是一些连接数据库的配置: <?xml version="1.0" encodin...原创 2018-05-06 17:32:32 · 300 阅读 · 0 评论 -
Mybatis解决属性名与字段名不一致
在开发的时候应该遇到这样的情况,数据库中的字段名与属性名不一致的情况,通常数据库中的字段命名时多个单词之间使用下划线连接在一起的,而在类中的属性名则多数是用驼峰标识的命名方式,我见过的大多数都是这样,那么使用mybatis该如果解决这一的问题呢?如下: 数据表: [html] view plaincopy CREATE TABLE tab_department( i...原创 2018-04-22 09:14:48 · 208 阅读 · 0 评论 -
mybatis 防止 sql 注入 和 mybatis 的预编译
sql注入大家都不陌生,是一种常见的攻击方式,攻击者在界面的表单信息或url上输入一些奇怪的sql片段,例如“or ‘1’=’1’”这样的语句,有可能入侵参数校验不足的应用程序。所以在我们的应用中需要做一些工作,来防备这样的攻击方式。在一些安全性很高的应用中,比如银行软件,经常使用将sql语句全部替换为存储过程这样的方式,来防止sql注入,这当然是一种很安全的方式,但我们平时开发中,可能不需要这种...原创 2018-04-22 09:21:58 · 436 阅读 · 0 评论