@Transactional是我们在用Spring时候几乎逃不掉的一个注解,该注解主要用来声明事务。它的实现原理是通过Spring AOP在注解修饰方法的前后织入事务管理的实现语句,所以开发者只需要通过一个注解就能代替一系列繁琐的事务开始、事务关闭等重复性的编码任务。 编码方式确实简单了,但也因为隐藏了直观的实现逻辑,一些错误的编码方法可能会让@Transactional注解失效,达不到事务的作用...
阅读全文@Autowired注解相信每个Spring开发者都不陌生了!在DD的Spring Boot基础教程https://blog.didispace.com/spring-boot-learning-2x/和Spring Cloud基础教程https://blog.didispace.com/spring-cloud-learning/中也都经常会出现。...
阅读全文前几天分享了一篇《Spring Boot 2.x基础教程:加密配置中的敏感信息》https://blog.didispace.com/spring-boot-learning-2-1-5/ ,然后看到群里有小伙伴反应跟着这篇文章出现了这个异常com.ulisesbocchio.jasyptspringboot.exception.DecryptionException: Unable to...
阅读全文上周,我们通过这篇文章《为什么catch了异常,但事务还是回滚了?》https://blog.didispace.com/why-catch-exception-transaction-rollback/来解释了,之前test4为什么会回滚的原因。 但还是收到了很多没有理解的反馈,主要是根据前文给出的线索去跟踪,是获得到了回滚的标示和异常,而让大家不理解的是,javax.validation.Co...
阅读全文前几天我发了这篇文章《我来出个题:这个事务会不会回滚?》https://blog.didispace.com/will-this-transcation-rollback/ 得到了很多不错的反馈,也有不少读者通过微信、群或者邮件的方式,给了我一些关于test4的回复。其中还有直接发给我测试案例,来证明我的答案是错的。 今天,我们就来一起看看test4这个争议很大的问题。如果您是刚打开这篇文章,不了...
阅读全文下面这个问题源于前几日在我们的Spring技术交流群里,一个群友提出的关于事务回滚的疑问。 在讨论过程中,我尝试去复现群友提出的问题场景,发现了另外一个可能让大家会迷惑的情况。 当时在群里说了结果和原因,但微信群范围有限,所以单独写篇文章,拿出来给大家看看,顺便考考大家,对这块是否了解。 问题描述 这个问题的基础工程我用了之前Spring Boot 2.x基础教程中《使用Spring Data...
阅读全文文章介绍了spring-boot中实现通用auth的四种方式,包括 传统AOP、拦截器、参数解析器和过滤器,并提供了对应的实例代码,最后简单总结了下他们的执行顺序。 前言 最近一直被无尽的业务需求淹没,没时间喘息,终于接到一个能让我突破代码舒适区的活儿,解决它的过程非常曲折,一度让我怀疑人生,不过收获也很大,代码方面不明显,但感觉自己抹掉了 java、Tomcat、Spring...
阅读全文当我们使用Spring Initializrhttps://blog.didispace.com/spring-initializr-in-intellij/来创建Spring Boot工程的时候,有没有发现在工程根目录下有两个名为mvnw的文件: !https://blog.didispace.com/images/pasted-421.png...
阅读全文最近有幸试用了一下阿里云的一个新产品:云开发平台,体验一把全新的开发模式!虽然中间也碰到了一些问题,但整体的体验透露着未来感,因为整个过程都不需要使用我们最常用的IDEA,仅依靠浏览器就把一个Spring Boot干上线了! > 啥是云开发平台?云开发平台(https://workbench.aliyun.comhttps://workbench.aliyun.com),是阿里云面向广大开发者提供...
阅读全文Spring MVC执行流程已是JAVA面试中老生常谈的问题,相信各位小伙伴也是信手拈来。今天我们来谈谈另一个面试中必会必知的问题: @RestController和@Controller的区别? - Spring MVC中的REST实现 - @Controller + @ResponseBody注解 - @RestController注解 Spring MVC 与 REST...
阅读全文