定制开发小程序Spring框架

1.介绍Spring

1.1Spring

Spring定制开发小程序是一个开源框架,它由创建。定制开发小程序它是为了解决企业的复定制开发小程序杂性而创建的。Spring定制开发小程序使用基本的JavaBean定制开发小程序来完成以前只可能由EJB定制开发小程序完成的事情。然而,Spring定制开发小程序的用途不仅限于服务器端的开发。从简单性、定制开发小程序可测试性和松耦合的角度而言,任何Java定制开发小程序应用都可以从Spring中受益。Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。JAVA EE应该更加容易使用。

1.2Spring提高了和AOP

(1)——Spring通过一种称作控制反转(IOC)的技术促进了松耦合。

(2)面向切面——Spring提供了的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发。

(3)spring的特点:
    方便解耦,简化开发----层层之间的依赖降低。
    方便程序的测试:----提供单元测试jar,
    方便集成各种优秀框架---集成第三方的框架---mybatis

2.为什么使用Spring

降低耦合,对象与对象之间的耦合度。

 

 工厂模式解决上面的问题

接口解决上面工厂模式的问题

 3.程序的耦合

耦合性(Coupling),也叫耦合度,是对模块间关联程度的度量。耦合的强弱取决于模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差( 降低耦合性,可以提高其独立性)。耦合性存在于各个领域,而非软件设计中独有的,但是我们只讨论软件工程中的耦合。在软件工程中,耦合指的就是就是对象之间的依赖性。对象之间的耦合越高,维护成本越高。因此对象的设计应使类和构件之间的耦合最小。软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准。划分模块的一个准则就是高内聚低耦合。

4.解决办法IOC控制反转

控制反转(Inversion of Control,缩写为IoC),是中的一种设计原则,可以用来减低计算机之间的。其中最常见的方式叫做(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。使用对象的时候不再是我们直接new,而是将创建对象的权利交给框架中的核心容器IOC,需要使用对象的时候直接从容器中获取。

5.如何使用Spring

5.1加入依赖

 5.2创建Spring的配置文件

5.3创建Dao

5.3.1接口

5.3.2dao类实现接口

5.4测试

 6.BeanFactory和ApplicationContext的区别

Spring容器顶层接口:获取Bean对象;管理类和类之间的关系(依赖关系)BeanFactory由org.springframework.beans.factory.BeanFactory接口定义 BeanFactory是工厂模式(Factory pattern)的实现,是IOC容器的核心接口,它的职责包括:实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。

6.1ApplicationContext接口

​是基于BeanFactory之上的,提供了应用程序框架服务,扩展的新功能如下:提供国际化的支持资源访问,如URL和文件 事件传递载入多个配置文件等 实现类常见有三个(1)ClassPathXmlApplicationContext:-classpath路径加载xml文件的(2)FileSystemXmlApplicationContext:基于项目根路径进行加载xml文件的(3)AnnotationConfigApplicationContext:基于注解的配置。基于类书写的配置

6.2BeanFactory和ApplicationContext区别

BeanFactory 才是 Spring 容器中的顶层接口。
ApplicationContext 是它的子接口。
单例模式下创建对象的时间点不一样:
ApplicationContext:(饿汉模式)只要一读取配置文件,马上就会创建配置文件中配置的对象。
BeanFactory:(懒汉模式)什么时候getBean("id"),也就是说当根据id获取对象时,才会创建。

 7.获取bean的三种方式

8.bean的作用范围

bean对象的作用范围调整需要配置scope属性,设置单例还是多例(只针对ApplicationContext接口来说,默认是单例的

scope:常用 singleton,prototype

​ singleton:单例的(默认值)当加载配置文件时,就会创建对象。

​ prototype:多例的(当getBean时才会创建对象)

​ request:作用于请求范围---同一个那么使用bean同一个。

​ session:作用于会话范围---同一个会话

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发