zoukankan      html  css  js  c++  java
  • Spring学习十一

    一:  创建bean的方法:

      1: 如果不采用构造注入:默认调用bean的无参构造函数,因此该类必须要提供无参构造函数,用无参构造函数用反射创建bean。

    :               如果采用构造注入:则使用 <constructor-arg>配置一个构造函数。

            2:用静态工厂方法创建bean: factory-method = "xxxxx"

    // 要在bean内部定义一个静态工厂。
    <bean id="personService" class="com.spring.service.PersonServiceBeanFactory" factory-method="createPersonService">  //注意: 这里的class是工厂类
           //静态工厂类(由静态方法创建bean)  
               public class PersonServiceBeanFactory {
     <bean id="factory" class="工厂类"/>
          <bean id="" factory-bean="factory" factory-method="实例工厂方法"/>

          3:   工厂实例被创建:       

                  public static PersonService createPersonService(){  
                    return new PersonService();  
            }  
    }  

    二:不含有无参构造函数的类,可以用反射实例化吗?

              可以:  如下两种方法都可以,第二种就是调用有参数构造函数,但是要清楚构造函数的参数是什么。

        // 调用newInstance方法创建Person类对象, 
        Class<Person> cls = Person.class;  
        Person p = cls.newInstance(); System.out.println(p);

    // 使用构造器类创建Person类对象 Constructor<Person> con = cls.getConstructor(String.class, int.class); Person person = con.newInstance("lili", 12); System.out.println(person);
  • 相关阅读:
    适配器
    MouseListener
    键盘事件KeyListener
    【转】CxImage图像库的使用
    【转】Qt Mode/View
    【转载】VC++中的图像类型转换--使用开源CxImage类库
    Qt5 文本编辑
    【转载】设备坐标(窗口/window)和逻辑坐标(视口/viewport)
    【转载】Qt中的QString,QByteArray,Qchar, char*
    QT中QWidget、QDialog及QMainWindow的区别
  • 原文地址:https://www.cnblogs.com/liufei1983/p/7594320.html
Copyright © 2011-2022 走看看