
Spring全家桶
文章平均质量分 87
Spring,SpringMVC,Spirng data,Spring Security,Spring Validation
李少谦
22届毕业、软件工程、Java、写代码、独立思考
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SpringMVC 注解驱动开发(三)Rest风格URL请求相关注解与跨域注解
SpringMVC 注解驱动开发(三)Rest风格URL请求相关注解与跨域注解Rest风格URL请求相关注解@PathVariable跨域访问@CrossOriginRest风格URL请求相关注解@PathVariable跨域访问@CrossOrigin原创 2021-07-31 15:48:44 · 404 阅读 · 1 评论 -
【SpringMVC注解篇】SpringMVC 注解驱动开发(二)JSON数据交互相关注解
SpringMVC 注解驱动开发(二)JSON数据交互相关注解JSON数据交互相关注解@RequestBody@ResponseBody@RestControllerAdviceJSON数据交互相关注解@RequestBody@ResponseBody@RestControllerAdvice原创 2021-07-31 15:38:28 · 535 阅读 · 0 评论 -
【SpringMVC注解篇】SpringMVC 注解驱动开发(一)基础注解
基础注解@Controller@RequestMapping@RequestParam@InitBinder@ControllerAdvice@ExceptionHandler@RequestHeader@CookieValue@ModelAttribute@SessionAttribute和@SessionAttributes原创 2021-07-31 15:13:48 · 1079 阅读 · 0 评论 -
Spring-IoC-注解篇
Spring-IoC-注解篇注解驱动开发常用注解@Configuration示例@ComponentScan示例@Bean示例@Import示例@PropertySource说明示例注解驱动开发之注入时机和设定注入条件的注解@DependsOn示例@Lazy示例@Conditional说明示例用于创建对象的注解@Component和三个衍生注解说明用于注入数据的注解@Autowired说明@Qualifier说明@Resource说明@Value说明@Inject@Primary和生命周期以及作用范围相关的原创 2021-07-31 11:13:37 · 1329 阅读 · 0 评论 -
Servlet3.0无web.xml,全注解配置
Servlet3.0无web.xml,全注解配置项目结构创建项目pomSpring容器配置servletContext配置加载 Spring容器测试login.jspcontroller配置tomcat访问测试成功项目结构创建项目pom<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>原创 2021-07-26 07:51:11 · 994 阅读 · 1 评论 -
【SpringMVC应用篇】SpringMVC 参数解析器
参数解析器属于spring-web包中提供的组件,springmvc框架中对应提供了很多参数解析器。@PostMapping("/save") //此处request对象就是通过Springmvc提供的参数解析器帮我们注入的 public String saveUser(HttpServletRequest request) {} }在上面的saveUser方法中,我们声明了一个类型为的参数,这个对象就是通过springmvc提供的这个参数解析器帮我们注入的。原创 2022-12-29 22:10:28 · 551 阅读 · 0 评论 -
【SpringMVC应用篇】SpringMVC请求参数接收处理
2、Post方式的Body请求体传参。原创 2022-07-21 12:02:21 · 3616 阅读 · 0 评论 -
SpringMVC 使用ResponseEntity封装结果集进行文件下载
SpringMVC 使用ResponseEntity封装结果集进行文件下载Spring 提供关于http请求相关的类ResponseEntityHttpHeadersHttpMethodHttpStatusMediaType@RestControllerpublic class TestController { @GetMapping("/download") public ResponseEntity download() { ClassPathResource cl原创 2022-03-08 10:44:05 · 848 阅读 · 0 评论 -
【SpringBoot应用篇】Spring中ApplicationContextAware接口的作用
ApplicationContextAware类当一个类实现了这个接口(ApplicationContextAware)之后,这个类就可以方便获得ApplicationContext中的所有 bean。换句话说,就是这个类可以直接获取 Spring 配置文件中,所有有引用到的 Bean 对象。在某些特殊的场景下,Bean需要实现某个功能,但该功能必须借助于Spring容器中的其他Bean才能实现,此时就必须让该Bean先获取Spring容器,然后借助于Spring容器实现该功能。为了让Bean获取它所在原创 2022-02-24 14:21:06 · 841 阅读 · 0 评论 -
Spring使用自带的定时任务,基于注解和xml配置
Spring使用自带的定时任务,基于注解和xml配置基于xml方式pomlog4j.propertiesScheduleXmlTestspring-core.xml启动容器基于注解方式基于xml方式pom<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5原创 2021-12-10 09:13:55 · 1130 阅读 · 0 评论 -
Spring 整合 Mybatis
Spring 整合 MybatisPOM创建 MyBatis 配置文件Spring 集成 MyBatisPOM在pom.xml文件中增加 MyBatis 相关依赖:<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version></dependency原创 2021-12-02 15:04:32 · 150 阅读 · 0 评论 -
SpringMVC 执行过程原理(请求映射原理、参数处理原理、返回值处理器)
Spring MVC 请求映射原理和参数处理原理请求映射原理参数处理原理执行目标方法参数解析器HandlerMethodArgumentResolver返回值处理器目标方法执行完成处理派发结果请求映射原理SpringMVC功能分析都从 org.springframework.web.servlet.DispatcherServlet-》doDispatch()方法handlerMappings: 中保存了5个具体处理器映射器请求进来getHandler()方法中,挨个尝试遍历所有的handler原创 2021-08-10 13:48:24 · 603 阅读 · 0 评论 -
【SpringBoot应用篇】【AOP+注解】SpringBoot使用Aspect AOP注解实现日志管理
SpringBoot使用Aspect AOP注解实现日志管理(二)项目结构pomcommonpomannotationenumsresultservicesqlpomapplication.ymlentitymapper启动类aspectcontroller测试查看项目结构使用maven聚合工程进行项目开发,实际工作中经常以这种形式开发。pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.a原创 2021-07-29 14:39:14 · 268 阅读 · 0 评论 -
【SpringBoot应用篇】SpringBoot集成Aspect AOP面向切面编程
SpringBoot使用AOP实现日志管理回顾回顾原创 2021-07-29 11:52:32 · 1608 阅读 · 0 评论 -
OAuth2.0介绍
OAuth2.0介绍OAuth2.0介绍模拟应用场景OAauth2.0包括以下角色客户端资源拥有者授权服务器资源服务器OAuth2.0介绍OAuth(开放授权)是一个开放标准,允许用户授权第三方应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方应用或分享他们数据的所有内容。OAuth2.0是OAuth协议的延续版本,但不向后兼容OAuth 1.0即完全废止了OAuth1.0。很多大公司如Google,Yahoo,Microsoft等都提供了OAUTH认证服 务,这些都足以说明原创 2021-07-28 11:06:44 · 1263 阅读 · 0 评论 -
Spring Cloud Security OAuth2(六)
Spring Cloud Security OAuth2(六)JWT令牌JWT介绍什么是JWT?JWT令牌结构配置JWT令牌服务生成jwt令牌校验jwt令牌测试数据库中读取客户端信息配置授权服务JWT令牌JWT介绍当资源服务和授权服务不在一起时资源服务使用RemoteTokenServices 远程请求授权服务验证token,如果访问量较大将会影响系统的性能 。解决上边问题:令牌采用JWT格式即可解决上边的问题,用户认证通过会得到一个JWT令牌,JWT令牌中已经包括了用户相关的信 息,客户端只需要原创 2021-07-28 14:58:18 · 331 阅读 · 0 评论 -
Spring Cloud Security OAuth2(五)
Spring Cloud Security OAuth2(五)开篇描述父工程创建UAA授权服务工程创建Order资源服务工程授权服务器配置EnableAuthorizationServer配置客户端详细信息ClientDetailsServiceConfigurer管理令牌令牌访问端点配置配置授权类型(Grant Types)配置授权端点的URL(Endpoint URLs)令牌端点的安全约束web安全配置授权模式授权码模式测试简化模式测试密码模式测试客户端模式测试资源服务测试资源服务器配置验证token编原创 2021-07-28 14:20:35 · 407 阅读 · 0 评论 -
【SpringBoot高级篇】SpringSecurity授权 (四)
SpringSecurity授权 (四)授权方式准备数据web授权entitymapper修改UserServiceImpl类controller修改安全配置类WebSecurityConfig测试张三登录李四登录方法授权启用Secured注解的支持启用prePost注解的支持授权方式授权的方式包括 web授权和方法授权,web授权是通过url拦截进行授权,方法授权是通过 方法拦截进行授权。他们都会调用accessDecisionManager进行授权决策,若为web授权则拦截器为FilterSecur原创 2021-07-27 08:31:27 · 828 阅读 · 0 评论 -
【SpringBoot高级篇】SpringSecurity认证 (三)
SpringSecurity认证(三)工作原理认证方式内存用户信息认证PasswordEncoder连接数据库用户信息认证创建数据库pomapplication.ymlentitymapperservice使用BCryptPasswordEncoder测试工作原理Spring Security所解决的问题就是安全访问控制,而安全访问控制功能其实就是对所有进入系统的请求进行拦截, 校验每个请求是否能够访问它所期望的资源。根据前边知识的学习,可以通过Filter或AOP等技术来实现,Spring Secur原创 2021-07-26 13:53:36 · 555 阅读 · 0 评论 -
【SpringBoot新手篇】SpringBoot集成SpringSecurity前后端分离开发
SpringBoot整合SpringSecurity前后端分离开发1. 安全简介2. 认识SpringSecurity“认证”(Authentication)“授权” (Authorization)3.SpringBoot整合Security认证和授权权限控制和注销记住我定制登录页完整配置代码4. 前后端分离开发pomapplication.yml业务层实现UserDetailsServiceSecurityConfig1. 安全简介在Web 开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功原创 2021-04-16 19:57:18 · 1392 阅读 · 1 评论 -
【SpringBoot高级篇】Spring Boot整合SpringSecurity(二)
Spring Boot整合SpringSecurity(二)创建项目创建maven工程Spring 容器配置Spring Boot配置文件Spring Boot 启动类Servlet Context配置安全配置LoginController测试测试认证(登录)测试退出测试授权Spring Boot是一套Spring的快速开发框架,基于Spring 4.0设计,使用Spring Boot开发可以避免一些繁琐的工程搭建和配置,同时它集成了大量的常用框架,快速导入依赖包,避免依赖包的冲突。创建项目创建m原创 2021-07-26 07:52:29 · 428 阅读 · 1 评论 -
Spring整合SpringSecurity(一)
SpringBoot整合SpringSecurity(一)创建项目pomcontrller创建项目pom<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <depen原创 2021-07-22 14:49:42 · 1768 阅读 · 3 评论 -
授权的数据模型( RBAC)
Who,即主体(Subject),主体一般是指用户,也可以是程序,需要访问系统中的资源。 What,即资源 (Resource),如系统菜单、页面、按钮、代码方法、系统商品信息、系统订单信息等。系统菜单、页面、按 钮、代码方法都属于系统功能资源,对于web系统每个功能资源通常对应一个URL;系统商品信息、系统订单信息 都属于实体资源(数据资源),实体资源由资源类型和资源实例组成,比如商品信息为资源类型,商品编号 为001 的商品为资源实例。 How,权限/许可(Permission),规定了用户对资源的操作原创 2021-07-23 09:19:13 · 1628 阅读 · 0 评论 -
Maven聚合方式整合SSM(Spring MVC+Spring+Mybatis)
Maven聚合方式整合SSM1. 父工程父工程依赖2. 基于Maven的Mybaits逆向工程pom.xmlgeneratorConfig.xml执行逆向生成操作的Maven命令逆向工程生成的资源各归各位2. Spring整合Mybaitsatcrowdfunding02-admin-webuipom.xmljdbc.propertiesmybatis-config.xmlspring-persist-mybatis.xmlatcrowdfunding03-admin-componentpom.xml测试数原创 2021-05-26 13:32:22 · 457 阅读 · 0 评论 -
【SpringMVC应用篇】Spring Validation 参数校验
Spring Validation1. Spring ValidationJSR-303 简介2. JSR-303 基本的校验规则2.1空检查2.2 布尔检查2.3 长度检查2.4 日期检查2.5 正则检查2.6 数值检查2.7 对象校验3 使用 Spring Validation 验证POM实体类参数校验UsercontrollerservicePostMan测试响应数据全局处理异常表单传参校验单个参数校验1. Spring ValidationJSR-303 简介JSR-303 是 JavaEE原创 2021-07-30 15:36:59 · 2593 阅读 · 0 评论 -
Jackson的使用
Jackson的使用Jackson 简介Jackson 特点Jackson 注解@JsonProperty@JsonIgnore@JsonIgnoreProperties@JsonIgnoreType@JsonPropertyOrder@JsonRootNameJackson 使用实例对象的序列化与反序列化集合的序列化与反序列化Jackson详细使用Jackson 简介Jackson 是一个简单基于 Java 应用库,Jackson 可以轻松的将 Java 对象转换成 json 对象和 xml 文原创 2021-07-20 15:31:50 · 5365 阅读 · 0 评论 -
【SpringMVC应用篇】SpringMVC自定义异常处理
Spring MVC自定义异常处理统一异常处理定义异常类对象controller中测试@ControllerAdvice,是Spring3.2提供的新注解,它是一个Controller增强器,可对controller中被 @RequestMapping注解的方法加一些逻辑处理。最常用的就是异常处理@ModelAttribute和@ExceptionHandler,前者可以往请求的Model里加数据,后者可以接受请求处理方法抛出的异常。但是他们放在控制器(Controller)里的时候,作用范围是有限的,原创 2021-07-26 08:32:25 · 1442 阅读 · 0 评论 -
SpringMVC 表单标签库
Spring MVC 表单标签库声明表单标签库表单标签文本框密码框文本域复选框复选框(多选)单选按钮单选按钮(多选)下拉列表下拉列表(多选)隐藏字段域声明表单标签库在使用 SpringMVC 的时候我们可以使用 Spring 封装的一系列表单标签,这些标签都可以访问到ModelMap 中的内容。我们需要先在 JSP 中声明使用的标签,具体做法是在 JSP 文件的顶部加入以下指令:<%@ taglib prefix="form" uri="http://www.springframework.or原创 2021-07-27 08:32:33 · 1122 阅读 · 0 评论 -
Spring 整和 SpringMVC
POM在pom.xml 配置文件中增加 org.springframework:spring-webmvc 依赖<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.3.17.RELEASE</version></dependency>原创 2021-07-22 17:28:26 · 110 阅读 · 0 评论 -
【SpringMVC应用篇】SpringMVC 拦截器的使用(三)
SpringMVC 拦截器的使用拦截器简介常见应用场景第一个 Spring MVC 拦截器创建登录拦截器拦截器简介Spring Web MVC 的处理器拦截器,类似于 Servlet 开发中的过滤器 Filter,用于对处理器进行预处理和后处理。常见应用场景日志记录:记录请求信息的日志,以便进行信息监控、信息统计、计算 PV(Page View)等权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直接返回到登录页面性能监控:有时候系统在某段时间莫名其妙的慢,可以通过拦截器在进原创 2021-07-22 17:27:34 · 483 阅读 · 0 评论 -
【SpringMVC注解篇】SpringMVC常用注解(二)
Spring MVC常用注解Spring MVC常用注解@Controller@RequestMapping@Resource和@Autowired@PathVariable@CookieValue@RequestParam@SessionAttributes@ModelAttribute例子@ResponseBody作用使用时机处理自定义类型Spring MVC常用注解@Controller@Controller 用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对原创 2021-07-22 17:26:58 · 281 阅读 · 0 评论 -
【SpringMVC入门篇】SpringMVC 入门使用 (一)
SpringMVC 简介概述DispatcherServlet(分发) 组件类概述Spring MVC 也叫 Spring Web MVC ,属于展示层框架。SpringMVC 是 Spring 框架的一部分。Spring Web MVC 框架提供了 MVC (模型 - 视图 - 控制器) 架构和用于开发灵活和松散耦合的 Web 应用程序的组件。 MVC 模式导致应用程序的不同方面(输入逻辑,业务逻辑和 UI 逻辑)分离,同时提供这些元素之间的松散耦合。模型 (Model):封装了应用程序数据,通原创 2021-05-26 10:54:59 · 340 阅读 · 0 评论 -
使用 AspectJ 的 AOP 配置管理事务(三)
使用 AspectJ 的 AOP 配置管理事务1. 概述2. 创建测试项目3. 创建实体类3.1 TbContentCategory3.2 TbContent4. 创建数据访问层4.1 TbContentCategoryDao4.2 TbContentDao5. 创建业务逻辑层5.1 TbContentCategoryService5.2 TbContentService4. 创建 Spring 配置4.1 spring-context.xml4.2 spring-context-druid.xml4.3原创 2021-05-26 10:43:20 · 461 阅读 · 3 评论 -
@Transactional注解管理事务和Spring手动提交事务(二)
使用 Spring 注解管理事务概述@Transactional 注解简介使用 @Transaction 注解概述通过 @Transactional 注解方式,也可将事务织入到相应方法中。而使用注解方式,只需在配置文件中加入一个 tx 标签,以告诉 Spring 使用注解来完成事务的织入。该标签只需指定一个属性,事务管理器。<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.or原创 2021-05-26 10:46:08 · 9613 阅读 · 0 评论 -
Spring 事务管理简介(一)
Spring 事务管理简介概述Spring 事务管理 API事务管理器接口常用的两个实现类Spring 的回滚方式事务定义接口事务的四种隔离级别事务的七种传播行为概述事务原本是数据库中的概念,用于数据访问层。但一般情况下,需要将事务提升到业务层,即 Service 层。这样做是为了能够使用事务的特性来管理具体的业务。在 Spring 中通常可以通过以下三种方式来实现对事务的管理:使用 Spring 的事务代理工厂管理事务(已过时)使用 Spring 的事务注解管理事务使用 AspectJ 的原创 2021-05-26 10:30:38 · 395 阅读 · 0 评论 -
Spring-AOP
Spring-AOP1. 什么是AOP2. AOP使用场景3. Spring AOP底层技术3.1 动态代理3.2 CGLIB代理4. AOP相关概念5. 几种实现方式5.1 准备工作5.1.1 定义一个接口5.1.2 实现类5.1.3 增强类6. 基于代理的AOP7. 纯简单java对象切面8. @Aspect注解形式9. 注入形式的Aspcet切面1. 什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),它利用一种称为“横切”的技术,剖解开封装的对象内部,并将那原创 2021-05-26 10:28:06 · 161 阅读 · 0 评论 -
Spring-IoC和DI
Spring-IoC1. 概述2. 第一个 Spring 应用程序2.1 POM2.2 创建接口与实现2.2.1 创建 UserService 接口2.2.2 创建 UserServiceImpl 实现2.3 创建 Spring 配置文件2.4 测试 Spring IoC1. 概述控制反转(IoC,Inversion of Control),是一个概念,是一种思想。指将传统上由程序代码直接操控的对象调用权交给容器,通过容器来实现对象的装配和管理。控制反转就是对对象控制权的转移,从程序代码本身反转到了外部原创 2021-05-26 10:21:51 · 193 阅读 · 0 评论 -
Spring 简介(一)
Spring 简介1. Spring 简介2. Spring 体系结构3. Spring 的特点3.1 非侵入式3.2 容器3.3 IoC3.4 AOP1. Spring 简介Spring 的主要作用就是为代码“解耦”,降低代码间的耦合度。根据功能的不同,可以将一个系统中的代码分为 主业务逻辑 与 系统级业务逻辑 两类。它们各自具有鲜明的特点:主业务代码间逻辑联系紧密,有具体的专业业务应用场景,复用性相对较低;系统级业务相对功能独立,没有具体的专业业务应用场景,主要是为主业务提供系统级服务,如日志、安原创 2021-05-26 10:19:28 · 187 阅读 · 0 评论