当前位置: 首页 > news >正文

怎样在设计网站做图赚钱phpcms 网站转移

怎样在设计网站做图赚钱,phpcms 网站转移,h5网站做微信公众号,贵阳网站开发工程师招聘网目录 一.spring管理JavaBean的初始化过程(生命周期) Spring Bean的生命周期: 二.spring的JavaBean管理中单例模式及原型(多例)模式 2.1 . 默认为单例,但是可以配置多例 2.2.举例论证 2.2.1 默认单例 2.2…

目录

一.spring管理JavaBean的初始化过程(生命周期)

Spring Bean的生命周期:

二.spring的JavaBean管理中单例模式及原型(多例)模式

        2.1 . 默认为单例,但是可以配置多例

        2.2.举例论证

                2.2.1 默认单例

               2.2.2 设置多例

               2.2.3单例与多例的初始化的时间点

三.总结


一.spring管理JavaBean的初始化过程(生命周期)

        在Spring框架中,Bean的生命周期是指从它被创建、初始化,到最终被销毁的整个过程。

        需要注意的是,Bean的销毁并不是由Java的垃圾回收器自动处理的,而是由Spring容器负责管理和销毁的。

下面一张图就是bean的整个生命周期图,它的一个初始化过程

Spring Bean的生命周期:

1)通过XML、Java annotation(注解)以及Java Configuration(配置类)

        等方式配置JavaBean,现在我用的是xml配置文件的方式

2)BeanDefinitionReader:解析Bean的定义。在Spring容器启动过程中,

        会将Bean解析成Spring内部的BeanDefinition结构;

        理解为:将spring.xml中的<bean>标签转换成BeanDefinition结构

        有点类似于XML解析

3)BeanDefinition:包含了很多属性和方法。例如:id、class(类名)、

        scope、ref(依赖的bean)等等。其实就是 将bean(例如<bean>)的定义信息

        存储到这个对应BeanDefinition相应的属性中,最终得到List<BeanDefinition>

4)BeanFactoryPostProcessor:是Spring容器功能的扩展接口。JavaBean初始化之前                先执行自己的业务

5)BeanFactory:bean工厂。它按照我们的要求生产我们需要的各种各样的bean。

6)Aware感知接口:在实际开发中,经常需要用到Spring容器本身的功能资源

        例如:BeanNameAware、ApplicationContextAware等等

        BeanDefinition 实现了 BeanNameAware、ApplicationContextAware

7)BeanPostProcessor:后置处理器。在Bean对象实例化和引入注入完毕后,

8)destory:销毁

二.spring的JavaBean管理中单例模式及原型(多例)模式

        2.1 . 默认为单例,但是可以配置多例

                单例的优点:节约内存;缺点:有变量污染;JavaBean是跟着spring上下文初始化的,容器生对象生,容器死对象死,因为单例只创建一次,所以最开始的时候就创建

                多例的优点:无变量污染;缺点:及其消耗内存;JavaBean是使用的时候才会创建,销毁跟着jvm走

举例说明:假如你有两个儿子,他们两个都想要一个玩具车。

          案例一,买一个,哥哥上午玩,弟弟下午玩,但是上午哥哥玩的时候如果玩具脏了,            刮花了,那么对于弟弟而言这个玩具已经不是原有车的状态,但是给我们省钱了=====》单例

        案例二:买两个,一人一个,这样就不存在污染,各玩各的,但是我们的钱包就扁了======》多例

        2.2.举例论证

                2.2.1 默认单例

        这个就是那辆车,bean对象,这里设了一个变量属性 num 来验证是不是单例,变量改变了

package com.zking.beanlife;import java.util.List;public class ParamAction {private int age;private String name;private List<String> hobby;private int num = 1;// private UserBiz userBiz = new UserBizImpl1();public ParamAction() {super();}public ParamAction(int age, String name, List<String> hobby) {super();this.age = age;this.name = name;this.hobby = hobby;}public void execute() {// userBiz.upload();// userBiz = new UserBizImpl2();System.out.println("this.num=" + this.num++);System.out.println(this.name);System.out.println(this.age);System.out.println(this.hobby);}
}

        再模拟方法数据,进行测试

package com.zking.beanlife;public class InstanceFactory {public void init() {System.out.println("初始化方法");}public void destroy() {System.out.println("销毁方法");}public void service() {System.out.println("业务方法");}
}

        然后,进行xml文件配置,

         最后前台测试:是否默认为单例模式,并且变量被污染了,num值发生了变化,说明被污染了,默认为单例模式

         2.2.2 设置多例

        原来的代码不变,我们再xml配置文件中,选择多例

         前台测试结果,发现num值没有被污染

 2.2.3单例与多例的初始化的时间点

        当是多例的时候,不会初始化

         而当单例的时候,会初始化

 

三.总结

单例和多例的选择也需要考虑性能和资源消耗。单例可以节省资源,但可能存在线程安全问题;多例可以保证独立性,但会增加对象创建和销毁的开销。单例适合那些无状态或者线程安全的Bean,多例适合那些有状态的Bean或者需要每次请求都创建一个新实例的情况

 

http://www.15wanjia.com/news/167561.html

相关文章:

  • 网站开发职业网站建设合约具体内容
  • 手机网站建设的行情菏泽网的网站建设的联系方式
  • 天津市住房与城乡建设厅网站加强部门网站建设工作总结
  • wordpress添加河南如何优化网站
  • 聊城制作网站网站设计策划书怎么写
  • 营销型网站概念房产投资还有前景吗
  • 手机版网站源码建e网室内
  • 高端建站需要什么条件杭州网站建设科技有限公司
  • 海洋馆网站建设郑州做网站推广
  • 一号网站建设企业网站的搭建流程
  • 政务网站建设论文蒲公英路由做网站
  • 涿州建设局网签网站网络公司注册流程
  • 网站建设给客户看的ppt模板长沙建网站的
  • 网站建设的内容网站一般多少钱
  • 大学科研项目做网站个人备案的公司网站
  • 百合怎么doi怎么做网站网站开发 浏览器
  • 欧米伽男士手表官方网站设计专业
  • 长春制作网站定制重庆网站建设重庆网站制作
  • 用jsp做网站需要的知识记事本做网站的流程
  • 虚拟机中做网站ui设计30岁后的出路
  • 吕梁网站建设kuyiso成都有哪些做网站开发的大公司
  • 兼职网站建设收费深圳 建设工程招标有限公司网站
  • wordpress 仿站 菜单网页美工设计实训
  • 南昌网站推广策划wordpress文章批量模版
  • 网站宣传活动怎么做网站建设一年多少钱
  • 做效果图的网站有哪些软件建设银行网站怎么预约纪念币
  • 购物网站优化的建议佛山网站建设佛山网站制作
  • 最新73种暴利产品竞价单页网站制作带订单后台系统模板jsp网站建设项目实战课本内容
  • 济南建站方案三六五网做网站吗
  • 地方门户网站建设网站 html 作用