简单的说,就是当Spring容器扫描到某个接口的多个 bean 时,如果某个bean上加了@Primary 注解 ,则这个bean会被优先选用,如下面的例子: @Component public class FooService { private FooRepository fooReposito ...
分类:
编程语言 时间:
2020-09-17 12:09:14
阅读次数:
29
1.前言统一的异常处理对于应用的重要性不言而喻。今天我们来介绍一下Spring如何来进行统一的Rest异常处理。同时我们也会简单比较一下它们之间的优劣。2.@Controller结合@ExceptionHandler在控制器中声明一个方法然后用@ExceptionHandler注解标记即可:@Controller@RequestMapping("/test")publicclassTestCont
分类:
编程语言 时间:
2020-09-16 12:41:29
阅读次数:
55
1.前言欢迎阅读SpringSecurity实战干货系列文章。截止到上一篇我们已经能够简单做到用户主体认证到接口的访问控制了,但是依然满足不了实际生产的需要。如果我们需要一个完整的权限管理系统就必须了解一下RBAC(Role-BasedAccessControl基于角色的访问控制)的权限控制模型。2.为什么需要RBAC?在正式讨论RBAC模型之前,我们要思考一个问题,为什么我们要做角色权限系统?答
分类:
编程语言 时间:
2020-09-16 12:40:54
阅读次数:
52
auto-logauto-log是一款为java设计的自动日志监控框架。创作目的经常会写一些工具,有时候手动加一些日志很麻烦,引入spring又过于大材小用。所以希望从从简到繁实现一个工具,便于平时使用。特性基于注解+字节码,配置灵活自动适配常见的日志框架支持编程式的调用支持注解式,完美整合spring支持整合spring-boot支持慢日志阈值指定,耗时,入参,出参,异常信息等常见属性指定变更日
分类:
编程语言 时间:
2020-09-16 12:40:37
阅读次数:
43
1.前言欢迎阅读SpringSecurity实战干货系列。点击原文阅读进入系列。之前我讲解了如何编写一个自己的Jwt生成器以及如何在用户认证通过后返回JsonWebToken。今天我们来看看如何在请求中使用Jwt访问鉴权。DEMO获取方法在文末。2.常用的Http认证方式我们要在Http请求中使用Jwt我们就必须了解常见的Http认证方式。2.1HTTPBasicAuthenticationHTT
分类:
编程语言 时间:
2020-09-16 12:40:03
阅读次数:
38
1.前言最近实在比较忙,很难抽出时间来继续更SpringSecurity实战干货系列。今天正好项目中SpringSecurity需要对认证授权异常的处理,就分享出来吧。2.SpringSecurity中的异常SpringSecurity中的异常主要分为两大类:一类是认证异常,另一类是授权相关的异常。2.1AuthenticationExceptionAuthenticationException是
分类:
编程语言 时间:
2020-09-16 12:39:51
阅读次数:
46
首先创建一个接口 UserDao 然后创建一个实现类 UserDaoImpl 当我们需要对已有的接口进行增强时,我们就可以使用Proxy,创建接口的代理对象 对于Proxy类的newProxyInstance方法的第三个参数,可以使用匿名内部类,如上。也可以通过创建实现InvocationHandl ...
分类:
编程语言 时间:
2020-09-16 12:17:25
阅读次数:
43
这个暑假,过得感觉非常漫长。假期里制定了一些学习计划,看一些书,都在有条不紊的进行着。在这期间,帮助一些刚入门的小伙伴如何踏入程序员职业生涯,也和一些老程序员聊聊程序员的职业规划,其实也不只是针对程序员,对刚开始学编程的小伙伴也是一样的,总的来说心里有一些体会,还是蛮有感触的。 有一个小伙伴小Z问我 ...
分类:
其他好文 时间:
2020-09-16 12:04:28
阅读次数:
24
1.Spring大杂烩 别忘了,对于MVC中的所有bean,我们都要将其放到Spring的IOC容器当中去。 2.SpringMVC的作用 3.简单使用 首先配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http:/ ...
分类:
编程语言 时间:
2020-09-15 21:25:06
阅读次数:
54
spring: datasource: #driver-class-name: com.mysql.cj.jdbc.Driver #驱动注释,采用默认的方式 url: jdbc:mysql://127.0.0.1:3306/jtdb?serverTimezone=GMT%2B8&useUnicode ...
分类:
数据库 时间:
2020-09-15 21:22:39
阅读次数:
55