Spring全家桶及相关框架
文章平均质量分 92
SSM、Mybatis、SpringBoot、Redis、Docker、Linux
柚几哥哥
用科技让复杂的世界更简单
展开
-
SpringBoot整合阿里云短信服务
要在Spring Boot项目中整合阿里云短信服务,你需要遵循以下步骤:1. 准备工作注册阿里云账号:首先确保你有一个阿里云账号,并且已经开通了短信服务。获取AccessKey ID和AccessKey Secret:在阿里云控制台的安全管理页面创建AccessKey,这是访问阿里云API的凭证。申请短信签名和模板:在阿里云短信服务控制台申请短信签名和短信模板,签名用于标识发送者的身份,模板用于定义短信内容,需要审核通过才能使用。原创 2024-06-11 17:41:36 · 1211 阅读 · 1 评论 -
AOP实现自定义滑动窗口限流
滑动窗口算法是一种广泛应用于计算机科学和数据分析中的数据流算法,特别适用于处理具有时间序列特性的数据,如网络流量监控、速率限制、数据分析等领域。其核心思想是在一个固定大小的“窗口”内对数据进行统计分析,这个窗口会随着数据的流入而向前滑动,始终保持最新一段时间内的数据统计。要实现AOP结合滑动窗口算法来实现自定义规则的限流,我们可以在原有的基础上进一步扩展,以支持更灵活的配置和更复杂的规则。原创 2024-06-11 09:57:53 · 1120 阅读 · 0 评论 -
SpringAOP 常见应用场景
常见应用场景:日志记录、权限检查、事务管理、异常处理、性能监控、缓存、参数校验和转换、API调用统计、SLF4J、Logback、Log4j等日志框架集成、自定义注解的处理。1、AOP实现 性能监控;2、AOP实现 API调用统计;3、AOP实现 缓存;4、AOP实现自定义滑动窗口限流原创 2024-06-08 13:54:29 · 1815 阅读 · 1 评论 -
SpringBoot 参数验证的几种方式
1、为什么要进行参数验证?数据完整性与准确性、安全防护、性能优化、用户体验、代码可维护性、遵循最佳实践、减少异常处理、合规性2、验证方式:if 语句判断、Assert、Validator、自定义验证注解原创 2024-06-03 14:47:48 · 2685 阅读 · 0 评论 -
SpringCloud Alibaba微服务分布式架构组件演变
SpringCloud Alibaba:1、服务注册中心:Eureka、Zookeeper、Consul、Nacos;2、服务调用:Ribbon、LoadBalancer、Feign、OpenFeign;3、服务降级:Hystrix、Resilience4j、Sentinel;4、服务网关:Zuul、Gateway;5、服务配置:Config、Nacos;6、服务总线:Bus、Nacos;6、分布式事务解决方案:seata原创 2023-07-12 14:23:10 · 1813 阅读 · 0 评论 -
Spring 面试题总结(2023最新版)
Spring的理解,Spring的AOP理解,Spring的IOC的理解,Autowired和Resource的区别,Spring常用注解,SpringMVC常用注解,循环依赖,Spring Bean的生命周期,Spring支持几种作用域,Spring事务的隔离级别,Spring中的事务传播属性,Spring中事务实现方式,事务的本质,@Transactional的使用,SpringMVC的理解,Bootstrap.yml的作用,@Indexed注解,Spring的AOP理解,容器的启动流程,注解的原理原创 2023-05-06 14:54:21 · 2888 阅读 · 1 评论 -
MyBatis 源码解析 面试题总结
MyBatis1、工作原理2、MyBatis的缓存3、缓存扩展4、设计模式5、SqlSessionFactory的理解6、SqlSession的理解7、对MyBatis的理解8、分页的理解9、插件原理10、不同Mapper中的id是否可以相同?11、架构设计的理解12、传统JDBC开发13的不足13、数据源模块的设计14、事务模块的设计15、Mapper接口的设计理解16、Reflector模块的理解17、类型转换模块18、spring/SpringBoot整合MyBatis原创 2023-03-31 17:43:25 · 1069 阅读 · 0 评论 -
EasyExcel快速上手
*所有Excle导入都需要用统一的模板进行数据导入,且我们在程序中也需要对于导入Excle文件的格式和内容规范进行校验,同时我们还可以再导入业务逻辑中加入生成导入日志的功能,方便使用者尽快得知提交的文件中具体哪个位置的内容填写不规范,也可以使后台维护的工作人员能及时发现恶意的导入行为**思路:1、将Excle文件中我们需要的数据转换成对应的模板类泛型的Lsit集合。3、在校验的同时记录校验的过程,生成导入日志,插入日志表。(3)编写数据插入以及生成导入日志的业务层方法。(2)封装具体的数据排查业务逻辑。原创 2022-10-14 14:50:30 · 3034 阅读 · 1 评论 -
XSS攻击和跨站脚本安全漏洞防护
存储型XSS可以持续攻击用户,在用户提交了包含XSS代码的数据存储到数据库后,每当用户在浏览网页查询对应数据库中的数据时,那些包含XSS代码的数据就会在服务器解析并加载,当浏览器读到XSS代码后,会当做正常的HTML和JS解析并执行,于是发生存储型XSS攻击。**例如**:下面JSP代码片段的功能是根据一个已知用户雇员ID(id)从数据库中查询出该用户的地址,并显示在JSP页面上。如果address的值是由用户提供的,且存入数据库时没有进行合理的校验,那么攻击者就可以利用上面的代码进行存储型XSS攻击。原创 2022-09-05 16:28:32 · 3921 阅读 · 4 评论 -
Java框架面试题
什么是VSC版本控制系统,是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。常用vscCvs、svn、git集中式和分布式的区别集中式:必须有一台电脑作为服务器,每台电脑都把代码提交到服务器上,再从服务器下载代码。如果网络出现问题或服务器宕机,系统就不能使用了。分布式:分布式VCS没有中央服务器,每台电脑都可以保存代码版本,没有网络的时候可以先提交到本地,每台电脑也都可以作为服务器,其他电脑可以从作为服务器的电脑上克隆代码,可见分布式系统比集中式系统的安全性高很多。.原创 2021-12-29 18:58:59 · 659 阅读 · 2 评论 -
SpringBoot OA自动化办公系统
OA办公自动化系统http://121.40.112.207:8081/oa自动化办公系统源码及需求文档https://download.csdn.net/download/Zyw907155124/647415491、产品介绍 OA系统是将现代办公和计算机网络的功能相结合的一中新型办公方式,是针对日常工作,改变传统手工办公效率低下现状的一种变革。omation的简称。OFFIC : AUTOMATION的缩写,本意为利用技术的手段提高办公的效率,进而实现办公的自动化...原创 2021-12-16 15:18:43 · 4774 阅读 · 5 评论 -
SpringBoot 应用
1. SpringBoot视图技术1.1 支持的视图技术前端模板引擎技术的出现,使前端开发人员无需关注后端业务的具体实现,只关注自己页面的呈现效果即可,并且解决了前端代码错综复杂的问题、实现了前后端分离开发。Spring Boot框架对很多常用的模板引擎技术(如:FreeMarker、Thymeleaf、Mustache等)提供了整合支持Spring Boot不太支持常用的JSP模板,并且没有提供对应的整合配置,这是因为使用嵌入式Servlet容器的Spring Boot应用程序对于JSP模板存原创 2021-11-09 16:03:45 · 1794 阅读 · 1 评论 -
SpringBoot & Security
前言Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架。提供了完善的认证机制和方法级的授权功能。是一款非常优秀的权限管理框架。它的核心是一组过滤器链,不同的功能经由不同的过滤器。这篇文章就是想通过一个小案例将Spring Security整合到SpringBoot中去。要实现的功能就是在认证服务器上登录,然后获取Token,再访问资源服务器中的资源。一、准备工作1、统一错误码枚举/** * @Author: * @Description: 返.原创 2021-11-09 15:50:20 · 480 阅读 · 1 评论 -
SpringBoot 原理
1. SpringBoot原理深入及源码剖析传统的Spring框架实现一个Web服务,需要导入各种依赖JAR包,然后编写对应的XML配置文件等,相较而言,Spring Boot显得更加方便、快捷和高效。那么,Spring Boot究竟如何做到这些的呢?接下来分别针对Spring Boot框架的依赖管理、自动配置通过源码进行深入分析1.1 依赖管理问题:(1)为什么导入dependency时不需要指定版本?在Spring Boot入门程序中,项目pom.xml文件有两个核心依赖,分别是原创 2021-11-05 09:47:41 · 288 阅读 · 0 评论 -
SpringBoot 入门
1. SpringBoot基本应用1.1 约定优于配置 Build Anything with Spring Boot:Spring Boot is the starting point for building all Spring-based applications. Spring Boot is designed to get you up and running as quickly as possible, with minimal upfront configuration of.原创 2021-11-03 16:45:17 · 653 阅读 · 0 评论 -
SSM 整合
1、SSM整合1.1 概述在进行企业级项目开发时,我们需要将Spring、SpringMVC、MyBatis框架整合起来,共同完成开发工作。SSM分工: Spring 作为基础框架,整合其他框架 SpringMVC 作为Web开发框架,提供服务器开发支持 MyBatis 作为ORM框架,提供数据库开发支持 1.2 整合配置1、添加依赖<dependency> <groupId>mysql&l...原创 2021-11-01 09:03:24 · 3821 阅读 · 2 评论 -
MyBatis
1、MyBatis简介1.1 简介MyBatis是目前主流的ORM框架MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。1.2 什么是ORM对象关系映射(Object Relational M原创 2021-10-29 16:35:39 · 278 阅读 · 0 评论 -
SpringMVC
1、SpringMVC概述1.1 回顾MVC设计模式1.1.1 MVC的概念一种Web和桌面应用主流的设计模式M(Model模型)负责数据访问、业务逻辑(dao、service、entity)V(View视图)负责和用户交互、展示数据(页面)C(Controller控制器)负责调用模型、更新视图(servlet-->Controller)作用:解耦,便于开发和维护1.1.2 MVC的执行流程1)用户来访问视图,如:在商品页面点击查看商品的详情..原创 2021-10-29 16:15:58 · 604 阅读 · 0 评论 -
SpringAOP
1、AOP简介1.1 AOP基本概念AOP(Aspect Oriented Programming)面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容。1.2 AOP的作用AOP的核心作用是:在程序运行期间,不修改代码的同时为程序增强功能。将必不可少的公共功能做成切面,随着程序运行切入到代码中运行。编写业务时只关注于核心功能 ,不再考虑事务、日志等公共功能,减轻了编码负担,更专注于原创 2021-10-29 15:56:19 · 86 阅读 · 0 评论 -
AOP 代理模式
1、AOP的实现原理1.1 问题在前面AOP的案例中,为什么将一个对象加入到IOC容器后,取出该对象后,发现它的方法多了一些功能?1.2 AOP的实现原理打印对象的getClass方法,发现原类名的后面多了些东西:原因是:如果该类被AOP切中,从IOC容器取出的对象,不是该类的对象,而是该类代理类的对象。AOP的实现流程:1) 当调用容器的getBean方法后,Spring查找对象后会判断该对象的方法是否被某个切面切中2) 如果没有切中,就创建原有类的对象..原创 2021-10-29 15:53:03 · 413 阅读 · 0 评论 -
SpringIOC
1、Spring框架简介1.1 Spring基本概念Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 轻量——从大小与开销两方面而言Spring都是轻量的。原创 2021-10-29 15:39:35 · 311 阅读 · 1 评论