跳至主要內容
spring boot常用注解

@PathVariable

@PathVariable 映射 URL 绑定的占位符

带占位符的URL是Spring3.0的新特性,该功能在SpringMVC向REST目标挺进发展过程中具有里程碑的意义 通过@PathVariable可以将URL中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过@PathVariable("xxx") 绑定到操作方法的入参中。

@RequestMapping("/test/{id}")
    public String test(@PathVariable("id") Integer testId)
    {
        return "sucess";
    }

BlueCitizen...大约 2 分钟开发JavaSpring
Spring容器之IoC控制反转

控制反转 IoC Inversion of Control

IoC属于面向对象编程的设计原则,其目的是降低代码间的耦合度。

最常见的IoC方式是依赖注入DI(Dependency Injection)。还有一种叫做依赖查找Dependency Lookup。以DI为例,IoC是如何体现解耦的呢?

“通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。”百度百科-控制反转


BlueCitizen...大约 4 分钟开发JavaSpring
屏蔽默认重定向登录(实现AuthenticationEntryPoint接口)

默认配置下Spring Security会保护所有资源接口,匿名用户将被强制转发到login接口。有时我们并不需要使用默认的登录接口,尤其需要实现前后端分离时。

1、实现AuthenticationEntryPoint接口

/**
 * @Author: BlueCitizens
 * @Date: 2021/3/13 22:04
 * @Description: AuthenticationEntryPoint处理匿名用户访问无权限资源时的异常(未登录,登录状态过期失效等)
 */
@Component
@Slf4j
public class AuthenticationEntryPointImpl implements AuthenticationEntryPoint, Serializable {
    @Override
    public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException e) throws IOException, ServletException {
        log.error("Unauthorized access: \ncurrent IP:{}\nrequest URI :{}\n", IpUtils.getIpAddr(request), request.getRequestURI());
        String msg = StringUtils.format("Unauthorized access:{},Authentication failed, unable to access system resources ", request.getRequestURI());
        ServletUtils.renderString(response, JSON.toJSONString(AjaxResult.error(HttpStatus.UNAUTHORIZED, msg)));
    }
}

BlueCitizen...小于 1 分钟开发JavaSpring
Spring Security配置之loginPage和loginrPocessingUrl

spring security配置configure方法下有一项是formLogin,通过此项来配置表单登录/登出。项目中通常会用自定义的登陆页面覆盖默认的页面。本文全面分析了loginPage和loginrPocessingUrl之配置。

先抛一个配置的例子:

.formLogin()
    .loginPage("/login")
    .loginProcessingUrl("/form")

BlueCitizen...大约 4 分钟后端JavaSpring