![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
拉达灯
这个作者很懒,什么都没留下…
展开
-
自定义LocaleResolver问题
今天在学习SpringBoot框架时,自定义LocaleResolver出错,故记录一下。首先:自定义LocaleResolver的时候,在注册自定义LocaleResolver的过程中要设置bean的name为localeResolver,否则自定义的LocaleResolver不会生效。原理参考: 如下链接个人理解为:在DispatcherServlet类中有初始化LocaleResolver的方法initLocaleResolver,它在容器中找ID为LOCALE_RESOLVER_BEAN_N转载 2020-09-18 21:52:39 · 525 阅读 · 0 评论 -
Servlet,Session和Cookie以及属性作用域
Servlet,Session和CookieServletServlet的生命周期Servlet生命周期中的三个重要时刻ServletConfig和ServletContextSession与Cookie属性作用域ServletServlet的生命周期Servlet的生命周期很简单,只有一个主要的状态:初始化。如果Servlet没有初始化,那么要么正在初始化(运行其构造函数或init()方法),正在撤销(运行destroy方法),要么就是还不存在。Web容器首先加载Servlet类,然后初始化Ser原创 2020-09-17 19:17:17 · 254 阅读 · 0 评论 -
@AliasFor 使用规则
@AliasFor 使用规则注解的含义注解的使用方法互为别名继承时使用注解的含义顾名思义 @AliasFor 表示别名,它可以注解到自定义注解的两个属性上,表示这两个互为别名,也就是说这两个属性其实同一个含义。同时若自定义注解继承了另一个注解,要想让调用方能够设置继承过来的属性值,就必须在自定义注解中重新定义一个属性,同时声明该属性是父注解某个属性的别名。注解的使用方法互为别名在下面的例子中,value属性和location属性互为别名,此时使用的时候可以指定属性名来设置属性值,也能使用缺省属性转载 2020-09-11 16:18:11 · 824 阅读 · 0 评论 -
Spring注解:声明式事务
声明式事务使用注解开发主要有三个步骤:给方法上标注@Transactional注解,表示当前方法是一个事务方法在配置文件上使用@EnableTransactionManagement开启基于注解的事务管理功能配置事务管理器来控制事务(即在容器中注册事务管理器),代码如下:@Beanpublic PlatformTransactionManager transactionManager() throws Exception{ return new DataSourceTransactionMa原创 2020-09-11 13:34:20 · 70 阅读 · 0 评论 -
Spring注解:AOP
Spring注解(AOP)AOPAOP原理@EnableAspectJAutoProxyAOPAOP:面向切面编程,指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式,它的底层是动态代理。AOP的实现步骤:1.导入AOP模块spring-aspects2.定义一个业务逻辑类3.定义一个日志切面类,切面类里需要动态感知业务运行到哪里,然后执行。通知方法包括:前置通知(@Before):在目标方法运行之前运行后置通知(@After):在目标方法运行结束之后运行,不管方法正原创 2020-09-10 22:01:11 · 266 阅读 · 0 评论 -
Spring注解:IoC
Spring注解组件注册@Configuration和@Bean@ComponentScan@Scope@Conditional组件注册@Configuration和@Bean采用注解开发,需要一个配置类。@Configuration告诉Spring某个类是配置类,在配置类中对Spring进行配置。@Bean为容器中注入一个Bean,类型为返回值的类型,id默认为方法名。也能为注解添加参数来自定义类型。@Configurationpublic class MainConfig { //可以使原创 2020-09-04 11:09:21 · 177 阅读 · 0 评论 -
MyBatis
MyBatis入门步骤这篇文章是学习动力节点MyBatis教程所做的笔记,仅供参考.入门步骤新建数据库表加入maven的mybatis坐标和MySQL驱动的坐标创建实体类保存表中的一行数据创建持久层的dao接口,定义操作数据库的方法创建一个mybatis使用的xml配置文件:sql映射文件,用来写sql语句,一般一个表一个sql映射文件创建mybatis的主配置文件,一个项目一个主配置文件,主配置文件提供了数据库的连接信息和sql映射文件的位置信息创建使用mybatis类,通过mybat原创 2020-08-16 20:20:22 · 116 阅读 · 0 评论 -
SpringMVC 解决Jackson乱码问题
@TOC摘自此链接,适用于Jackson的乱码处理 <mvc:annotation-driven> <mvc:message-converters register-defaults="true"> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <constructor-ar转载 2020-08-12 11:56:01 · 503 阅读 · 0 评论 -
SpringMVC 自定义过滤器
SpringMVC 自定义过滤器网上的大佬的代码,摘自此链接,适用于get和post请求,全部乱码的过滤器import javax.servlet.*;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRequestWrapper;import javax.servlet.http.HttpServletResponse;import java.io.IOException;imp转载 2020-08-12 10:02:12 · 781 阅读 · 0 评论 -
SpringMVC执行原理
SpringMVC执行原理本文摘自狂神说SpringMVC1.下图为SpringMVC的一个较完整的流程图,实线表示SpringMVC框架提供的技术,不需要开发者实现,虚线表示需要开发者实现。2.简要分析执行流程DispatcherServlet表示前置控制器,是整个SpringMVC的控制中心。用户发出请求,DispatcherServlet接收请求并拦截请求。我们假设请求的url为 : http://localhost:8080/SpringMVC/hello,此url拆分成三部分:htt转载 2020-08-11 11:05:42 · 97 阅读 · 0 评论 -
日志及其他
日志及其他Spring5.0改动过程@Nullable注解函数式风格创建对象Spring5支持整合JUnit5Spring整合JUnit4Spring整合JUnit5Spring5.0改动Spring5框架自带了通用的日志封装。Spring5移除了Log4jConfigListener,官方建议使用log4j2,因为框架整合了log4j2.过程引入jar包(log4j2和slf4j相关包)创建log4j2.xml文件,名字固定,不能更改,格式也基本类似。@Nullable注解@Nullab原创 2020-07-28 18:26:38 · 74 阅读 · 0 评论 -
事务
事务事务添加的位置Spring进行事务管理操作的方式Spring事务管理API注解方式实现声明式事务管理事务的传播行为事务的隔离级别声明式事务管理的参数配置XML声明式事务管理完全注解开发事务添加的位置一般事务添加到三层结构(Web层,Service层,Dao层)中的Service层(业务逻辑层)中。Spring进行事务管理操作的方式编程式事务管理(不常用,不方便,通过try,catch方法,会造成代码臃肿)声明式事务管理(常用),包括注解式(常用)和XML配置文件式在Spring中进行声明原创 2020-07-28 15:07:07 · 74 阅读 · 0 评论 -
AOP
AOPAOP原理AOP原理AOP底层使用动态代理,分为两种情况:第一种是有接口的情况,使用JDK的动态代理。通过创建接口实现类代理对象,增强类的方法。第二种是没有接口的情况,这个时候需要使用CGLIB动态代理。此时则是创建当前类子类的代理对象,而非创建实现类的代理对象。...原创 2020-07-24 18:18:43 · 119 阅读 · 0 评论 -
IoC
Spring中IoC容器的两种实现方式BeanFactoryBeanFactory是IoC容器的基本实现,是Spring内部的使用接口,不提供开发人员使用。BeanFactory在加载配置文件的时候不会创建对象,而是在获取对象(getBean)的时候才去创建对象。ApplicationContext是BeanFactory的子接口,它提供更多更强大的功能,一般由开发人员进行使用。它在加载配置文件的时候就会把配置文件中的对象进行创建。...原创 2020-07-22 09:25:15 · 97 阅读 · 0 评论