您现在的位置是:首页 >

tx注入器 Spring中DI设置器注入

火烧 2021-08-02 03:12:52 1071
S ri g中DI设置器注入   Java的反射机制可以说是在S ri g中发挥的淋漓尽致 下面要看的代码就是通过反射机制来实现向一个类注入其实际依赖的类型 这个过程的实现会交由S ri g容器来帮我

Spring中DI设置器注入  

  Java的反射机制可以说是在Spring中发挥的淋漓尽致 下面要看的代码就是通过反射机制来实现向一个类注入其实际依赖的类型 这个过程的实现会交由Spring容器来帮我们完成

  JavaBean中针对属性一般都有一组设置/获取方法(setXXX/getXXX) 这两个方法可以由IDE给我们自动产生 当然你也可以手动进行编写 这是你的自由 下面的例子就是Spring中利用setter方法来实现依赖注入

  源代码如下

  package pp;

  //一个普通的JavaBean

  public class Person {

  //人的名字

  private String S_name;

  private String S_addr;

  private int age;

  //getter方法

  public int getS_Age() {

  return age;

  }

  //setter方法

  public void setS_Age(int age) {

  this age = age;

  }

  //setter方法

  public String getaddr() {

  return S_addr;

  }

  //getter方法

  public void setaddr(String addr) {

  S_addr = addr;

  }

  //构造函数

  public Person(){}

  //getter方法

  public String getName() {

  return S_name;

  }

tx注入器 Spring中DI设置器注入

  //setter方法

  public void setName(String name) {

  S_name = name;

  };

  }

  <?xml version= encoding= UTF ?>

  <beans

  xmlns= /schema/beans

  xmlns:xsi= / /XMLSchema instance

  xmlns:p= /schema/p

  xsi:schemaLocation= /schema/beans /schema/beans/spring beans xsd >

  <bean id= sentence class= pp Sentence />

  <bean id= person class= pp Person >

  <! 从这里可以看出的是属性名是setter方法里去掉set的部分 即setXXX中的XXX而与具体的属性无关 >

  <property name= name value= pptest ></property>

  <! 这里你完全可以把setaddr里的参数改成setaddr(String name) 并不会报错 因为判断的依据是setXXX即XXX >

  <! 但如果你改成setS_addr这里就要错了 不信你可以试 如果改成setS_addr 则下面的name需要改成S_addr >

  <property name= addr value= Beijing ></property>

  <! 这里就是上面的一个例子 类的属性名为age 但这里的name却为S_Age >

  <! 同时这里也要说明的一个问题是类里面为int 但这里却是字符串类型 这个你不用担心 Spring在进行注入时会自动根据参数的类型进行类型 的转化 >

  <property name= S_Age value= ></property>

  </bean>

lishixinzhi/Article/program/Java/ky/201311/28110  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码