Sping简述

来源:互联网 发布:机房还原软件 编辑:程序博客网 时间:2024/06/04 23:31
Spring是一个开源的轻量级的应用开发框架,其目的是用于简化企业级应用程序开发,减少侵入;
Spring提供的IOC和AOP应用,可以将组件的耦合度降至最低,即解耦,便于系统日后的维护和升级。
Spring实例化Bean的三种方法:
1.用无参构造器:<bean id="calendarObj" class="java.util.GregorianCalendar"/>
2.用静态工厂方法:<bean id="calendarObj" class="java.util.Calendar" factory-method="getInstance"/>
3.用实例工厂方法:<bean id="calendarObj" class="java.util.GregorianCalendar"/>
          <bean id="dateObj" factory-bean="calendarObj" factory-method="getTime"/>
组件作用域:singleton单例  prototype原型
Setter注入
构造器注入:<constructor-arg index="0" ref="id"/>(核心语句)
自动装配:autowire="byName/byType/..."
注入基本值:<property name=""><value>...</value></property>或<property name="" value=""/>
注入Bean对象:<property name=""><bean class/ref=""/></property>
注入List:<property name=""><list><value>...</value></list></property>
注入Set:<property name=""><set><value>...</value></set></property>
注入Map:<property name=""><map><entry key="" value=""/></map></property>
注入Properties:<property name=""><props><prop key="">...</prop></props></property>
引用方式注入List:<util:list id="">...</util:list>
          <property name="" ref=""/>
注入Spring表达式:#{XXX.XX}
注入null:<null/>
组件扫描:<context:component-scan base-package="xxx.xx"/>
@Component通用注解
@Named通用注解
@Repository持久化层组件注解
@Service业务层组件注解
@Controller控制层组件注解
@Scope("singleton/prototype")指定组件的作用域
@PostConstruct和@PreDestroy指定初始化和销毁回调方法
依赖注入:@Resource/@Autowired/@Qualifier/@Inject/@Named
注入Spring表达式:@Value("#{xxx.xx}")
Spring Web MVC的处理流程:
浏览器向Spring发出请求,请求交给前端控制器DispatcherServlet处理
控制器通过HandlerMapping找到相应的Controller组件处理请求
执行Controller组件约定方法处理请求,再约定方法调用模型组件完成业务处理。约定方法可以返回一个ModelAndView对象,封装了处理结果数据和视图名称信息
控制器接收ModelAndView之后,调用ViewResolver组件,定位View(JSP)并传递数据信息,生成响应界面结果
在Spring3.1之后
<mvc:annotation-driven/>
@RequestMapping
@Controller
拦截器和异常处理(配制xml文件)

0 0
原创粉丝点击