zoukankan      html  css  js  c++  java
  • Spring创建复杂对象

    Spring创建复杂对象

    何为复杂对象?

    在java中,不能通过new关键字创建的对象,都称为复杂对象,如抽象类(abstract,例如Calendar日期类)、接口(interface,JDBC中的Connection连接类)。

    复杂对象(如Calendar日期类)的普通创建方式:

    Calendar calendar = Calendar.getInstance();

    System.out.println(newSimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime()));

    在spring工厂中,复杂对象的创建方式:

    1.类 implements FactoryBean<Calendar>接口

    //创建复杂对象的方法,并将创建对象返回
    @Override
    public Calendar getObject() throws Exception {
    return Calendar.getInstance();
    }
    //创建复杂对象的类型
    @Override
    public Class<?> getObjectType() {
    return Calendar.class;
    }
    //复杂对象在工厂中创建的次数,true表示单例,false表示多例
    @Override
    public boolean isSingleton() {
    return true;
    }
    }
    //spring创建Connection
    public class ConnectionFactoryBean implements FactoryBean<Connection> {
    @Override
    public Connection getObject() throws Exception {
    //加载驱动
    Class.forName("com.mysql.jdbc.Driver");
    return DriverManager.getConnection("jdbc:mysql://localhost:3306/express","root", "root");
    }
    @Override
    public Class<?> getObjectType() {
    return Connection.class;
    }
    @Override
    public boolean isSingleton() {
    return false;
    }
    }

    2. 配置

    <!-- 配置复杂对象的创建 -->
    <bean id="calendar" class="factoryBean.CalendarFactoryBean"></bean>
    <bean id="connection" class="factoryBean.ConnectionFactoryBean"></bean>
  • 相关阅读:
    postman 调用webservice方法
    .net core 传JSON对象Controller接收不到的问题处理方法
    java不同基本类型之间的运算
    重写和重载
    java基本数据类型介绍
    浏览器tab页签切换事件
    设计模式之观察者模式
    设计模式之状态模式
    设计模式之备忘录模式
    设计模式之迭代器模式
  • 原文地址:https://www.cnblogs.com/lkldeblog/p/10685833.html
Copyright © 2011-2022 走看看