Spring
文章平均质量分 60
jushisi
一点点好奇心,一点点求知欲
展开
-
Spring中的单例Bean与线程安全----总结
为什么spring单例模式可以支持多线程并发访问?spring单例模式指的是在内存中只实例化一个类的对象。确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。当多个用户同时请求一个接口服务的时候,容器会给每一个请求分配一个线程,这时候多个线程会并发执行该请求所对应的业务逻辑。如果该逻辑涉及到对该单例状态(成员变量)的改变,就会有线程安全的问题。Spring使用ThreadLocal来解决线程安全问题,每个线程去执行业务代码的时候,都会去内存申请临时变量,这样就不会涉及变量并发访问冲突的问转载 2021-03-23 21:45:29 · 318 阅读 · 0 评论 -
Spring 事务
一、配置方式spring支持编程式事务管理以及声明式事务管理两种方式。编程式事务:是侵入性事务管理,使用TransactionTemplate或者直接使用PlatformTransactionManager,对于编程式事务管理,spring推荐使用TransactionTemplate。声明式事务:建立在AOP之上,其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,执行完目标方法之后根据执行的情况提交或者回滚,声明式事务最大的优点就是不需要通过编程的方式管理事务(即不需要原创 2021-03-22 11:45:29 · 141 阅读 · 0 评论 -
Spring AOP实现自定义注解
文章目录原创 2021-03-13 12:52:12 · 190 阅读 · 0 评论 -
Spring WebSocket实现消息推送
https://www.cnblogs.com/huangjinyong/p/10901806.html第一步: 添加Spring WebSocket的依赖jar包(注:这里使用maven方式添加 手动添加的同学请自行下载相应jar包放到lib目录)<!-- 使用spring websocket依赖的jar包 --><dependency> <groupId>org.springframework</groupId> <a.转载 2021-02-07 16:11:01 · 404 阅读 · 0 评论 -
@RequestParam,@PathVariable,@PathParam几个获取参数注解的区别
@RequestParam 和 @PathVariable 注解是用于从request中接收请求的,两个都可以接收参数,关键点不同的是@RequestParam 是从request里面拿取值,而 @PathVariable 是从一个URI模板里面来填充@RequestParam我们看下面的一个URL:http://localhost:8080/springmvc/hello/101?param1=10¶m2=20根据上面的这个URL,你可以用这样的方式来进行获取public Str转载 2021-01-08 16:04:07 · 989 阅读 · 1 评论 -
Spring 过滤器、拦截器、AOP的区别
简介在实现一些公共逻辑的时候,很多功能通过过滤器,拦截器,AOP都能实现,但是不同的方式有不同的效率。具体有什么区别,看下文描述。过滤器过滤器拦截的是URLSpring中自定义过滤器(Filter)一般只有一个方法,返回值是void,当请求到达web容器时,会探测当前请求地址是否配置有过滤器,有则调用该过滤器的方法(可能会有多个过滤器),然后才调用真实的业务逻辑,至此过滤器任务完成。过滤器并没有定义业务逻辑执行前、后等,仅仅是请求到达就执行。特别注意:过滤器方法的入参有request,respon转载 2020-09-29 16:25:11 · 146 阅读 · 0 评论 -
Spring体系结构
体系结构核心容器核心容器由spring-core,spring-beans,spring-context,spring-context-support和spring-expression(SpEL,Spring表达式语言,Spring Expression Language)等模块组成,它们的细节如下:spring-core模块提供了框架的基本组成部分,包括 IoC 和依赖注入功能。spring-beans 模块提供 BeanFactory,工厂模式的微妙实现,它移除了编码式单例的需要,并原创 2020-08-05 15:07:45 · 278 阅读 · 0 评论 -
Spring IoC 容器
IoC控制反转是一种思想Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。谁控制谁,控制什么:传统Java SE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象;而IoC是有专门一个容器来创建这些对象,即由Ioc容器来控制对 象的创建;谁控制谁?当然是IoC 容器控制了对象;控制什么?那就是主要控制了外部资源获取(不只是对象包原创 2020-08-05 16:02:11 · 186 阅读 · 0 评论 -
Spring 基于xml配置Bean
参考https://www.w3cschool.cn/wkspring/t7n41mm7.htmlhttps://www.w3cschool.cn/wkspring/vneb1mm9.htmlhttps://www.w3cschool.cn/wkspring/qujn1icm.htmlhttps://www.w3cschool.cn/wkspring/kp5i1ico.htmlhttps://www.w3cschool.cn/wkspring/fwdz1mmb.htmlhttps://www..原创 2020-08-05 17:56:47 · 414 阅读 · 0 评论 -
Spring 基于注解配置Bean
在Bean实现类中通过一些Annotation来标注Bean类:@Component:标注一个普通的Spring Bean类(可以指定Bean名称,未指定时默认为小写字母开头的类名)@Controller:标注一个控制器类@Service:标注一个业务逻辑类@Repository:标注一个DAO类通过在方法上标注@PostConstrut和PreDestroy注解指定的初始化方法和销毁方法(可以定义任意多个)。通过@Scope(“prototype”)指定Bean的作用范围。通原创 2020-08-05 18:41:08 · 128 阅读 · 0 评论 -
Spring 基于Java 的配置Bean
https://www.w3cschool.cn/wkspring/tlbk1icp.html@Configuration 和 @Bean 注解package com.tutorialspoint;import org.springframework.context.annotation.*;@Configurationpublic class HelloWorldConfig { @Bean public HelloWorld helloWorld(){ retur.原创 2020-08-05 18:46:20 · 195 阅读 · 0 评论 -
Spring AOP
参考:https://www.w3cschool.cn/wkspring/omps1mm6.htmlhttps://www.w3cschool.cn/wkspring/k4q21mm8.htmlSpring 声明式事务用到AOP:https://www.w3cschool.cn/wkspring/jcny1mmg.htmlSpring 框架的一个关键组件是面向切面编程(AOP)框架。面向方面的编程需要把程序逻辑分解成不同的部分称为所谓的关注点。 跨一个应用程序的多个点的功能被称为横切关注点,这些.原创 2020-08-05 20:10:26 · 96 阅读 · 1 评论 -
Spring MVC
SpringMVC的执行流程一个请求匹配前端控制器 DispatcherServlet 的请求映射路径(在 web.xml中指定), WEB 容器将该请求转交给 DispatcherServlet 处理DispatcherServlet 接收到请求后, 将根据 请求信息 交给 处理器映射器 (HandlerMapping)HandlerMapping 根据用户的url请求 查找匹配该url的 Handler,并返回一个执行链DispatcherServlet 再请求 处理器适配器(Handler转载 2020-08-05 20:21:14 · 101 阅读 · 0 评论 -
Java面试之Spring/Spring MVC
90. 为什么要使用 spring?spring 提供 ioc 技术,容器会帮你管理依赖的对象,从而不需要自己创建和管理依赖对象了,更轻松的实现了程序的解耦。spring 提供了事务支持,使得事务操作变的更加方便。spring 提供了面向切片编程,这样可以更方便的处理某一类的问题。更方便的框架集成,spring 可以很方便的集成其他框架,比如 MyBatis、hibernate 等。a...转载 2020-04-29 14:36:46 · 128 阅读 · 0 评论 -
Java面试之Spring Boot/Spring Cloud
104. 什么是 spring boot?spring boot 是为 spring 服务的,是用来简化新 spring 应用的初始搭建以及开发过程的。105. 为什么要用 spring boot?配置简单独立运行自动装配无代码生成和 xml 配置提供应用监控易上手提升开发效率106. spring boot 核心配置文件是什么?spring boot 核心的两个配置文件...转载 2020-04-29 14:41:06 · 119 阅读 · 0 评论