随笔分类 - Spring
摘要:在做web开发的时候,经常需要对客户端发送过来的数据进行一个验证,以防数据不合法。 而SpringMVC支持的数据校验是JSR303的标准,通过在bean的属性上打上annotation @NotNull @Max等注解进行验证。JSR303提供有很多annotation借口,而SpringMVC对
阅读全文
摘要:目录 " 概述 " " SpringMVC请求参数接收 " " URL传参及@RequestParam " " 表单参数及@RequestParam " 【非对象】 非对象类型单个参数接收 【对象】 对象类型参数接收 【数组】 列表或者数组类型参数 " JSON参数及@RequestBody " "
阅读全文
摘要:一.首先对HandlerInterceptor进行封装,封装为MappingInterceptor.封装的方法里添加拦截器起作用的路径addPathPatterns(),及需要排除路径的方法excludePathPatterns() 二.写拦截器,拦截器实现封装好的MappingIntercepto
阅读全文
摘要:封装自定义接口filter 包含两个方法,第一个过滤的路径数组,第二个为过滤器执行的顺序.spring boot 会按照order值的大小,从小到大的顺序来依次过滤。 书写具体的filter 注入bean到容器
阅读全文
摘要:RabbitMQ简介 RabbitMQ使用Erlang语言开发的开源消息队列系统,基于AMQP协议来实现(AMQP的主要特征是面向消息、队列、路由、可靠性、安全)。支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支
阅读全文
摘要:添加依赖 application.yml配置 additional paths对于多模块也有效,多模块下只要是此目录下的就会重新加载 idea设置 第一步 Preferences Build,Execution,Deployment Compiler找到 Build Project Automati
阅读全文
摘要:导入依赖 application.yml配置文件 quartz配置类 quartz具体执行类 参考文档: https://www.jianshu.com/p/056281e057b3 (流程参考) https://docs.spring.io/spring boot/docs/2.0.x SNAPS
阅读全文
摘要:首先在spring boot starter web中排除spring boot starter这个包 然后在spring boot starter中排除spring boot starter logging包,此时logback包就被排除了.因为logbak包的上一级parent为spring b
阅读全文
摘要:有如下两个切点: 此时可以这么写
阅读全文
摘要:问题场景 场景很简单,就是一个正常 axios post 请求: axios({ headers: { 'deviceCode': 'A95ZEF1-47B5-AC90BF3' }, method: 'post', url: '/api/lockServer/search', data: { use
阅读全文
摘要:``` 我也遇到了这个问题,仔细debug了一下,结论如下: 1. AOP可以触发数据源字符串的切换,这个没问题 2. 数据源真正切换的关键是 AbstractRoutingDataSource 的 determineCurrentLookupKey() 被调用,此方法是在open connection时触发 3. 事务是在connection层面管理的,启用事务后,一个事务内部的connecti
阅读全文
摘要:简要原理: 1)DataSourceEnum列出所有的数据源的key key 2)DataSourceHolder是一个线程安全的DataSourceEnum容器,并提供了向其中设置和获取DataSourceEnum的方法 3)DynamicDataSource继承AbstractRoutingDa
阅读全文
摘要:当使用 RestTemplate 可能会遇到异常: 典型如下: 这样使用,会出现如下报错信息: 这个地方很令人费解,难道不能这样使用?经过一顿查找,发现原来是因为。。。 url因为本身的原因,把花括号 { } 中的内容当成了占位符,而这里又没有明确说明占位符对应的值,所以会导致报错。 只需要简单几步
阅读全文
摘要:结论 RestTemplate 的 postForObject 方法有四个参数 String url = 顾名思义 这个参数是请求的url路径 Object request = 请求的body 这个参数需要再controller类用 @RequestBody 注解接收 Class responseT
阅读全文
摘要:实际集成 获取restTemplate实例,封装方法 增加一个MessageConverter 参考 简介: spring框架提供的RestTemplate类可用于在应用中调用rest服务,它简化了与http服务的通信方式,统一了RESTful的标准,封装了http链接,我们只需要传入url及返回值
阅读全文
摘要:错误 这边调用的时候使用了RestTemplate 使用过程 下面是我请求的路径 调用之后程序报以下错误 解决方案: 我们继承 MappingJackson2HttpMessageConverter 并在构造过程中设置其支持的 MediaType 类型即可: 然后把这个 WxMappingJacks
阅读全文
摘要:spring boot后台时间正确,返回给前台的时间不正确,和后台差8个小时 原因是: spring boot中对于@RestController或者@Controller+@ResponseBody注解的接口方法的返回值默认是Json格式, 所以当对于date类型的数据,在返回浏览器端是会被spr
阅读全文
摘要:方法一 SpringContextUtil 启动类 测试bean } //无注入 测试 以上参考 链接:https://www.jianshu.com/p/41c716e7c31b 方法二(略有不同) 工具类 测试bean 测试 以上参考: 主力:https://www.jianshu.com/p/
阅读全文
摘要:```查询官方文档知将extends AbstractWebSocketMessageBrokerConfigurer改为implements WebSocketMessageBrokerConfigurer```
阅读全文
摘要:默认是单例 通过注解@Scope("prototype"),将其设置为多例模式 参考: 曾经面试的时候有面试官问我spring的controller是单例还是多例,结果我傻逼的回答当然是多例,要不然controller类中的非静态变量如何保证是线程安全的,这样想起似乎是对的,但是不知道(主要是我没看
阅读全文