package com.vo;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
/*创建 ApplicationContext 实例的时候就加载了配制文件.并初始化好了所有的bean;
*
*1. 如果有很多的bean 的话.那我一下就全初始化了.这样显然是不够合适的,那有没有像hibernate 一样有
* 延迟加载的功能呢? 我要用到哪个bean 我再初始化他.
*
* 在spring 中也是一样可以达到这种功能的.
* <bean id="stu" class="com.vo.Student" lazy-init="true">
* lazy-init="default|false|true" 分别表示:default和false 是一样的.默认是不延迟,false也是不延迟,true 表示延迟.
*
*2. 有时候为了性能问题.对于一些不需要保存属性状态的类.就可以采用一种单例的形式,可以节省内存资源.
* spring 里提供了<bean id="stu" class="com.vo.Student" singleton="false">
* 但有个问题.singleton 在spring自动生成的配置文件里没有.不知道为什么.只有自己写上
* <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
* 把他<beans...>去掉.
* singleton 默认是单例的,只创建一个对象false一样. true 表示创建多个
*
*/
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
ctx.getBean("stu");
ctx.getBean("stu");
ctx.getBean("stu");
}
}
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="stu" class="com.vo.Student" singleton="false">
</bean>
</beans>
hibernate 笔记
最新推荐文章于 2021-12-01 00:13:45 发布