Spring杂文

编程入门 行业动态 更新时间:2024-10-18 14:26:38

Spring<a href=https://www.elefans.com/category/jswz/34/1759191.html style=杂文"/>

Spring杂文

慢慢又漫漫,漫漫亦灿灿

一,耦合

在java基础中的耦合程度。

高耦合:new 一个新对象

中耦合:运用反射原理,calss.forName()的形式,forName参数形式为字符串形式。

低耦合:将键和值以key和value的形式存在properties。增加了代码的灵活性。

二,微服务

微服务:一个项目分为多个模块,每个模块都有相似的或者不同的配置文件,springbot主要是为了减少配置文件。

javaBean:可重复利用的java组件。

三,SprintIOC容器

SpringIOC容器(中文释义:控制反转)作用:控制,管理组件和解耦。是Spring框架的核心思想之一。从ioc容器的功能上来说,主要是为了配置文件创建和管理bean。

IOC(Inversion of Control)是一种软件设计原则,也是一种实现软件组件之间松耦合的方式。它的核心思想是将控制权从调用者转移到了外部容器中,由容器来管理对象的创建和依赖关系的注入。通过使用IOC容器,我们可以实现依赖注入(DI)的方式来解耦组件之间的依赖关系。

在IOC中,组件不再负责自己的创建和管理,而是通过配置或注解的方式告诉容器需要什么依赖,并由容器负责创建对象、解决依赖关系并将依赖注入到组件中。这样做的好处是使得组件更加可复用、可测试和可扩展,同时也降低了组件之间的耦合度。

常见的IOC容器有Spring Framework中的ApplicationContext和BeanFactory等。

3.1 Spring核心思想1:控制反转

控制反转:IOC控制对象的创建和管理权利,将创建对象的控制权给spring框架进行管理。

接着。由spring框架根据配置文件或注解等方式。创建bean对象并管理各个bean对象之间的依赖关系。使对象之间形成松散耦合的关系,实现解耦。

反转:原来是用户创建对象,现在是容器创建对象。(错)控制权交给外部环境(spring框架,ioc容器)

3.2 Spring核心思想2:AOP面向切面编程

springDI(依赖注入 dependecy inject):用户要啥,spring容器使两个对象形成依赖关系。共同注入一个javaBean中。

是对IOC概念不同角度的描述,是指应用程序在运行时,每一个bean对象都依赖IOC容器注入当前bean对象所需的另一个bean对象。这个bean就是指在xml中,标签bean中的内容。

四,SpringDI实现方式和实例化bean的三种方式

4.1 SpringDI实现方式

1.set。2.构造注入 。等都是为了维护对象之间的依赖关系。

程序的运行流程:测试类加载,主配置文件被加载,根据配置文件创建实例化对象。找到set方法。value:用于给元素赋值。ref在bean标签里面引用其他标签。

SpringDI注入springioc ,springioc分配对象,完成高内聚,低耦合的创建对象方式。

4.2 实例化bean的要点

前提:必须要有set方法。

参数分类:

1.对象

在bean的xxx.xml的中,如果一个类实现了另一个接口,那么这个类可以写入bean的xml文件当中。但是他的父类接口不可以写进去。

2.基本类型和String

3.array,list,set,properties,map。等复杂数据类型。

 <!--===================set注入对象==========================--><!--注入controller--><bean id="controllerImp" class="com.apesource.controller.UserControllerImp"><property name="serivce" ref="serivceImp"></property></bean><!--注入service--><bean id="serivceImp" class="com.apesource.service.UserSerivceImp"><property name="dao" ref="daoImp"></property></bean><!--注入dao--><bean id="daoImp" class="com.apesource.dao.UserDaoImp"></bean><!--===================set注入基本类型与String==========================--><bean id="student" class="com.apesource.pojo.Student"><property name="stuname" value="zzz"></property><property name="stuhobby" value="xxx"></property><property name="stuage" value="23"></property></bean><!--===================set注入复杂类型==========================--><bean id="teacher" class="com.apesource.pojo.Teacher"><!--list--><property name="mylist"><list><value>xxx</value><value>xxx</value><value>xxx</value><value>xxx</value><value>xxx</value></list></property><!--set--><property name="myset"><set><value>xxx</value><value>xxx</value><value>xxx</value><value>xxx</value><value>xxx</value></set></property><!--array--><property name="myarray"><array><value>xxx</value><value>xxx</value><value>xxx</value></array></property><!--map--><property name="mymap"><map><entry key="xxx" value="xxx"></entry><entry key="xxxx" value="xxx"></entry><entry key="xxx" value="xxx"></entry><entry key="xxx" value="xxx"></entry><entry key="xxx" value="xxx"></entry></map></property><!--properties--><property name="prop"><props><prop key="xxx">7</prop><prop key="xxx">10</prop><prop key="xxx">12</prop><prop key="xxx">14</prop></props></property></bean>

更多推荐

Spring杂文

本文发布于:2024-02-06 18:40:02,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1750740.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:杂文   Spring

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!