
SSM
手把手入门
一百万种可能~
展开
-
JAVA:@Async测试是否生效(亲测可用)
1.3、如上所述,如果@Async生效,打印顺序必定是1/2/3/4;2.1、如果调用方法和被调用方法都在AService中,则不生效。一、测试@Async是否生效。二、失效的情况和解决办法。原创 2023-01-12 13:46:12 · 2725 阅读 · 3 评论 -
spring兑换码使用synchronized问题
一、业务:兑换码兑换会员。1、用户使用兑换码多次请求,出现多次兑换成 二、当然使用synchronized就能够解决的问题三、但是如果你这样测试的话。。。每次返回都是正常的,写个鸡儿代码(使用synchronized就可以了,测试的时候请用业务代码,不要想我这样写一个。。。。。太糟糕了)//@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.SERIALIZABLE)public s...原创 2021-01-25 17:41:06 · 425 阅读 · 0 评论 -
error Type referred to is not an annotation type:
我这个错误是一直报RedisConfig.java错误,后来发现是自己自定义的注解的问题,自定义了一个切面和注解,结果注解名叫MyCacheEvict切面中却是@AfterReturning("@annotation(com.whadmin.framework.aspectj.lang.annotation.MyCacheRemove)")两个名字不一样,导致aop找不到注解名为MyCacheRemove的名字...原创 2021-01-19 11:34:08 · 1898 阅读 · 0 评论 -
mybatis(foreach)使用 delete not in
一、service层——java中传入一个数组或者集合templateIds= templateIds.substring(0, templateIds.length()-1); //一个字符串数组super.deleteBySql("deleteOverdueTem", templateIds.split(",")); //调用mybatis二、mybatis中(可以不用请求参数)collection:要做foreach的对象,作为入参时,List对象默认用"list"代替作为键,...原创 2020-10-12 15:32:34 · 1338 阅读 · 0 评论 -
Mybatis-Plus的实体类注解
https://www.cnblogs.com/Nickc/p/12001764.html一、@TableName注解@TableName(value = …)当数据库名与实体类名不一致或不符合驼峰命名时,需要在此注解指定表名@TableId(type = …)指定实体类的属性为对应的主键,主要有以下几种:// 数据库ID自增IdType.AUTO// 该类型为未设置主键类型(默认)IdType.NONE /** * 用户输入ID * <p>该类型可以通过自己原创 2020-09-18 17:36:45 · 6256 阅读 · 0 评论 -
mybatis-plus Cause: java.sql.SQLSyntaxErrorException: Unknown column ‘xxxxx‘ in ‘field list‘
错误原因:数据库中没有某个字段一、第一种可能(实体类表名没有修改) 看打印出来的sql语句 二、数据库确实没有该字段,但是实体类有 在实体类中添加@TableField(exist = false)// 用来解决实体类中有的属性但是数据表中没有的字段...原创 2020-09-18 17:32:05 · 6114 阅读 · 0 评论 -
mybatis升级到mybatis-plus遇到的问题
一、首先移除mybatis移除jar包、yml配置、@Configuration配置文件二、mybatis-plus的配置传送门:https://blog.youkuaiyun.com/qq_16946803/article/details/107753313三、遇到 java.lang.IllegalStateException: Property 'configuration' and 'configLocation' can not specified四、数据库...原创 2020-09-18 17:36:59 · 680 阅读 · 0 评论 -
mybatis-plus java.lang.IllegalStateException: Property ‘configuration‘ and ‘configLocation‘ can not
在springboot的application.yml不能同时使用以下两个配置,换句话说,两者配置方式只能取其一.mybatis-plus 一样不能同时存在 mybatis: config-location: classpath:mybatis/mybatis-config.xml configuration: map-underscore-to-camel-case: true...原创 2020-09-18 16:22:50 · 546 阅读 · 0 评论 -
SpringBoot整合MyBatis-Plus(齐名插件tk.mapper)
详细教程请看:https://www.cnblogs.com/qwlscn/p/11490071.html1、导包 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId>原创 2020-09-18 16:19:53 · 1014 阅读 · 0 评论 -
java实现redis的发布订阅(使用spring-data-redis.jar包)
一、导入jar包<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></dependency>二、发布者注:在ja...原创 2020-04-01 10:19:23 · 861 阅读 · 1 评论 -
spring aop思想和spring boot aop配置
一、AOP(面向切面编程)轻松理解AOP思想(面向切面编程)https://www.cnblogs.com/Wolfmanlq/p/6036019.html需要从不同的角度来看待同一个事物。这里的“方面”,指的是事物的外在特性在不同观察角度下的体现。而在AOP中,Aspect的含义,可能更多的理解为“切面”比较合适。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态...原创 2019-03-28 15:57:17 · 230 阅读 · 0 评论 -
spring mvc和junit4冲突Error creating bean with name 'userController': Unsatisfied dependency expressed
UnsatisfiedDependencyException: Error creating bean with name 'userController': Unsatisfied dependency expressed through field 'userService'; nested exception is org.springframework.beans.factory.Bea...原创 2019-08-08 11:28:48 · 889 阅读 · 0 评论 -
Spring缓存注解 @Cacheable、@CachePut、@CacheEvict的使用
@Cacheable(value="users", key="'cms_catalog_'+userId") //如果缓存中有数据,就用缓存中的数据,否则执行方法语句@CachePut("users")//每次都会执行方法,并将结果存入指定的缓存中(不读取缓存中的数据,只保存)@CacheEvict (value="redis1",key="'cms_catalog_*'")//触...原创 2019-06-11 10:14:38 · 275 阅读 · 0 评论 -
10分钟看懂动态代理设计模式
动态代理是Java语言中非常经典的一种设计模式,也是所有设计模式中最难理解的一种。本文将通过一个简单的例子模拟JDK动态代理实现,让你彻底明白动态代理设计模式的本质,文章中可能会涉及到一些你没有学习过的知识点或概念。如果恰好遇到了这些知识盲点,请先去学习这部分知识,再来阅读这篇文章。什么是代理从字面意思来看,代理比较好理解,无非就是代为处理的意思。举个例子,你在上大学的时候,总是喜欢逃...转载 2019-05-23 11:37:53 · 140 阅读 · 0 评论 -
SSM框架jar包作用
Springspring-expression.RELEASE.jar:Spring表达式语言。spring-aop.RELEASE.jar : Spring的面向切面编程,提供AOP(面向切面编程)实现。spring-context.RELEASE.jar : Spring提供在基础IOC功能上的扩展服务,此外还提供许多企业级服务的支持,如邮件服务、任务调度、...原创 2019-03-11 11:19:33 · 1017 阅读 · 0 评论 -
Redis判断密码是否设置→修改临时密码→修改端口
温馨提示:如果出现多次redis连接不上,可能是密码没有设置永久更改,你设置的是临时密码1.判断密码是否设置:打开powershell界面(cmd)2.输入:./redis-cli.exe3.查看是否设置了密码:如果密码是root.127.0.0.1:6379> auth root(error) ERR Client sent AUTH, but no passwo......原创 2019-04-02 09:26:40 · 3090 阅读 · 0 评论 -
web.xml全解
web.xml运行顺序:<context-param>-> <listener> -> <filter> -> <servlet>转载:https://www.cnblogs.com/vanl/p/5737656.html写在前面:鄙人才学疏浅,关于这篇文章,鄙人也是在网上收集的。有两个目的。一是记录下来加深自己的理解,二是...转载 2019-03-29 15:34:48 · 258 阅读 · 1 评论 -
spring中bean配置和bean注入
https://www.cnblogs.com/wuchanming/p/5426746.html原创 2019-03-21 16:48:23 · 180 阅读 · 0 评论 -
SpringMvc中的@RequestMapping value 6个基本用法
小结下spring mvc中的@RequestMapping的用法。 1)最基本的,方法级别上应用,例如: 则访问http://localhost/xxxx/departments的时候,会调用 simplePattern方法了 @RequestMapping(value="/departments") public String simplePattern(){ Sy...转载 2018-11-06 15:22:30 · 3019 阅读 · 0 评论 -
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 可能是你的数据库连接出错
[ERROR][2018-08-29 19:29:28,205][org.springframework.web.context.ContextLoader]Context initialization failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com...原创 2018-08-29 19:39:28 · 2589 阅读 · 2 评论 -
MyBatis中@Param("参数名") 标签的作用
在方法参数的前面写上@Param("参数名"),表示给参数命名,名称就是括号中的内容比如:public Student select(@Param("aaaa") String name,@Param("bbbb")int class_id); 解释:给参 String name 命名为aaaa,然后sql语句 ....where s_name= #{aaaa} 中就可以根据aaaa得到参数...原创 2018-08-23 18:46:14 · 1284 阅读 · 0 评论 -
mybatis学习笔记一 ——配置
1.导包<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> ...原创 2019-07-10 20:13:50 · 182 阅读 · 0 评论 -
mybatis学习笔记十——异常问题
一、org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)错误原因:idea自动过滤掉了src/main/java下的配置文件,因为一般配置文件都是放在src/main/resource下的。解决方法:将*Mapper.xml复制进去二、java.lang.Nu...原创 2019-08-05 16:26:43 · 170 阅读 · 0 评论 -
mybatis学习笔记三——映射文件XXXmapper.xml的增删改查(多表关联)
cache– 对给定命名空间的缓存配置。 cache-ref– 对其他命名空间缓存配置的引用。 resultMap– 是最复杂也是最强大的元素,用来描述如何从数据库结果集中来加载对象。 parameterMap– 已被废弃!老式风格的参数映射。更好的办法是使用内联参数,此元素可能在将来被移除。文档中不会介绍此元素。 sql– 可被其他语句引用的可重用语句块。 insert– ...原创 2019-07-15 11:27:11 · 1834 阅读 · 0 评论 -
mybatis学习笔记六——mybatis缓存cache
mybatis分为一级缓存、二级缓存语句顺序:先查二级缓存 → 再查一级缓存 → 最后才去数据库查找一、一级缓存(默认状态开启) SqlSession级别缓存。开启一个SqlSession级别的map进行保存 生效:使用同一个SqlSession并且没有做过增删改(第一次查询与第二次查询之间)、或者手动清除缓存的操作(sqlSession.clearCache();),一...原创 2019-07-24 11:14:47 · 270 阅读 · 0 评论 -
mybatis学习笔记二 ——全局配置文件的属性(标签)
如果属性在不只一个地方进行了配置,那么 MyBatis 将按照下面的顺序来加载在mybatis-config.xml映射文件中,所有标签都有顺序查看标签顺序 1.1:properties属性 引入外部配置文件<property name="username" value="${username:ut_user}"/> <!-- 如果属性 'userna...原创 2019-07-11 19:52:13 · 346 阅读 · 0 评论 -
mybatis学习笔记四——动态 SQL
1.choose, when, otherwise(相当于像 Java 中的 switch 语句。)<select id="findActiveBlogLike" resultType="Blog"> SELECT * FROM BLOG WHERE state = ‘ACTIVE’ <choose> <when test="title...原创 2019-07-15 14:56:07 · 160 阅读 · 0 评论 -
mybatis学习笔记五——Java API
1.2.原创 2019-07-16 01:14:12 · 131 阅读 · 0 评论