Spring
无关风月u
怕什么真理无穷,进一寸有一寸的欢喜
展开
-
JPA动态数据源实现多数据源切换数据源失败
遇到一个问题配置动态数据源之后,同一个请求,不同事务无法多次切换数据源解决方案:spring.jpa.open-in-view=false原因:spring.jpa.open-in-view(默认为true),JPA方法执行完成之后,并没有释放数据库连接(需要等到Controller方法执行完成才会释放)这里还有一点要注意数据源的切换是通过AbstractRoutingDataSource 的 determineCurrentLookupKey()实现,数据库建立连接时getConnecti原创 2022-04-08 15:43:17 · 2545 阅读 · 3 评论 -
Spring AOP 子类继承父类
spring aop 继承原创 2021-02-26 15:01:27 · 2305 阅读 · 0 评论 -
从浏览器输入网址到页面显示之间的过程
发起一个HTTP连接本质上就是建立一个scoket连接 之间发生的事情: 1.浏览器向DNS服务器查找输入URL对应的IP地址 这里面需要做的就是DNS解析。我们都知道互联网是通过URL来发布和请求资源的,而URL中的域名需要解析成IP地址才能与远程主机建立连接。 DNS域名解析的前两步会去浏览器缓存中和操作系统缓存中查看有没有这个域名原创 2017-11-29 16:38:36 · 1645 阅读 · 0 评论 -
Spring AOP 面向切面编程
Spring 一大特性就是 Aop 编程 1、什么是Aop编程 Aop 即 面向切面编程:举个例子 验证用户是相同的代码,把散落在程序中的公共部分提取出来,做成切面类。这就叫面向切面编程 这样就像一个切面。这样的好处在于,代码的可重用,一旦涉及到该功能的需求发生变化,只要修改该代码就行,否则,你要原创 2017-11-21 21:15:19 · 266 阅读 · 0 评论 -
Spring 事务管理
首先说一下,为什么需要事务。不是银行的那个例子哈哈。 最近刚开发一个审批功能,请假审批,第一步是填写请假数据。然后点击“申请请假”按钮启动审批。 启动审批的时候需要做两件事情 1.修改请假那条数据的审批状态(请假表里的 state 字段)。 2.启动流程,开始走审批(数据库中生成审批信息)。 因为在开发阶原创 2017-11-22 16:08:04 · 165 阅读 · 0 评论 -
1+N 多form表单拼接传值
应用场景 一个报销审批对应多个出差项目填写js取值 var formone = $("#formone").serializeArray(); var obj = {}; $.each(formone, function(i, v){ ...原创 2018-05-23 17:48:38 · 744 阅读 · 0 评论 -
Spring 注入实现类报错问题
在使用spring 时,假如在controller中注入了impl 实现类可能会出现报错的情况。为什么是“可能”,① 假如没用使用spring aop ,则不会报错。 ② 类没用使用接口也不会报错。1、为什么使用 aop 会导致报错: spring aop的实现是基于动态代理 如果目标对象实现了接口,那么...原创 2018-11-05 14:28:11 · 1706 阅读 · 2 评论 -
redis + aop 限制方法频率,防止重复提交
项目在运行时期,访问时会因为网络卡顿等原因造成重复点击,多次提交的问题。尝试在前端做过限制,之后觉得使用redis 更为简单。1. redis 可以 设置过期时间,符合需求2.使用spring aop,只需要配置第一次,之后不需要更改实现思路,用户10秒内不能执行第二次新增方法,以用户ID 作为 key。AOP@Aspect@Componentpublic clas...原创 2019-05-09 15:02:51 · 1003 阅读 · 0 评论