Bean的别名配置:
Bean作用范围配置(重点)
名称:scope
类型:属性
所属:bean标签
功能:
- 定义bean的作用范围,
- singleton:单例(默认)
- prototype:非单例
示例:
<bean id="bookDao" class="com.kuangziyao.dao.impl.BookServiceImpl" scope="prototype"/>
扩展:scope的取值不仅仅只有singleton和prototype,还有request、session、application、 websocket ,表示创建出的对象放置在web容器(tomcat)对应的位置。比如:request表示保存到request域中。
在我们的实际开发当中,绝大部分的Bean是单例的,也就是说绝大部分Bean不需要配置scope属性。
实例化Bean
构造方法方式【重点】
//BookDaoImpl实现类
public class BookDaoImpl implements BookDao {
public BookDaoImpl() {
System.out.println("book dao constructor is running ....");
}
public void save() {
System.out.println("book dao save ...");
}
}
//applicationContext.xml配置
<!--方式一:构造方法实例化bean-->
<bean id="bookDao" class="com.kuangziyao.dao.impl.BookDaoImpl"/>
//AppForInstanceBook测试类
public class AppForInstanceBook {
public static void main(String[] args) {
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
BookDao bookDao = (BookDao) ctx.getBean("bookDao");
bookDao.save();
}
}
==注意:无参构造方法如果不存在,将抛出异常BeanCreationException
==
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。