学习java第三十七天

Spring的优势

1.方便解耦,简化开发:通过spring的ioc容器,将对象间的依赖关系交由Spring进⾏控制,避免硬编码所造成的

过度程序耦合,⽤户也不必再为单例模式类、属性⽂件解析等这些很底层的需求编写代码,可以更专注于上层的应⽤。

  1. AOP编程的⽀持: 通过Spring的AOP功能,⽅便进⾏⾯向切⾯的编程,许多不容易⽤传统OOP实现的功能可以通过

AOP轻松应付。

3.声明式事务的支持:@Transactional 可以将我们从单调烦闷的事务管理代码中解脱出来,通过声明式⽅式灵活的进⾏事务的管理,提⾼开发效率和质量。

4.方便程序的测试

5.方便集成各种框架

6.降低Javaee api的使用难度

Spring框架的IOC实现三种方式

  1. 纯xml方式

  2. Xml加注解方式

上面两种方式加载相同:JavaEE应用通过new ClassPathXmlApplicationContext("beas.xml")或者new FileSystemXmlApplicationContext("c:beans.xml")加载;JavaWeb应用通过ContextLoaderListener(监听器去加载xml)

  1. 纯注解方式

加载方式:JavaEE应用通过new AnnotationConfigApplicationContext(SpringConfig.class); JavaWeb应用通过ContextLoaderListener(监听器去加载注解配置类)

BeanFactory与ApplicationCentext区别

BeanFactory是Spring框架IOC容器顶层接口,定义了基础功能和规范,而ApplicationContect是他的子接口,不仅具备了他的所有功能,并且还对他进行扩展,支持了更多的功能,实现面向接口开发原则。

相关推荐
笨手笨脚の13 小时前
设计模式-迭代器模式
java·设计模式·迭代器模式·行为型设计模式
Miki Makimura13 小时前
Reactor 模式实现:从 epoll 到高并发调试
运维·服务器·c++·学习
spencer_tseng13 小时前
Eclipse 4.7 ADT (Android Development Tools For Eclipse)
android·java·eclipse
jiajixi13 小时前
Go 异步编程
开发语言·后端·golang
QX_hao14 小时前
【Go】--strings包
开发语言·后端·golang
计算机毕业设计木哥14 小时前
计算机毕设选题推荐:基于Hadoop和Python的游戏销售大数据可视化分析系统
大数据·开发语言·hadoop·python·信息可视化·spark·课程设计
秦禹辰14 小时前
venv与conda:Python虚拟环境深度解析助力构建稳定高效的开发工作流
开发语言·后端·golang
cooldream200914 小时前
深入解析 Conda、Anaconda 与 Miniconda:Python 环境管理的完整指南
开发语言·python·conda
·心猿意码·14 小时前
C++Lambda 表达式与函数对象
开发语言·c++