本月博客排行
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- wy_19921005
- benladeng5225
- fantaxy025025
- e_e
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- xiangjie88
- wiseboyloves
- ranbuijj
- ganxueyun
- sichunli_030
- xyuma
- wangchen.ily
- lemonhandsome
- jh108020
- zxq_2017
- jbosscn
- Xeden
- luxurioust
- zhanjia
- lzyfn123
- forestqqqq
- ajinn
- nychen2000
- wjianwei666
- daizj
- hanbaohong
- 喧嚣求静
- johnsmith9th
- silverend
- mwhgJava
- kingwell.leng
- lchb139128
- kristy_yy
- lich0079
- jveqi
- java-007
- sunj
最新文章列表
springboot + mysql + mybatis +maven 工程测试
今天,用STS4.11.1(springboot tools suite 4)开发了一个基于Springboot的测试工程,项目使用了mysql, mybatis,maven技术。首先看工程目录结构,(不能上传图片),直接上代码吧
要新建一个工程,数据库是基础, 使用mysql数据库,在mysql库上建表做数据处理,数据库建库脚本:
DROP TABLE emp_info;
CREAT ...
not found. Available parameters are
错误描述:
Caused by: org.apache.ibatis.binding.BindingException: Parameter '__frch_item_0' not found. Available parameters are [param, param_key_page, param1, param2]
解决:
<foreach collection="par ...
MyBatis一级缓存和二级缓存
MyBatis自带的缓存有一级缓存和二级缓存
一级缓存
Mybatis的一级缓存是指Session缓存。一级缓存的作用域默认是一个SqlSession。Mybatis默认开启一级缓存。
也就是在同一个SqlSession中,执行相同的查询SQL,第一次会去数据库进行查询,并写到缓存中;
第二次以后是直接去缓存中取。
当执行SQL查询中间发生了增删改的操作,MyBatis会把SqlSession的缓 ...
Mybatis # 和 $ 的区别及参数如何对应
调试 ParamNameResolver.
final Annotation[][] paramAnnotations = method.getParameterAnnotations();
二维数组,第一维是参数长度,第二维是注解个数.
1.看参数上是否有 @Param 注解,有就读取该注解中的值.
2.如果第1步不成立,则看能否获取实际参数名.
3.如果还不行,则是第几个参数(排除特殊参数 ...
Mybatis Cache 包分析
Cache 类主要提供 put/get/remove 方法.
public interface Cache {
/**
* cache 的 id.
*/
String getId();
/**
* @param key Can be any object but usually it is a {@link CacheKey}
* @param value T ...
Mybatis IO包源码分析
ClassLoaderWrapper 类是对 ClassLoader 的包装. 怎么理解了?看下这个方法就知道了.
ClassLoader[] getClassLoaders(ClassLoader classLoader) {
return new ClassLoader[]{
classLoader,
defaultClassLoader,
...
Mybatis 事务包分析
上面写的很清楚,Transaction 是对 database connection 的封装,处理 connection 的生命周期.
创建、准备、提交、回滚和关闭.
public interface Transaction {
/**
* Retrieve inner database connection.
* @return DataBase connection
* ...
最全Mybatis使用笔记
说明:本篇文章中有部分内容参考自下面相关链接上的内容,小伙伴可自行参考.本文在其基础上进行整理并扩充部分内容.
我们从最开始的 jdbc 开始说起.
public class JdbcUtil {
// 单机 MySQL 支持的最大连接数是 16384
private static final String DRIVER_CLASS = "com.mysql.jdbc ...
MyBatis Mapper 代理实现数据库调用原理
1. Mapper 代理层执行
Mapper 代理上执行方法调用时,调用被委派给 MapperProxy 来处理。
public class MapperProxy<T> implements InvocationHandler, Serializable {
...
MyBatis Mapper 代理创建过程
本文主要关注与 SpringBoot 集成时的初始化过程。
1. 核心组件
Configuration:MyBatis所有的配置信息都保存在Configuration对象之中,配置文件中的大部分配 ...
mybatis中进行三目判断,不同sql结果累加union(尤其对于多种等效权限,资源的准备)
mybatis中进行三目判断,不同sql结果累加union(尤其对于多种等效权限,资源的准备)
<sql id="selectProjectByUserBaseSql">
SELECT p.*,
IF(s.`id` is NULL, FALSE, TRUE) as 'isStar',
u.`id` ...
springMVC+mybatis分页
环境:jdk8 + springMVC + Spring5 + mybatis3.5.1 + jsp + bootstrap3
实现效果:
代码实现:
服务端:
封装分页工具类:Page.java
import java.util.List;
/**
* 分页工具类
* @author xiao沄莲
*/
public class Page<T> ...
Spring Boot 2.1 +mybatisPlus3.1.2+activiti6整合
Description:
An attempt was made to call a method that does not exist. The attempt was made from the following location:
com.baomidou.mybatisplus.core.MybatisMapperAnnotationBuilder.getLa ...
java mybatis插入数据返回主键id
mybatis 插入数据返回id,这一个功能我花了很久时间,真觉得很不值,百度很多文章虽然写了方法但最重要的步骤都没写,现在已经快晚上9点,我利用最后几分钟帮助大家不走弯路,首先网上很多答案是正确的,但是有一点最重要,“就是id需要在service层才能获取到,controller层是获取不到的“”,这个大家一定要注意
下面附上代码截图,一共两种方法都可用,希望都少走弯路,再就是分享知识一定要 ...
Eclipse配置MyBatis代码自动化功能
1.安装插件
Eclipse中,Help->Eclipse Marketplace,搜索MyBatis,
安装一个扎红头绳小鸟的插件。
2.创建自动化配置文件generatorConfig.xml
新建向导可找到模板,MyBatis->MyBatis Generator Configuration File,可得到一个带有主要配置不需求的模板,再根据自己的情况进行修改。如: ...
Mybatis传递多个参数的4种方式(干货)
现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate。使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数。面对各种复杂的业务场景,传递参数也是一种学问。
下面给大家总结了以下几种多参数传递的方法。
方法1:顺序传参法
Mybatis中#{}与${}区别
动态 sql 是 mybatis 的主要特性之一,在 mapper 中定义的参数传到 xml 中之后,在查询之前 mybatis
会对其进行动态解析。mybatis 为我们提供了两种支持动态 sql 的语法:#{} 以及 ${}。
${} 占位字段不加引号,引起sql注入 占位条件值会加引号
在下面的语句中,如果 username 的值为 zhangsan,则两 ...