spring学习
jopenhere
这个作者很懒,什么都没留下…
展开
-
@Transactional详解
@Transactional详解 在spring中有两种事务的实现方式,分别是编程式事务管理和编码式事务管理 编程式事务一般使用的是TransactionTemplate工具类来实现 spring中使用的是@Transactional注解,可以作用于接口、接口方法、类以及类方法上。当作用于类上时,该类的所有 public 方法将都具有该类型的事务属性。 参数描述: readOnly 该属性用于设置当前事务是否为只读事务,设置为true表示只读,false则表示可读写,默认值为false。例如:@Tran原创 2020-12-23 11:44:29 · 1204 阅读 · 0 评论 -
spring:refresh方法之finishRefresh
finishRefresh: 刷新完成工作,包括初始化LifecycleProcessor,发布刷新完成事件等 源码: protected void finishRefresh() { // Initialize lifecycle processor for this context. //初始化生命周期管理器LifecycleProcessor initLifecyclePr...原创 2020-03-29 15:17:18 · 489 阅读 · 0 评论 -
spring:refresh方法之finishBeanFactoryInitialization
finishBeanFactoryInitialization 实例化BeanFactory 源码 protected void finishBeanFactoryInitialization(ConfigurableListableBeanFactory beanFactory) { // Initialize conversion service for this context...原创 2020-03-29 15:04:03 · 148 阅读 · 0 评论 -
spring:refresh之initApplicationEventMulticaster
initApplicationEventMulticaster 初始化应用事件广播器,。观察者模式的应用。当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 源码: protected void initApplicationEventMulticaster() { ConfigurableListableBeanFactory beanFactory = get...原创 2020-03-27 00:02:06 · 204 阅读 · 0 评论 -
spring:refresh方法之initMessageSource
initMessageSource 国际化(Internationalization)简称 i18n,简单来说就是不同国家/地区/语言的用户,访问同一个程序,得到对应的本地化资源。 Spring中国际化的支持是AbstractApplicationContext中定义的默认bean(ApplicationContext实现了MessageSource接口) 源码: protected ...原创 2020-03-26 23:32:19 · 302 阅读 · 0 评论 -
spring:refresh方法之registerBeanPostProcessors
registerBeanPostProcessors 处理逻辑与invokeBeanFactoryPostProcessors类似,作用是添加bean的后置处理器。 public static void registerBeanPostProcessors( ConfigurableListableBeanFactory beanFactory, AbstractApplica...原创 2020-03-26 23:06:59 · 180 阅读 · 0 评论 -
java-spring:refresh方法之invokeBeanFactoryPostProcessors
invokeBeanFactoryPostProcessors方法用于调用bean工厂的后置处理器。 Bean工厂的后置处理器:BeanFactoryPostProcessor(触发时机:bean定义注册之后bean实例化之前)和BeanDefinitionRegistryPostProcessor(触发时机:bean定义注册之前),所以可以在Bean工厂的后置处理器中修改Bean的定义信息,...原创 2020-03-25 02:14:47 · 122 阅读 · 0 评论 -
一次ApplicationContext的实例化过程
好记性不如烂笔头。记一下对ApplicationContext实例化的过程的吧。 代码: ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); 首先进入的代码是: static { ContextClosedEvent...原创 2020-03-02 21:33:02 · 938 阅读 · 0 评论 -
MyBatis工作流程及源码码解析
什么是mybatis? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。 这段...原创 2020-02-27 21:25:49 · 163 阅读 · 0 评论 -
spring配置异常--org.xml.sax.SAXParseException;通配符的匹配很全面, 但无法找到元素 'aop:aspectj-autoproxy' 的声明。
学习spring:aop时候遇到的问题: Caused by: org.xml.sax.SAXParseException; lineNumber: 23; columnNumber: 29; cvc-complex-type.2.4.c: 通配符的匹配很全面, 但无法找到元素 'aop:aspectj-autoproxy' 的声明。 这是抛出得异常。 查了好久才发现没有导入Aop的名称空间...原创 2020-02-23 00:14:34 · 498 阅读 · 0 评论