随笔分类 - MyBatis
摘要:.1)实现的步骤 1.引入jar包 <!--添加pageHelper分页--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.0-beta<
阅读全文
摘要:.1) 批量操作DML 方式一 推荐方式 1.如果想提升处理速度可以加上这个代码 测试过实现差不多可以提升1.多倍的性能 //打开一次会话 SqlSession session=sessionFactory.openSession(ExecutorType.BATCH); 2.BATCH:预编译一次
阅读全文
摘要:.1)分析mybatis的架构(四层架构) 1.接口层(广义接口) 1.1 增加接口方法 删除 增加 修改 查询 各种直接使用的配置方法 2.数据处理层 2.1 列如select * from student where name=#{} and age=#{} 2.1.1 首先处理参数 2.1.2
阅读全文
摘要:.1)有这几种针对模糊查询的方式 1.${} 1.1 使用如下 <if test="stuName!=null and stuName!=''">and stuName like '%${stuName}%'</if> 1.1.1 这种方法时不推荐使用的 安全隐患问题 2.传值时,直接传%xxx%
阅读全文
摘要:.1)trim标签的使用 1.使用trim处理查询和修改操作 <!--查询操作处理--> <select id="queryStudentByNoWithONGL" resultType="Student" parameterType="student"> select * from student
阅读全文
摘要:.1)通过resultMap来解决数据库的字段和类中的属性不一致的问题 1.在mapper文件中编写如下 <select id="queryStudentByNoWithResultMap" resultMap="StudqueryStudentByNoWithMap"> select * from
阅读全文
摘要:.1)常见的关联关系 1.一对一,多对一,一对多,多对多 2.但是在mybatis框架只有一对多,和一对一的形式, (多对一,多对多的本质就是一对多的变化) .2)一对一 1.业务扩展类 1.1 创建类,继承一张表 在创建类中写另外一个表的字段 形成合并 package org.hbz.entity
阅读全文
摘要:.1)使用返回值为Map 查询单个数据的时候 1.配置如下 <!-- 返回值为map--> <select id="queryStudentById" resultType="java.util.Map"> select stuNo "no",stuName "name",stuAge "age",
阅读全文
摘要:.1)目前 将多个参数封装到有个pojo对象中,使用对象传递 --> 如果不用呢 传入的是多个参数 1.传入多个参数时,不用在mapper.xml中编写parameterType,并且参数类型不是混合类型(又有对象又有简单的类型) 1.1 方式一 1.1.1 异常提示:stuNo不能使用,就可以使用
阅读全文
摘要:.1)事务的提交 1.手动提交的方式 SqlSession session=sessionFactory.openSession();//默认值为false 需要手动提交 //使用commit()方法来提交 session.commit(); 2.自动提交的方式 SqlSession session
阅读全文
摘要:.1)多环境切换 1.配置properties #mysql的配置环境 mysql.driver=com.mysql.jdbc.Driver mysql.url=jdbc:mysql://localhost:3306/ssm mysql.username=root mysql.password=ro
阅读全文
摘要:.1)表丶类丶接口丶mapper.xml四者密切相关,因此,当知道一个的时候 其他三个应该可以自动生成 .2)具体实现步骤 1.导入jar包 <!-- https://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator
阅读全文
摘要:.1)如何禁用二级缓存 1 在具体要关闭的mapper.xml中的select标签里面填写 <select id="selectStudentById" resultType="student" parameterType="Integer" useCache="false"> select * f
阅读全文
摘要:.1)查询缓存 1.一级缓存 1.1 同一个SqlSession对象,mybatis默认就开启了一级缓存,下方为示意图 1.2 如果用同样的SqlSession对象查询相同的数据,则只会在第一次 查询时 向数据库发送SQL语句,并将查询的结果 放入SqlSession中(作为缓存存在);后续再次查询
阅读全文
摘要:.1)如何整合Log4j到mybatis 1.导入log4j的jar包 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> </dep
阅读全文
摘要:.1)if和where标签的使用 1.第一种方式来来实现动态的sql <!-- 是用if标签实现动态sql语句 1--> <select id="queryAllStudentByNameAndAgeSql" resultType="student" parameterType="student">
阅读全文
摘要:.1)resultType (1)简单类型(8个基本类型加String) (2)输出类型为实体对象类型 (3) 输出参数为实体对象类型的集合 :虽然输出类型为集合,但是resultType依然写 集合的元素类型 (resultType="student") (4)输出参数为HashMap <!--
阅读全文
摘要:.1) 入参为HashMap 1.创建sql语句 <!-- 通过hashMap入参来通过家庭地址或者学校地址插叙学生--> <select id="selectStudentByhomeOrSchoolMap" resultType="Student" parameterType="Map"> se
阅读全文
摘要:.1)输入参数:ParameterType 1.类型为简单类型(8个基本类型+String) 1.1${} 和 #{}的区别 (1)#{任意值} ${value},其中的占位符只能是value (2)#{}自动给String类加上‘ ’ (自动类型转换) ${}原样输出,但是适用于 动态排序( 动态
阅读全文
摘要:.1)如何配置连接数据库的参数(主配置文件中) 1.首先创建一个properties的文件 把连接的参数写入 driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/ssm username=root password=root 2.
阅读全文

浙公网安备 33010602011771号