Spring是什么
Spring是什么?
简单说,是一个开源框架,是一个企业轻量级的应用开发框架,可以用简单的JavaBean来代替原来EJB的工作.
Spring里不得不谈的概念?
DI(依赖注入)----解决耦合问题的技术,提供对象间松耦合,对象的实例化的时候相关依赖类的注入是主动的,而不是被动寻找。对象间的依赖关系不是硬编码,而是通过XML 文件装配的。
AOP(面向切面)----就是将具体的通用的应用从业务逻辑中分离出来,各自做各自专业的事情。其实跟我们原来用C写程序一样,都会将通用的日志、监控功能单独出来成为模块。只不过在SPRING 中这种关联也是通过XML文件管理。
Spring能做什么?
1 Spring是一个bean容器,可以管理所有的bean.
2 我们通常采用的架构SSH,就是发挥了Spring的容器管理和事物管理功能,它可以与多种ORM模块继承.
3 本身SpringMVC也是SSH替换的一种方案.
总之,我们可以用它来构建各种企业应用,足够了,除非你的企业应用非常复杂,比如银行业务.
一般的网站平台足够了.
企业级应用中DI应用举例:
DI应用更多体现了面向接口编程的概念,最大优点就是松耦合。
比如我们写一个在线订购应用,需要一个订单服务组建来处理所有与订单有关的函数。
通常我们有几种办法:
1 在需要的时候实例化一个组件;
2 通过JNDI检索该服务接口,如果该服务是通过EJB2.0实现;
3 如果通过EJB3,可以通过JNDI直接访问该问题,不需要主接口;
通过DI应用来看看:
public class Checkout {
private Orderservice Orderservice;
public Orderservice getOrderservice() {
return Orderservice;
}
public void setOrderservice(Orderservice orderservice) {
Orderservice = orderservice;
}
}
applicationContext.xml中
<bean id="Checkout" name="/Checkout" class="Checkout" abstract="false"
lazy-init="default" autowire="default" dependency-check="default">
<property name="Orderservice">
<ref bean="Orderservice" />
</property>
</bean>
这种注入是在XML中实现装配的.
当然这里应该采用面向接口编成的技术,即Orderservice是一个接口,装配的时候可以是这个接口的任何实现,这样完全松耦合.
作者“清风”
补充:软件开发 , Java ,