Chinaunix首页 | 论坛 | 博客
  • 博客访问: 390100
  • 博文数量: 80
  • 博客积分: 2682
  • 博客等级: 少校
  • 技术积分: 907
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-16 09:55
文章分类

全部博文(80)

文章存档

2012年(80)

分类: 系统运维

2012-12-12 16:09:21

applicationContext 实例化 时就会  实例化 applicationContext.xml 中配置的对象  并且是  单例类
   (就是 在 applicationContext.getBean() 还为执行之前 就已经实例化好了)

beanFactory 实例化时 applicationContext.xml 中的配置对象 是延迟加载的 直到调用相应的 beanFactory.getBean("") 方法时是才实例化

 

一:ApplicationContext应用上下文(区别于bean工厂载入类的方式,一个是在getBean时才实例化,一个是在装载bean工厂时实例化)
   常用的的有三个实现
   1:   FileSystemXmlApplicationContext  
   2:ClassPathXmlApplicationContext
   3:XmlWebApplicationContext
      ServletContext servletContext = request.getSession().getServletContext();      
      ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext);
二:
 1:bean的作用域       scope="singleton"( 默认 单例)   scope="prototype "   类对象可以有多个
 2:多个配置文件
 3:使用名称自动装配(一般不建议使用)
 


三:
  1:spring+hibernate配置(先加spring类包,再加hibernate方式)
  2:直接sessionFactory工厂注入(在HibernateDaoSupport实现类中)
       hibernateTemplate注入实现方式
  3:事务管理机制(代理模式)  
    了解事务的几种传播特性
   a:PROPAGATION_REQUIRED: 如果存在一个事务,则支持当前事务。如果没有事务则开启
   b:PROPAGATION_SUPPORTS: 如果存在一个事务,支持当前事务。如果没有事务,则非事务的执行
   c:PROPAGATION_MANDATORY: 如果已经存在一个事务,支持当前事务。如果没有一个活动的事务,则抛出异常。
   d:PROPAGATION_REQUIRES_NEW: 总是开启一个新的事务。如果一个事务已经存在,则将这个存在的事务挂起。
   e:PROPAGATION_NOT_SUPPORTED: 总是非事务地执行,并挂起任何存在的事务。
   f:PROPAGATION_NEVER: 总是非事务地执行,如果存在一个活动事务,则抛出异常
    g:PROPAGATION_NESTED:如果一个活动的事务存在,则运行在一个嵌套的事务中. 如果没有活动事务,
        则按TransactionDefinition.PROPAGATION_REQUIRED 属性执行
 
阅读(1144) | 评论(0) | 转发(0) |
0

上一篇:applicationContext.xml

下一篇:Tomcat配置数据源

给主人留下些什么吧!~~