美文网首页
001--Spring关于JavaBean创建

001--Spring关于JavaBean创建

作者: 糖纸疯了 | 来源:发表于2018-04-22 22:36 被阅读5次

话题1.在配置文件中的JavaBean如何被创建

Spring配置JavaBean的方式
  <bean class="com.vincent.bean">
       <property name="age" value="14"></property>
       <property name="name" value="小明"></property>
       <property name="phone" value="153****8680"></property>
   </bean>
// Spring关于Bean的注入
public class TestBean {
    public static void main(String[] args) {
        // 创建Bean对象工厂对象
        DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory();
        
        // 创建对象构造类
        BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(User.class);
        
        // 创建对象定义
        AbstractBeanDefinition beanDefinition = beanBuilder.getBeanDefinition();
        TestBean.addProperty(beanDefinition);
        
        // 创建Bean对象工厂对象
        beanFactory.registerBeanDefinition("user", beanDefinition);     
        User user = beanFactory.getBean(User.class);
        System.out.println("---------------创建对象成功:"+user);
        
    }
    // 添加对象的属性方法
    public static void addProperty(AbstractBeanDefinition beanDefinition) {
        MutablePropertyValues propertyValues = new MutablePropertyValues();
        propertyValues.add("age", 14);
        propertyValues.add("name", "小明");
        propertyValues.add("phone", "153****8680");
        beanDefinition.setPropertyValues(propertyValues);
    }
}
// 省略相关的Set,Get,Constructor
public class User {
    private String name;
    private int age;
    private String phone;
}

话题2.构造对象实例,创建JavaBean

    public static void main(String[] args) throws Exception{
        // 使用构造器方法构造对象
        Class<?> clazz = Class.forName("com.vincent.bean.User");// 根据类名找到这个类
        Object object = clazz.newInstance();// 用类创建一个实例对象
        // 添加属性方法
        TestBean.addMethod(clazz, object);
        System.out.println("----------user:"+object);
    }
    // 为创建的实例对象添加方法
    public static void addMethod(Class<?> clazz, Object object) throws Exception{
        //java.lang.reflect.Method看到类名应该就明白了
        Method method1 = clazz.getMethod("setName", String.class);
        Method method2 = clazz.getMethod("setAge", int.class);//不能使用Integer.class
        method1.invoke(object, "xiaoming");
        method2.invoke(object, 10);
    }

话题3.构造器方法,创建JavaBean

    public static void main(String[] args) throws Exception {
        // 使用构造器方法构造对象
        Class<?> clazz = Class.forName("com.vincent.bean.User");// 根据类名找到这个类
        // 前提是必须有相对应的构造方法
        Constructor<?> constructor = clazz.getConstructor(String.class, String.class, int.class);
        Object object = constructor.newInstance("xiaoming","153****8680",10);
        System.out.println("----------user:"+object);
    }

相关文章

  • 001--Spring关于JavaBean创建

    话题1.在配置文件中的JavaBean如何被创建 话题2.构造对象实例,创建JavaBean 话题3.构造器方法,...

  • Java 反射

    一、Model 类 二、实例化 创建JavaBean无参实例 创建JavaBean有参实例 访问JavaBean属...

  • 4、IDEA创建Spring工程

    一、步骤 创建一个maven项目 添加spring库依赖 创建JavaBean类 添加applicationCon...

  • JavaBean

    一、JavaBean的概述   JavaBean的主要作用是封装数据,是一种创建类的标准,包括: 类使用公共进行修...

  • 关于json序列化

    关于json序列化(javaBean转Json的细节处理) json序列化(javaBean转Json的细节) J...

  • Mybatis(二)HelloWorld

    一、创建一张测试表 二、创建对应的javaBean 三、导入包 mybatis-3.4.1.jar(mybatis...

  • ApplicationContext/发布并监听事件

    SpringBeanFactory如果用户没有调用getBean()方法那么JavaBean实例不会被创建. sp...

  • Kotlin之基本语法

    创建 Javabean 对象 关键字:data 包含以下所有的属性: getters (and setters i...

  • JAVA Web学习(10)___第7章 JavaBean 技术

    第7章 JavaBean 技术 7.1 JavaBean 介绍 7.1.1 JavaBean概述 JavaBean...

  • Spring的开发步骤

    1、引入spring jar包2、添加applicationContext.xml3、创建一个javabean里面...

网友评论

      本文标题:001--Spring关于JavaBean创建

      本文链接:https://www.haomeiwen.com/subject/ifuhlftx.html