目录
Spring:(java轻量级框架)
1:Spring的优点/缺点:
优点:
1:低耦合
2:面向切面编程
3:开源,免费,成熟。可以与第三方框架进行整合应用
总结:节省开发成本又能保证质量。
缺点:
1:测试不方便,测试一个功能,也需要启动整个IOC容器
2:配置文件过多
3:过于庞大,结构太复杂,性能上面会有一定损耗。
2:Bean对象的作用域:
通过Scope属性定义或者@Scope注解
默认为(单例),可以更改为(原型)
3:Spring中的重点(IOC&&AOP)
IOC:控制反转
DI:依赖注入,控制反转的实现方式
原理:不再由自身控制代码,而是由框架进行代码的控制,从而产生控制权的反转。
(相当于拍电影一样,演员不动,导演自己去找)
AOP:面向切面编程
以前的代码是按照逻辑来运行,而面向切面就相当于在一条河流中开辟支流,加入自己的逻辑,但是不影响自身的运行。
4:Spring的Bean有哪些作用域:
Singleton:(单例)SpringIOC容器只会创建该Bean的唯一实例
Prototype:每次请求都创建一个实例
Request:每次请求都会创建一个新的Bean
Session:每次会话都会创建一个实例
5:Spring配置的三种方式:
1:基于XML的配置
2:基于注解的配置
3:基于java的配置
6:八大组成部分:
AOP:
面向切面编程,可以提高事务管理服务。
ORM:
对象关系映射,提供ORM的对象关系工具,包括JDO,Hibernate和IBatis SQL Map。
WEB:
为基于Web的应用程序提供了上下文。
MVC:
MVC框架是一个全功能的构建Web应用程序的MVC实现。
DAO:
JDBCDAO抽象层提供了有意义的异常层次结构,可用该结构管理异常处理和不同数据库抛出的错误消息。
CORE:
核心容器(IOC容器)提供Spring框架的基本功能
(核心组件是BeanFactory,它是工厂模式的实现)
CONTEXT:
Spring上下文是一个配置文件,向Spring框架提供上下文信息。
(包括电子邮件,国际化,校验和调度等功能)
SECURIT:
(权限管理)
7:Spring的事务管理:
防止出现脏数据,防止数据库数据出现问题
TransactionMananger:事务管理器
8:Spring框架中Bean的生命周期:
Spring容器从XML文件中读取Bean的定义,并实例化Bean。
Spring根据Bean的定义填充所有的属性。
如果Bean实现了BeanNameAware接口,Spring传递Bean到ID到setBaenName方法。
如果Bean实现了BeanFactoryAware接口,Spring传递BeanFactory给SetBeanFactory方法。
如果Bean实现了IntializingBean接口,调用它的AfterPropertySet方法
如果Bean实现了DisposableBean接口,调用它的Destory方法
如果Bean声明了初始化方法,调用此初始化方法·
SpringMVC:
1:工作流程:
用户发送请求到前端控制器
前端控制器找到controller组件进行请求
执行controller组件的方法,调用service层和dao层等组件完成数据库操作,返回ModelAndView对象。
控制器接收对象后,调用ViewResolver组件,定位JSP页面。
2:主要组件:
1:前端控制器
2:处理器映射器
3:处理器适配器
4:处理器
5:视图解析器
6:视图View(需要程序员开发JSP)
3:如何设定重定向和转发
重定向:返回值钱加“redirect”
转发:返回值前面加“forward”