博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring基础2
阅读量:4553 次
发布时间:2019-06-08

本文共 3137 字,大约阅读时间需要 10 分钟。

一、Spring属性注入

  1)构造方法属性注入

    

  

 

  2)set方法属性注入:通过在bean对象所属类中提供相应字段的set方法,并在配置文件中配置<property.....>

  3)set方法设置对象类型的属性(引用类型属性注入):类里的引用类型也需要交给Spring来管理

    

package com.ual.demo3;//Student类,里面包含引用类型dogpublic class Student {    private String name;    private Integer age;    public Dog dog;    public Student(String name, Integer age) {        this.name = name;        this.age = age;    }    public void setLw(Dog lw) {        this.dog = lw;    }}
package com.ual.demo3;//引用类型dog类public class Dog {   public  String name;    public void setName(String name) {        this.name = name;    }}

  4)p名称空间的属性注入

    使用p命名空间,就不需要写那么多的property,使用时要添加名称空间。

    xmlns:p="http://www.springframework.org/schema/p"

  

 

  5)EL表达式属性注入

    vlaue里写上EL表达式的值

  

#{‘字符串’} #{数字} #{参数}  value="#{dog.name}"

  6)集合类属性注入 

  1.数组:

public String[] attr;    public void setAttr(String[] attr) {        this.attr = attr;    }
zx
ls
ww

  2. List

public List
mylist; public void setMylist(List
mylist) { this.mylist = mylist; }

   

11
22

  3.set

  

public Set mySet;    public void setMySet(Set mySet) {        this.mySet = mySet;    }
123
23

  4.Map

  

public Map myMap;    public void setMyMap(Map myMap) {        this.myMap = myMap;    }

  

二、IOC注解方式快速入门

  1)配置

    1.在Spring4之后,想要使用注解形式,必须要引入aop包。 

    2.在配置文件中,还要引入一个context约束。

  

    3.配置组件扫描:哪个包下的类型使用组合扫描。指定包后,该包下的类可以使用 注解。

  

    4.在类上添加注解,确定将哪些类交给Spring

      

      同时,要在设置中允许注解b-c-a

    5.使用注解注入属性

      1.可以不提供set方法,直接在直接名上添加@value("值")

 

      2.如果提供set方法,在set方法上添加@value("值")

  

四、IOC注解详解

    1).@Component:修改一个类,将这个类交给Spring来管理,相对于在配置文件中配置<bean id="" class="">

    2).@Component三个衍生注解:为了更好的进行分层,Spring可以使用其他三个注解,功能类似,目前使用哪一个功能都一样。后期可能回添加属于各自的属性。

                 1.@Controller:web层

               2.@Service:service层

             3.@Repository:dao层

       这三个和Component一样的功能。

    3).属性注入

      1.@Value:设置普通属性值

      2.@Autowired:设置对象类型的属性值,直接使用这种方式,是按照类型完全属性注入,不需要再注解上使用id名称,习惯是按照名称完成属性注入。(根据bean对象中定义的引用类型类型名,找到交给Spring 的类中有无对应类)

      

          3.但是习惯是按照名称进行注入的,可以用@Autowired与@Qualifier("dog")

          4.3中可以不用两个结合,就用@Resource(name="dog")根据名称注入

          5.PostConstrut:初始化方法

          6.PreDestory:销毁方法  5,6在bean中自己创建的方法上调用

          7.scope:作用范围,在类上调用

   XML与注解比较:XML可以适用于任何场景,结构清晰,维护方便,注解不是自己提供的类使用不了,开发简单。

  XML与注解结合,XML管理Bean,注解完成属性注入,使用过程中,可以不用扫描包,扫描是为了类上的注解,在没有扫描的情况下,属性注入使用注解

  

使用@Resource@Value@Autowired@Qulifier

 五、应用

1.xml形式

2.注解形式

 

转载于:https://www.cnblogs.com/UalBlog/p/10644536.html

你可能感兴趣的文章
SVN 执行cleanup报错:Cleanup failed to process the following paths
查看>>
linux-centos7.6设置固定IP网络方法
查看>>
Visual Studio 2013进行python开发(一)---开发环境配置
查看>>
Visual Studio 2013进行Python开发(二)---python连接sql server数据库
查看>>
Visual Studio 2013进行Python开发(三)--多表联合查询
查看>>
微信小程序后台服务的发布
查看>>
用户 'IIS APPPOOL\DefaultAppPool' 登录失败
查看>>
kafka producer serializer序列化(六)
查看>>
kafka producer interceptor拦截器(五)
查看>>
kafka producer partitions分区器(七)
查看>>
kafka 如何保证数据不丢失
查看>>
Guava 工具类之Strings 的使用
查看>>
jdk1.8 -- Collectors 的使用
查看>>
log4j 配置文件详解
查看>>
virtualbox 扩容存储
查看>>
kafka producer 生产者客户端参数配置
查看>>
Deep Graph Infomax(DGI) 论文阅读笔记
查看>>
windows环境下pgsql的安装与使用
查看>>
namespace 实例命名空间 及 应用命名空间 问题
查看>>
centos7 远程桌面vnc
查看>>