spring的构造注入和注解注入区别 spring入门详解?
spring入门详解?
一. Spring概述
Spring是DI/IOC和AOP的轻量级容器框架。
??轻量级:简单易用,一般来说功能不强大(但spring功能强大)
??DI(依赖注入):动态地给一个对象提供它需要的其他对象,或者给对象的属性字段赋值。(依赖注入分为xml注入和注释注入)
??IOC: spring控制一个对象的生命周期(创建、销毁)。
??AOP(面向方面编程):解决重复代码。提取相同的逻辑,即将业务逻辑从应用服务中分离出来。然后它以拦截的作用于方法的不同位置。
第二,Spring入门
1.介绍图书馆
引导包装时请注意。现在使用Spring,我们需要完成最小的guide包,也就是我们会导入任何我们需要的jar包,使用其他函数,然后添加相应的jar包。这个包对理解框架很有帮助:
2.导入Spring配置文件
1.在类路径的根目录中创建新的applicationContext.xml配置文件。可以自定义文件名,但通常使用applicationCont:xsi##34
xsie CHO 3-@ . com schema location #
#34gt
tltbean id#34...#34类#34...#34gt
tlt!-此bean的协作者和配置在此处- gt
tlt/beangt
lt/beansgt
一个
2
三
四
五
六
七
八
九
10
一个
2
三
四
五
六
七
八
九
10
3.编写逻辑代码
公共类MyBean {
tpublic void hello(){
你好,春天...#34)
t}
}
一个
2
三
四
五
六
一个
2
三
四
五
六
4.把这个类交给Spring来管理,也就是在Spring容器中注册。
在配置文件中将这个Java类交给Spring进行管理。在applicationContext.xml中配置
ltbeans
lt bean id # 34 my bean # 34 class # _ 01 _ # 34 gtlt/beangt
lt/beansgt
一个
2
三
四
一个
2
三
四
5.5的实例化。弹簧容器
有两种Spring容器对象:BeanFactory和ApplicationContext(推荐)。
豆制品厂
@测试
public void t: Bean factory,顾名思义,它是一个制造Bean的工厂。
T *和Bean factory来创建对象,并且必须获取配置文件中的数据。
T *因为:我们的第一步是读取配置文件,并将其获取到BeanFactory Factory T。
t */
t
T//第一步:读取资源文件。
tResource资源新建class path resource(# 34 application context . XML # 34)
T//第二步:获取核心对象BeanFactory。
tBeanFactory工厂新的XmlBeanFactory(资源)
}
一个
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
一个
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
应用程序上下文(推荐)
@测试
public void t: Bean factory,顾名思义,它是一个制造Bean的工厂。
T *和Bean factory来创建对象,并且必须获取配置文件中的数据。
T *因为:我们的第一步是读取配置文件,并将其获取到BeanFactory Factory T。
t */
t
T//在加载项目的类路径下实例化配置文件。
tString conf # 34 application context . XML # 34
tApplicationContext工厂新的classpathmlaplicationcontext(conf)
}
一个
2
三
四
五
六
七
八
九
10
一个一个
12
13
14
15
一个
2
三
四
五
六
七
八
九
10
11
12
13
14
15
6.如何获得对象
方法一:直接通过id获取对应的Bean对象。
//通过xml中配置的id获取对象。
my bean bean(my bean)(# 34 my bean # 34)
(豆子)
一个
2
三
四
一个
2
三
四
方法二:通过对象的id和类对象获取Bean对象(推荐)。
//通过对象的id和类获取Bean对象。
MyBean bean (#34myBean#34,)
(豆子)
一个
2
三
四
一个
2
三
四
第三,Spring依赖注入
1.xml注入
顾名思义:它是用xml配置的,但是这个方法必须有对应的setter方法。所有这种注入方法也被称为属性注入或setter方法注入。
公共类MyBean{
其他豆类
tpublic void hello(){
ttotherBean.hello()
t}
public void setOtherBean(other bean other bean){
这个。其他豆类
}
}
一个
2
三
四
五
六
七
八
九
10
一个
2
三
四
五
六
七
八
九
10
公共类OtherBean{
tpublic void hello(){
(#34以太网你好# 34)
t}
}
一个
2
三
四
五
六
一个
2
三
四
五
六
//xml配置:
lt bean id # 34 other bean # 34 class # # 34 gtlt/bean gt
lt bean id # 34 my bean # 34 class # # 34gt
lt property name # 34 other bean # 34 ref # 34 other bean # 34 gtlt/property gt
lt/beangt
一个
2
三
四
五
六
一个
2
三
四
五
六
2.注释注入
顾名思义:注入是通过评论实现的。这样,可以在setter方法或字段上编写注释。如果它们写在字段上,就不需要setter方法。
2.1选项1:使用@Autowired
@ Autowired 对春天的评论
公共类MyBean{
私人其他豆类
tpublic void hello(){
ttotherBean.hello()
t}
}
公共类OtherBean{
tpublic void hello(){
(#34以太网你好# 34)
t}
}
一个
2
三
四
五
六
七
八
九
10
11
12
13
14
一个
2
三
四
五
六
七
八
九
10
11
12
13
14
//xml配置:
lt bean id # 34 other bean # 34 class # # 34 gtlt/bean gt
lt bean id # 34 my bean # 34 class # # 34 gtlt/bean gt
一个
2
三
一个
2
三
2.2选项2:使用@Resource
公共类MyBean{
@资源
其他豆类
tpublic void hello(){
ttotherBean.hello()
t}
}
公共类OtherBean{
tpublic void hello(){
(#34以太网你好# 34)
t}
}
一个
2
三
四
五
六
七
八
九
10
11
12
13
14
一个
2
三
四
五
六
七
八
九
10
11
12
13
14
和@资源。
@Autowired:先按默认类型再按名称匹配。
@Resourc
@reference和@resource的区别?
我看到一个翻译,我真的接受了。
前者是dubbo注解,后者是spring注解。后面的@resource只是简单的注入资源,和@Autowired比较接近,只是根据变量名(beanid)注入。
也是注入,但一般用于注入分布式远程服务对象,需要配合dubbo配置使用。
两者的区别在于,一个是本地的spring容器,一个是在spring容器中注入远程服务对象作为对象。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。