![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mybatis
文章平均质量分 56
勤径苦舟
书山有路勤为径,学海无涯苦作舟。
展开
-
mybatis <if test=""></if>标签0为null
转载https://blog.csdn.net/every__day/article/details/78964180采过一个坑,写篇日志来记录下<if test="state != null and state != ''">state = #{state}</if>1当状态值设置为0时,操作完了,数据库没反应,没有设置为0 把状态用1和2表示,不使用0,一切正常,问题消...转载 2018-07-13 13:54:36 · 3782 阅读 · 0 评论 -
dding transactional method xxxx.update' with attribute: PROPAGATION_REQUIRED,ISOLATION_DEFAULT; ''
原因1mybaitis的xml映射文件中属性名称写错原因2 mybaitis的xml映射文件中属性名称写错,继承的属性在映射文件中读取不到原创 2017-08-20 18:50:26 · 4621 阅读 · 0 评论 -
Invalid bound statement (not found):.....sysFunctionDao.getSysFunctionsById...<init>(MapperMethod.ja
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): cn.xiniu.core.dao.function.SysFunctionDao.getSysFunctionsById at org.apache.ibatis.binding.MapperMethod$SqlCommand原创 2017-08-09 09:51:01 · 336 阅读 · 0 评论 -
mybatis--基础--05--日志
一、日志Mybatis通过使用内置的日志工厂提供日志功能。内置日志工厂将会把日志工作委托给下面的实现之一:SLF4JApacheCommonsLoggingLog4j2Log4jJDKloggingMyBatis内置日志工厂会基于运行时检测信息选择日志委托实现。它会(按上面罗列的顺序)使用第一个查找到的实现。当没有找到这些实现时,将会禁用日志功能。不少应用服务器(如Tomcat和WebShpere)的类路径中已经包含Commons Logging。注意,在这种配置环境下,My原创 2020-11-27 10:13:20 · 268 阅读 · 1 评论 -
mybatis--基础--04--SQL语句构建器
通过Java代码动态生成sql语句。原创 2020-11-27 10:10:32 · 593 阅读 · 1 评论 -
mybatis--基础--3.8--xml映射文件--动态SQL
一、if 元素如果id不等于null,就加上id的过滤条件。二、choose、when、otherwise 元素和Java的switch语句相似当 是真,就跳出choose。三、where 元素where元素只会在子元素返回任何内容的情况下才插入"WHERE"子句。若子句的开头为"AND"或"OR",where元素也会将它们去除3.1、 没有where的情况3.2、有where的情况四、set 元素可以用于动态包含需要更新的列,忽略其它不更新的列五、t原创 2020-11-25 19:57:45 · 428 阅读 · 1 评论 -
mybatis--基础--3.7--xml映射文件--缓存
默认:没有开启缓存的,除了局部的session缓存,可以增强变现而且处理循环依赖也是必须的。mybatis的一级缓存和二级缓存都实现了cache接口,要实现自定义缓存而不使用mybatis默认的缓存,那么就要自己实现cache接口,并在mapper.xml文件中指明缓存的类型。xml映射文件去掉在接口上添加注解。原创 2020-11-05 16:09:41 · 360 阅读 · 1 评论 -
mybatis--基础--3.6--xml映射文件--ResultMap
数据库字段 -----映射----> 实体字段。原创 2020-11-05 16:08:21 · 1150 阅读 · 1 评论 -
mybatis--基础--3.5--xml映射文件--参数(Parameters)
1、创建预处理语句属性并安全地设置值(比如?)3、${id}创建一个固定的的值。MyBatis不会修改或转义字符串。有SQL注入攻击风险如果id=3,上面的语句其实是原创 2020-11-05 16:05:45 · 398 阅读 · 1 评论 -
mybatis--基础--3.4--xml映射文件--sql元素
4.4、sql 元素用来定义可重用的SQL代码段<sql id="sql1">id,user_name,password</sql><select id="selectById2" resultType="user"> select <include refid="sql1"></include> from user where id = #{id}</select>代码地址:https://gi原创 2020-11-05 16:04:41 · 208 阅读 · 1 评论 -
mybatis--基础--3.3--xml映射文件--insert,update,delete元素
【代码】mybatis--基础--3.3--xml映射文件--insert,update,delete元素。原创 2020-11-05 16:03:11 · 1073 阅读 · 1 评论 -
mybatis--基础--3.2--xml映射文件--select元素
这个语句被称作selectPerson,接受一个int(或Integer)类型的参数,并返回一个HashMap类型的对象,其中的键是列名,值便是结果行中的对应值。:预处理语句参数,通过JDBC,这样的一个参数在SQL中会由一个"?原创 2020-11-05 16:01:12 · 849 阅读 · 1 评论 -
mybatis--基础--3.1--xml映射文件--顶级元素
cache:该命名空间的缓存配置cache-ref:引用其它命名空间的缓存配置。resultMap:返回类型的映射sql:可被其它语句引用的可重用语句块。insert:映射插入语句。update:映射更新语句。delete:映射删除语句。select:映射查询语句。原创 2020-11-05 15:59:18 · 175 阅读 · 1 评论 -
mybatis--基础--2.9--xml配置--映射器(mappers)
【代码】mybatis--基础--2.9--xml配置--映射器(mappers)原创 2020-10-18 00:11:12 · 242 阅读 · 1 评论 -
mybatis--基础--2.8--xml配置--数据库厂商标识(databaseIdProvider)
我们当前使用的是mysql数据库,假设客户要使用oracle数据,我们应该修改sql 语句 databaseId=“oracle”原创 2020-10-18 00:09:41 · 2363 阅读 · 4 评论 -
mybatis--基础--2.7--xml配置--环境配置(environments)
3.7、环境配置(environments)可以配置成适应多种环境,有助于将SQL映射应用于多种数据库之中。每个SqlSessionFactory实例只能选择一种环境(数据库),也就是做你想连接N个数据库,那么需要创建N个SqlSessionFactory实例。2个数据库案例有环境参数SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader, environment);SqlSessionFactory f原创 2020-10-18 00:07:11 · 704 阅读 · 1 评论 -
mybatis--基础--2.6--xml配置--插件(plugins)
【代码】mybatis--基础--2.6--xml配置--插件(plugins)原创 2020-10-18 00:03:50 · 1056 阅读 · 1 评论 -
mybatis--基础--2.5--xml配置--对象工厂(objectFactory)
3.5、对象工厂(objectFactory)MyBatis 默认会使用对象工厂(ObjectFactory)来创建返回结果的对象。白话:mybaties 发挥的对象由ObjectFactory来创建创建目标类,比如说创建user类通过默认无参构造方法通过存在的参数映射来调用带有参数的构造方法如果想覆盖对象工厂的默认行为,可以通过创建自己的对象工厂来实现继承DefaultObjectFactory01 核心代码package com.cl.mybatis.learn.d原创 2020-10-18 00:02:23 · 261 阅读 · 3 评论 -
mybatis--基础--2.4--xml配置--类型处理器(typeHandlers)
重写已有的类型处理器或创建你自己的类型处理器具体做法为:实现org.apache.ibatis.type.TypeHandler接口继承类org.apache.ibatis.type.BaseTypeHandler,并且可以(可选地)将它映射到一个JDBC类型。配置方式:直接配置包名配置注意点使用自动发现功能的时候,只能通过注解方式来指定JDBC的类型。默认不使用自动发现功能/*** 将 数据库String类型转为Java Long类型。原创 2020-10-18 00:00:45 · 1841 阅读 · 1 评论 -
mybatis--基础--2.3--xml配置--类型别名(typeAliases)
3.3、类型别名(typeAliases)为Java类型设置一个缩写名字,降低冗余的全限定类名书写仅用于XML配置01 直接设置02 使用包名(推荐)03 使用包名+使用注解要配合 使用包名 来设置04 内建的别名不区分大小写代码地址:https://gitee.com/DanShenGuiZu/learnDemo/tree/mysql_mybaties_DB/mybatis-learn-master...原创 2020-10-17 23:55:10 · 342 阅读 · 1 评论 -
mybatis--基础--2.2--xml配置--设置(settings)
3.2、设置(settings)改变MyBatis的运行时行为。配置完整的 settings 元素的示例如下:<settings> <setting name="cacheEnabled" value="true"/> <setting name="lazyLoadingEnabled" value="true"/> <setting name="multipleResultSetsEnabled" value="true"/>原创 2020-10-17 23:52:54 · 400 阅读 · 1 评论 -
mybatis--基础--2.1--xml配置--属性
【代码】mybatis--基础--2.1--xml配置--属性。原创 2020-10-17 23:50:51 · 182 阅读 · 1 评论 -
mybatis--基础--01--简介和入门
持久层框架。支持自定义SQL、存储过程以及高级映射。免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。通过简单的XML或注解来配置和映射原始类型、接口和JavaPOJO(实体对象)为数据库中的记录。原创 2020-10-15 12:01:38 · 228 阅读 · 1 评论 -
mybaties源码解读
比较好的文章https://zhuanlan.zhihu.com/p/97879019https://zhuanlan.zhihu.com/p/31228047https://zhuanlan.zhihu.com/p/97409923https://zhuanlan.zhihu.com/p/31229895原创 2020-04-13 10:40:40 · 146 阅读 · 0 评论 -
mybaties,接口传入参数的各种情况
方式1 接口 /** * 通过userid,ParentID获取 List<Menu> */ public List<Menu> getMenus( @Param("parentID")String parID,@Param("uid")Integer userId);映射文件<select id="getMen原创 2017-09-20 11:24:23 · 454 阅读 · 0 评论 -
MyBatis如何防止SQL注入
下面是MyBatis一个Dao配置 <select id="findRank" parameterType ="String" resultType="String"> SELECT u.name FROM UserInfo u where 1=1 and u.UserID=#{userID} ; ...原创 2018-04-17 20:14:12 · 996 阅读 · 0 评论 -
深入了解MyBatis参数
转载https://blog.csdn.net/isea533/article/details/44002219入了解MyBatis参数相信很多人可能都遇到过下面这些异常: "Parameter 'xxx' not found. Available parameters are [...]" "Could not get property 'xxx' from xxxCla...转载 2018-09-07 14:30:27 · 175 阅读 · 0 评论