📂spring
🔖spring
2024-03-19 00:51阅读: 9评论: 0推荐: 0

Java_EE企业级开发学习笔记——spring学习笔记第二章

  记录笔记。

一.Bean 的配置

   (我觉得原话可能更好理解)

  Spring容器支持XML和Properties两种格式的配置文件,最常用XML。

  XML配置文件的根元素是beans,其子元素定义了一个Bean(相关)。

  bean中子元素的罗列:(看看就好了,怎么难道还要背下来?实践记下来就行了)

   一个普通的Bean想要实现最基础功能只需要id(或者name)以及class就行了。

  (把Bean1改成别的名字,其实就是笔记第一章中写的那样)   

  如果Bean中未指定id和name,Spring会将class值当成id使用。

二.Bean的实例化

  可以理解成我们的主要类要怎么写,用不用加一点别的工厂类来帮忙实例化(工厂模式什么的),以及我们对应的配置Bean相关主要类要怎么写。

  构造器实例化:

  具体表现就是在启动类中的ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath)语句中,spring加载xml文件的时候也会通过主要类的默认构造器实例化对应的Bean。

  静态工厂方式实例化:

   建立一个主要类,创建一个静态工厂来返回主要类实例,编辑xml文件,启动类(测试类也可以)三部曲。

  主要类(接口也可以写,不过这里主要是介绍静态工厂方式,所以书本的案例直接省略了):

  静态工厂:

  xml文件编辑Bean相关:

   启动类三部曲(测试类三部曲):

   实例工厂方式实例化:(怎么还是要放解释的)

   主要类,工厂创建主要类对象,配置xml相关Bean,测试类三部曲。

  主要类:

   工厂创建主要类对象:(注意区别)

   配置xml相关Bean:(注意区别)

   测试类三部曲:

   (我感觉我只会记住前两种,后面的那一个除了要配置工厂还要单独配置出一个新的bean,有点记不住)

三.Bean的作用域

   singleton作用域:

   求证代码:(想知道的自己打一下看一下输出)

   spring默认的作用域就是singleton,所以我们配置bean就是由一条一条的bean构成的,依靠bean的id来决定是不是一个实例。

  prototype作用域:

   输出结果自己打代码。

四.Bean的生命周期

 

 五.Bean的装配方式

  装配方式就是说怎么注入的,这个主要是说要怎么写bean相关主要类的(注入要注入属性,意思就是怎么通过bean相关主要类注入属性)。

  之前不是说Bean一般是通过xml来配置的吗,然后在第一章有说过两种方式,setter和构造式,其实就是xml--setter和构造式。

  主要类(setter方法),xml配置bean相关主要类(两种),测试类三部曲。

   主要类:

 

   xml配置Bean相关主要类(两种):

   测试类三部曲:

   然后的基于Annotation的装配:基于注解写注入属性

   接口,主要类,(控制器类,可选),xml文件(之前是xml文件注入属性,但是这里不是了),测试类。

  接口:

   主要类:  

  示例代码有点复杂了。

   xml文件(bean是对应主要类,这也是Bean相关主要类的意思,控制类也可以算主要类,但是控制类是Web相关的,看自己怎么定义):

   启动类:

   总体来说,和springboot很像,不如说springboot就是精进spring的注解的。

  自动装配:

  首先,我不是很懂。所以这里还是建议去查一下。

 

  

  

  

  

本文作者:程序计算机人

本文链接:https://www.cnblogs.com/clina/p/18081883

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   程序计算机人  阅读(9)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 Lions Pride Audio artist
  2. 2 Salty Sailor David Arkenstone
  3. 3 Stonefire David Arkenstone
Lions Pride - Audio artist
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

Not available