Spring--Atos学习心得笔记

什么是Spring

Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。
◆目的:解决企业应用开发的复杂性
◆功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能
◆范围:任何Java应用

2002,首次推出了Spring框架,Interface21。
Spring是一个 轻量级控制反转(IoC)面向切面(AOP) 的容器框架。

Spring的作者

Rod Jahnson:Spring Framework创始人,著名作者。 Rod在悉尼大学不仅获得了计算机学位,同时还获得了音乐学位。更令人吃惊的是在回到软件开发领域之前,他还获得了音乐学的博士学位

Spring的理念

使现有的技术更加容易使用,本身是一个大杂烩,整合了现有的技术框架。
SSH:Struct2 + Spring + Hibernate!
SSM:SpringMVC + Spring + Mybatis!

Spring的依赖

<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>5.2.8.RELEASE</version>
</dependency>

Spring的优点

  • Spring是一个开源的免费的框架(容器)!

  • Spring是一个轻量级、非入侵式的框架!
    轻量级:导入依赖就能够使用。
    非入侵式:集成Spring不会改变原来的代码情况,还可能会更简单。

  • 控制反转(IOC)

  • 面向切片编程(AOP)

  • 支持事务的处理,对框架整合的支持

Spring的缺点

发展太久了之后,违背了原来的理念!配置十分繁琐,人称“配置地狱”。

总结一句话
Spring就是一个轻量级的控制反转(IOC)和面向切片编程(AOP)的框架。


Spring的组成

Spring七大模块(在别人博客那里Copy的)
Spring七大模块
核心容器(Spring Core)

核心容器提供Spring框架的基本功能。Spring以bean的方式组织和管理Java应用中的各个组件及其关系。Spring使用BeanFactory来产生和管理Bean,它是工厂模式的实现。BeanFactory使用控制反转(IoC)模式将应用的配置和依赖性规范与实际的应用程序代码分开。

应用上下文(Spring Context)

Spring上下文是一个配置文件,向Spring框架提供上下文信息。Spring上下文包括企业服务,如JNDI、EJB、电子邮件、国际化、校验和调度功能。

Spring面向切面编程(Spring AOP)

通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring框架中。所以,可以很容易地使 Spring框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。

JDBC和DAO模块(Spring DAO

JDBC、DAO的抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理,和不同数据库供应商所抛出的错误信息。异常层次结构简化了错误处理,并且极大的降低了需要编写的代码数量,比如打开和关闭链接。

对象实体映射(Spring ORM)

Spring框架插入了若干个ORM框架,从而提供了ORM对象的关系工具,其中包括了Hibernate、JDO和 IBatis SQL Map等,所有这些都遵从Spring的通用事物和DAO异常层次结构。

Web模块(Spring Web)

Web上下文模块建立在应用程序上下文模块之上,为基于web的应用程序提供了上下文。所以Spring框架支持与Struts集成,web模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。

MVC模块(Spring Web MVC)

MVC框架是一个全功能的构建Web应用程序的MVC实现。通过策略接口,MVC框架变成为高度可配置的。MVC容纳了大量视图技术,其中包括JSP、POI等,模型来有JavaBean来构成,存放于m当中,而视图是一个街口,负责实现模型,控制器表示逻辑代码,由c的事情。Spring框架的功能可以用在任何J2EE服务器当中,大多数功能也适用于不受管理的环境。Spring的核心要点就是支持不绑定到特定J2EE服务的可重用业务和数据的访问的对象,毫无疑问这样的对象可以在不同的J2EE环境,独立应用程序和测试环境之间重用。


Spring学习流程

(早年Spring官方推荐流程:现代化的Java开发,就是基于Spring的开发)
Spring Boot -> Spring Cloud -> Spring Cloud Data Flow

  • Spring Boot:
    • 一个快速开发的脚手架
    • 基于Spring Boot可以快速开发单个微服务
    • 约定大于配置!
  • Spring Cloud
    • Spring Cloud是基于Spring Boot实现的
      (目前大部分公司都在使用Spring Boot进行快速开发,学习Spring Boot的前提是完全掌握Spring及Spring MVC!承上启下的作用!)

IOC理论推导

以前的业务实现
1.UserDao 接口
2.UserDaoImpl 实现类
3.UserService 业务接口
4.UserServiceImpl 业务实现类
在之前的业务中,用户的需求可能会影响我们原来的代码,我们需要根据用户的需求去修改源代码!如果程序代码量十分庞大,则修改一次的成本价十分昂贵!

我们使用一个set接口实现,就发生了变化!(这里是思想上的变化,其实代码没有太大变化)

  • 之前,程序时主动创建对象!控制权在程序员手里。
  • 使用了set注入后,程序不再具有主动性,文士变成了被动接受对象。

这种思想,从本质上解决的问题,使得程序员不用再去管理对象的创建!(例如一些网站的用户自定义,这种思想只需要使用set注入即可)系统耦合性大大降低,可以更加专注在业务的实现。这是IOC的原型!

IOC本质

IOC,是一种设计思想,DI(依赖注入)是实现IOC的最常见一种方法;一种将控制权转移的设计模式,由传统的程序控制转移到容器控制。

我们不用自己创建实例对象,这些都交给Spring的bean工厂帮我们创建管理。这也是Spring的核心思想,通过面向接口编程的方式来是实现对业务组件的动态依赖。这就意味着IOC是Spring针对解决程序耦合而存在的。在实际应用中,Spring通过配置文件(xml或者properties)指定需要实例化的java类(类名的完整字符串),包括这些java类的一组初始化值,通过加载读取配置文件,用Spring提供的方法(getBean())就可以获取到我们想要的根据指定配置进行初始化的实例对象。(还可以使用注解方式)

IOC创建对象的方式

  • 默认使用无参构造方法创建对象。
  • 想要使用有参构造方法创建对象。
    • 下标赋值

所谓的IOC:对象由Spring来创建,管理,装配!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: atos是一种电子元件,一般用于电子设备和电路的放大和调节功能。放大板是一种集成了放大电路的电子板,可以增强电路输入信号的幅度。而z-bm-kz-np可能是某个具体型号或规格的放大板。 根据提供的信息,我们可以推测z-bm-kz-np是由几个简写的词组组成。其中,z可能是型号标识的一部分,称为型号前缀。bm可能代表着该放大板的基本参数或功能,比如输入输出电压范围、输入阻抗等。kz可能表示该放大板的特殊功能或特性,比如平衡输入输出、可调增益等。np可能是型号后缀,即为了区分不同型号或版本而添加的标识。 需要注意的是,具体的含义可能因不同的产品或厂商而异,我只是根据常见的命名规律进行了一些猜测。如果您想了解更多详细信息,请参考相关产品的技术规格书或咨询相关的专业人士。 ### 回答2: ATOS是一家全球领先的数字化解决方案公司,提供各种创新的技术和服务。放大板Z-BM-KZ-NP是ATOS公司的一款设备,具有一些特殊的功能和应用。 首先,放大板Z-BM-KZ-NP是一种具有放大能力的板卡设备。它可以将输入信号放大到更高的电平,使其能够被其他设备更有效地处理。这在某些应用场景中非常有用,比如在音频或视频设备中,可以放大信号以提高音质或画质。 除了放大功能,Z-BM-KZ-NP还具有其他特殊的应用。它可以用于信号转换和传输,例如将模拟信号转换为数字信号,或者将信号传输到远程设备。这对于不同类型的设备之间的互联和通信非常重要。 此外,该放大板还可以与其他设备和系统进行集成。它可以与计算机、网络和其他外部设备连接,以实现数据传输和共享。这样一来,用户可以在不同的设备上共享和处理数据,提高工作效率和资源利用率。 最后,Z-BM-KZ-NP还具有可扩展性和灵活性。它可以根据用户的需求进行定制和调整,以适应不同的应用场景。用户可以根据自己的需要选择不同的规格和配置,以满足自己的要求。 总之,放大板Z-BM-KZ-NP是ATOS公司提供的一款功能强大的设备。它具有放大、转换、传输和集成等多种功能,可应用于不同领域和场景,为用户提供更好的数字化解决方案。 ### 回答3: Atos放大板z-bm-kz-np是一种电子元件,主要用来增加电信号的幅度。 z-bm-kz-np是该放大板的型号,每个字母和连字符代表了不同的特性和功能。 首先,z表示该放大板属于Atos公司的产品线之一。Atos是一家知名的电子元件制造商,专注于研发和生产各种工业自动化和控制设备。 bm表示该放大板是基于板载模块设计的。板载模块通常是一种独立的电路板,具有特定的功能,可以插在主电路板上或集成在另一个设备中。通过使用板载模块,用户可以根据需要轻松地升级或更换电子设备的特定功能。 kz表示该放大板的主要功能是放大信号。在电子通信系统中,信号通常需要放大以保持其质量和强度。放大板可以通过增加信号的幅度来增强信号的能量,使信号可以在系统中传输更远的距离。 最后,np代表该放大板是针对特定的应用需求设计的。不同的应用场景可能需要不同的放大板来满足其特定的信号放大需求。通过提供定制的放大板,Atos公司可以确保其产品符合不同行业和应用的要求。 总之,Atos放大板z-bm-kz-np是一种具有特定功能和应用的电子元件,用于增强和放大电信号。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值