
Spring-基础
HeatDeath
Learn by doing!
展开
-
Spring 缓存相关注解
1、Spring缓存注解@Cacheable、@CacheEvict、@CachePut使用 https://blog.youkuaiyun.com/wjacketcn/article/details/509458872、注释驱动的 Spring cache 缓存介绍 https://www.ibm.com/developerworks/cn/opensource/os-cn-spring-cache...原创 2018-08-26 21:13:11 · 503 阅读 · 0 评论 -
AOP 报错 return value from advice does not match primitive return type for: public boolean
return value from advice does not match primitive return type for: public boolean环绕型切面的返回值不能为 void ,应该为 Object参考资料:1、AOP exception when calling Around aspects on https://stackoverflow.com...原创 2018-05-04 19:40:01 · 3652 阅读 · 0 评论 -
Spring DevTools 的使用方法
1、Spring DevTools 介绍https://blog.youkuaiyun.com/isea533/article/details/704957142、Spring Boot学习笔记-配置devtools实现热部署https://blog.youkuaiyun.com/HowieLi_1995/article/details/60872788...原创 2018-05-04 14:39:13 · 1132 阅读 · 0 评论 -
AOP 的利器:ASM 3.0 介绍
AOP 的利器:ASM 3.0 介绍 AOP 的利器:ASM 3.0 介绍 ...转载 2018-05-03 11:14:50 · 287 阅读 · 0 评论 -
JUnit神奇的报错 java.lang.Exception:No tests found matching
谈一谈JUnit神奇的报错 java.lang.Exception:No tests found matching 最近在学习Spring+SpringMVC+MyBatis,一个人的挖掘过程确实有点艰难,尤其是有一些神奇的报错让你会很蛋疼。特别是接触一些框架还是最新版本的时候,会因为版本问题出现...转载 2018-04-30 21:45:13 · 1166 阅读 · 1 评论 -
一大坨关于 AOP 还写得蛮棒的文章
参考资料:1、Spring中的AOP(三)——基于Annotation的配置方式(一) https://my.oschina.net/itblog/blog/2107182、Spring中的AOP(四)——基于Annotation的配置方式(二) https://my.oschina.net/itblog/blog/2108073、Spring中的AOP(六)——定义切入点和切入点...原创 2018-04-23 20:32:45 · 234 阅读 · 0 评论 -
Spring Task crontab 表达式的使用方法
Spring cron 表达式Spring Scheduler的使用与坑 Spring cron 表达式 前言: 最近做的项目有用到定时器,每周只在特定时间运行一次,考虑到Spring Task的简单易用性,就果断选择了,我是配置在配置文件里面,没有用注解@Scheduled,推荐配置,注解虽方便...转载 2018-04-16 10:11:09 · 2769 阅读 · 0 评论 -
SpringMVC 并发访问的线程安全性问题
Springmvc 并发访问的线程安全性问题 首先对于spring的IOC来说,对象是由Spring来帮我们管理,也就是在Spring启动的时候,在Spring容器中,由Spring给我们创建的,Spring会帮我们维护,一般都是单例的,也就是一个对象。 spring生成对象默认是单例的。通过scope属性可以更改为多例。 第一部分:验证...转载 2018-03-28 00:46:46 · 963 阅读 · 0 评论 -
Spring 中的 Bean 默认是单例的
由Spring框架中的单例模式想到的 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例注:Spring源码的版本4.3.4Spring依赖注入Bean实例默认是单例的,我们由此展开。Spring的依赖注入(包括lazy-init方式)都是发生在AbstractBeanFactory的g...转载 2018-03-28 00:44:13 · 7165 阅读 · 0 评论 -
Spring3升级到Spring4时, 运行时出现找不到MappingJacksonHttpMessageConverter的情况
原因是Spring 3.x 和4.X处理JSON的一个类不一样,而这个东西又配置在xml文件中,所以编译时又无法发现spring3.x是org.springframework.http.converter.json.MappingJacksonHttpMessageConverterspring4.x是org.springframework.http.converter.json....转载 2018-03-27 16:14:04 · 320 阅读 · 0 评论 -
最近学习的一点感想(关于 Flask、Django、SpringBoot)
最近接触到了 SpringBoot 、lombok想到了一些不太恰当的类比Python JavaDjango -》 SpringMVCFlask -》 SpringBoot感觉 Django 和 SpringMVC 都很重,要写好多好多的配置文件而 Flask 和 SpringBoot (配合 lombok),感觉很清爽。但是注解满天飞Sprin...原创 2018-04-08 00:47:05 · 13175 阅读 · 23 评论 -
Spring 多数据源配置方法
1、spring多数据源配置http://blog.youkuaiyun.com/wangpeng047/article/details/88662392、Spring+MyBatis多数据源配置实现https://www.cnblogs.com/lzrabbit/p/3750803.html3、Spring, MyBatis 多数据源的配置和管理http://www.cnblogs.co...原创 2018-03-13 18:14:05 · 292 阅读 · 0 评论 -
Spring 配置文件中 import 标签的作用
多个 Spring 配置文件通过 import 方式整合的话:1、配置文件会先合并,后解析,也就是说,无论是命名空间还是配置的内容,都会合并处理。2、因为多个 Spring 配置文件最终会合并到一起(形成一个 ApplicationContext),因此这些配置中的 bean 都是可以互相引用的。使用方式:<import resource="classpath:lm.prac...原创 2018-03-05 19:54:55 · 3128 阅读 · 0 评论 -
RestTemplate 中设置 header 以及使用 HTTP 基本认证的方法
String user = "111"; String password = "66666"; String userMsg = user + ":" + password; String base64UserMsg = Base64.getEncoder().encodeToString(userMsg.getBytes()); ...原创 2018-03-05 18:57:02 · 39952 阅读 · 1 评论 -
annotation-config, annotation-driven, compont-scan 区别
<context:annotation-config> declares support for general annotations such as @Required, @Autowired, @PostConstruct, and so on. <mvc:annotation-driven /> declares explicit support...原创 2018-02-25 17:35:54 · 486 阅读 · 0 评论 -
@ControllerAdvice + @ExceptionHandler 全局处理 Controller 层异常
@ControllerAdvice + @ExceptionHandler 全局处理 Controller 层异常SpringMVC重要注解(二)@ControllerAdvicespringMVC使用@ControllerAdvice实现异常处理 零、前言对于与数据库相关的 Sp...转载 2018-05-06 00:21:04 · 486 阅读 · 0 评论 -
@Configuration 配合 @Bean 的使用
Spring Boot提倡约定优于配置,如何将类的生命周期交给spring1、第一种自己写的类,Controller,Service。 用@controller @service即可2、第二种,集成其它框架,比如集成shiro权限框架,集成mybatis分页插件PageHelper,第三方框...转载 2018-05-06 00:47:23 · 590 阅读 · 0 评论 -
使用 @Valid 注解校验输入参数
1、SpringMVC使用@Valid注解进行数据验证 https://blog.youkuaiyun.com/zknxx/article/details/524267712、@Valid注解的使用 https://blog.youkuaiyun.com/xzmeasy/article/details/76098188原创 2018-05-06 10:35:56 · 3888 阅读 · 0 评论 -
RedisTemplate 和 StringRedisTemplate 的区别
RedisTemplate 和 StringRedisTemplate 都提供了一些操作 Redis 的模板方法,但是两者之间是有一些区别的从上图中可以看出,StringRedisTemplate 是继承了 RedisTemplate 的,RedisTemplate 有一个成员变量 defaultSerializer RedisTemplate 的序列化采用的是 JdkSerial...原创 2018-08-26 16:52:23 · 1275 阅读 · 0 评论 -
Spring 中 InitializingBean 接口的使用方法
Spring 中 InitializingBean 接口的使用方法 InitializingBean接口为bean提供了初始化方法的方式,它只包括afterPropertiesSet方法,凡是继承该接口的类,在初始化bean的时候会执行该方法。测试程序如下:import org.springframework.beans.factory.Initializin...转载 2018-08-03 13:31:53 · 1227 阅读 · 0 评论 -
使用 Spring WebSocket 实现向用户推送消息的功能
1、websocket+spring http://tech.lede.com/2017/03/08/qa/websocket+spring/2、《Spring 5 官方文档》22. WebSocket Support http://ifeve.com/%E3%80%8Aspring-5-%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3%E3%80%8B22-web...原创 2018-06-10 12:08:38 · 2486 阅读 · 0 评论 -
Spring AOP 性能监控切面、异常处理切面、请求参数校验切面
程序性能监控切面import org.apache.commons.lang3.exception.ExceptionUtils;import org.aspectj.lang.JoinPoint;import org.aspectj.lang.annotation.AfterThrowing;import org.aspectj.lang.annotation.Aspect;impo...原创 2018-06-02 14:57:49 · 3662 阅读 · 0 评论 -
在切面处获取 HttpServletRequest 的方法
切面处获取 RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes(); ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) requestAttribut...原创 2018-05-16 16:34:14 · 5573 阅读 · 0 评论 -
Spring AOP @Before @Around @After 等 advice 的执行顺序
Spring AOP @Before @Around @After 等 advice 的执行顺序 用过spring框架进行开发的人,多多少少会使用过它的AOP功能,都知道有@Before、@Around和@After等advice。最近,为了实现项目中的输出日志和权限控制这两个需求,我也使用到...转载 2018-05-16 15:04:26 · 509 阅读 · 0 评论 -
SpringMVC 上传文件到指定路径
@RestController@RequestMapping(value = "/uploadFile")public class UploadFileController { @RequestMapping(value = "/upload", method = RequestMethod.POST) @ResponseBody public String quer...原创 2018-05-22 14:41:25 · 12201 阅读 · 0 评论 -
Spring aop:pointcut--expression--多个execution连接方法
Spring aop:pointcut–expression–多个execution连接方法 声明式事务,多个execution连接方法: expression=”execution(* pp.business.*.*(..)) or execution(* pp.business....转载 2018-05-08 18:29:56 · 5422 阅读 · 0 评论 -
SpringMVC 实现 文件上传功能
web.xml 不用特殊配置spring-context.xml 需要加上一个 bean <!-- 配置MultipartResolver 用于文件上传 使用spring的CommosMultipartResolver --> <bean id="multipartResolver" class="org.springframework.web.mu...原创 2018-05-21 17:24:35 · 679 阅读 · 0 评论 -
java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory
java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactorySpringMVC 上传文件<dependency> <groupId>commons-io</groupId> <artifactId>commons-io<...原创 2018-05-21 17:10:01 · 812 阅读 · 0 评论 -
Controller 层异常统一处理的方式
Controller层方法,进行统一异常处理Controller层方法,进行统一异常处理提供两种不同的方案,如下:方案1:使用 @@ControllerAdvice (或@RestControllerAdvice), @ExceptionHandler 注解实现;方案2: 使用AOP技术实现;现在分别介绍方案1: 使用@ControllerAdvice 和 @Excepti...转载 2018-05-07 20:03:34 · 3376 阅读 · 0 评论 -
AOP @AfterThrowing 注解的使用方法
资料:1、Spring AOP(三)之AfterThrowing增强处理 https://blog.youkuaiyun.com/owen_william/article/details/508127802、【Spring-AOP-学习笔记-6】@AfterThrowing增强处理简单示例 http://www.cnblogs.com/ssslinppp/p/4633595.html3、基于A...原创 2018-05-07 20:02:15 · 11987 阅读 · 1 评论 -
Spring 使用 切面配合自定义注解处理 Web 层的异常
资料:1、切面和自定义注解的配合使用 https://blog.youkuaiyun.com/huangyu1985/article/details/534497762、Spring AOP 抛出增强捕获异常 https://blog.youkuaiyun.com/ab7253957/article/details/509106713、基于spring注解AOP的异常处理 https://www.cnb...原创 2018-05-06 15:35:23 · 608 阅读 · 0 评论 -
使用 JSR303 校验用户输入参数
资料:1、JSR 303 - Bean Validation 介绍及最佳实践https://www.ibm.com/developerworks/cn/java/j-lo-jsr303/index.html2、SpringMVC 使用JSR-303进行校验 @Validhttps://www.cnblogs.com/eggbucket/p/3264074.html3、使用JSR...原创 2018-05-06 10:41:27 · 589 阅读 · 0 评论 -
@ResponseBody 注解设置 utf-8 编码的方式
我最终采用的方式:<bean class = "org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"><property name="messageConverters"> <array> <bean class = "or...原创 2018-02-25 15:41:35 · 4896 阅读 · 1 评论 -
Spring 事务不会滚可能的原因
1、Spring声明式事务为何不回滚https://www.jianshu.com/p/f5fc14bde8a02、透彻的掌握 Spring 中@transactional 的使用https://www.ibm.com/developerworks/cn/java/j-master-spring-transactional-use/index.html3、Spring @Trans...原创 2018-03-11 19:38:18 · 691 阅读 · 0 评论 -
Spring 中事务的传播与事务的使用方法
1、深入理解 Spring 事务原理 http://www.codeceo.com/spring-transactions.html2、 spring事物配置,声明式事务管理和基于@Transactional注解的使用 http://blog.youkuaiyun.com/bao19901210/article/details/41724355...原创 2018-03-11 19:34:38 · 258 阅读 · 0 评论 -
Spring 学习笔记(2)—— ApplicationContext 及 WebApplicationContext 的初始化
前言Spring 通过一个配置文件描述 Bean 和 Bean 之间的依赖关系,利用 Java 语言的反射功能实例化 Bean,并建立 Bean 之间的依赖关系。BeanFactory(com.springframework.beans.factory.BeanFactory)是 Spring 框架最核心的接口,提供了高级 IoC 的配置机制。BeanFactory 使管理不同类型的 Java 对象原创 2017-10-31 08:57:00 · 590 阅读 · 0 评论 -
Spring 学习笔记(3)—— Spirng 配置概述
Spring 容器高层视图Spring 启动时读取应用程序提供的 Bean 配置信息(XML 配置文件),并在 Spring 容器(ApplicationContext)中生成一份相应的 Bean 配置注册表,然后根据这张注册表实例化 Bean,装配好 Bean 之间的依赖关系,为上层因公提供准备就绪的运行环境。Bean 元数据信息在 Spring 容器中的内部对应物是由一个个 BeanDefini原创 2017-10-31 09:44:41 · 495 阅读 · 0 评论 -
Spring 学习笔记(4)—— Bean 的基本配置、依赖注入(DI)、注入参数引用其他Bean
一、Bean 的基本配置1 装配一个 Bean在 Spring 容器的配置文件中定义一个简要 Bean 的配置片段2 Bean 的命名二、依赖注入1 属性注入属性注入要求 Bean 提供一个默认的 构造函数, 并为需要注入的属性提供对应的 Setter 方法。2 构造函数注入按索引匹配入参三、注入参数引用其他Bean原创 2017-10-31 10:20:12 · 838 阅读 · 0 评论 -
Spring 学习笔记(5)—— 简化xml配置文件的配置方式
1 字面值属性2 引用对象属性3 使用 p 命名空间原创 2017-10-31 10:36:04 · 746 阅读 · 0 评论 -
关于 Spring 中 Autowired 注入接口的几个问题
http://blog.youkuaiyun.com/luman1991/article/details/548449691.Spring怎么知道注入哪个实现?As long as there is only a single implementation of the interface and that implementation is annotated with @Component with Spr原创 2017-10-31 11:13:54 · 3997 阅读 · 0 评论