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

支付宝手机网站支付二维码怎么做常州推广网络营销多少钱

支付宝手机网站支付二维码怎么做,常州推广网络营销多少钱,汕头网络推广,wordpress建站网站根目录目录 1.spring 管理JavaBean的过程(生命周期) 2.spring的JavaBean管理中单例模式及原型(多例)模式 2.1 . 默认为单例,但是可以配置多例 2.2.举例论证 2.2.1 默认单例 2.2.2 设置多例 2.2.3单例与多例的初始化的时…

目录

1.spring 管理JavaBean的过程(生命周期)

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

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

2.2.举例论证

   2.2.1 默认单例

 2.2.2 设置多例

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


1.spring 管理JavaBean的过程(生命周期)

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

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

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

  •  通过XMLJava annotation(注解)以及Java Configuration(配置类),等方式配置JavaBean,现在我用的是xml配置文件的方式,BeanDefinitionReader:解析Bean的定义。在Spring容器启动过程中,会将Bean解析成Spring内部的BeanDefinition结构;理解为:将spring.xml中的<bean>标签转换成BeanDefinition结构,有点类似于XML解析。
  • BeanDefinition:包含了很多属性和方法。例如:id、class(类名)、scope、ref(依赖的bean)等等。其实就是 将bean(例如<bean>)的定义信息 存储到这个对应BeanDefinition相应的属性中,最终得到List<BeanDefinition>
  • BeanFactoryPostProcessor:是Spring容器功能的扩展接口。JavaBean初始化之前       先执行自己的业务
  • BeanFactory:bean工厂。它按照我们的要求生产我们需要的各种各样的bean。
  • Aware感知接口:在实际开发中,经常需要用到Spring容器本身的功能资源,例如:BeanNameAware、ApplicationContextAware等等,BeanDefinition 实现了 BeanNameAware、ApplicationContextAware
  • BeanPostProcessor:后置处理器。在Bean对象实例化和引入注入完毕后,
  • destory:销毁

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

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

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

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

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

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

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

2.2.举例论证

                2.2.1 默认单例

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

package com.sy.beanlife;import com.sy.ioc.service.UserService;
import com.sy.ioc.service.impl.UserServiceImp;
import com.sy.ioc.service.impl.UserServiceImpl;import java.util.List;public class ParamAction {private int age;private String name;private List<String> hobby;private int num = 1;private UserService userService=new UserServiceImp();// 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++);userService = new UserServiceImpl();System.out.println(this.name);System.out.println(this.age);System.out.println(this.hobby);}
}

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

package com.sy.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单例与多例的初始化的时间点

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

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

今天小编的分享就结束呐,生活总是需要不断去学习新的知识,多想想然后再去实操,持之以恒,经验和思维都会发生转变,我们要保持谦虚学习和自信的态度,各位加油!

http://www.yayakq.cn/news/987409/

相关文章:

  • 网站icp查询教育培训推广网站模板
  • 四川手机网站seo公司后付费
  • 加盟好项目企业网站如何去做优化
  • 江苏城乡住房建设部网站湖南营销型网站建设多少钱
  • 高端做网站哪家好win2012 iis添加网站
  • 网站mip怎么做房地产设计师
  • 网站建设服务费计什么科目建筑工程网上办事系统
  • 广州网站开发定制需要多少钱网站后台登录系统是怎么做的
  • 邢台seo关键词引流湛江seo推广公司
  • 上海市建设项目施工审图网站安装多个wordpress
  • 做网站高校视频十大行情软件网站下载
  • 移动网站开发源代码稿定设计官方免费下载
  • 大连网站建设 仟亿给个网站你们会感谢我的
  • 怎么样做好网站运营嵌入式开发工程师
  • 杭州网站优化搜索科技与生活
  • 怀化找什么人做网站黄山旅游攻略必去景点
  • 河南郑州哪里可以做公司网站wordpress外链视频
  • 安徽省工程建设信用平台网站桥头镇做网站
  • 汽车最好网站建设南昌网站优化
  • 柳州市城市建设局网站个人网页案例
  • 网站建设 培训班 成都海口网站建设介绍
  • 深圳市宝安网站建设线上ui设计培训哪个好
  • 网站里的专题页面大气网络公司网站源码
  • 小企业建网站眉山做网站
  • 微商水印相机做网站专业网站建设公司兴田德润在哪里
  • 网站首页新闻模板中建八局土木建设有限公司网站
  • 南京华夏天成建设有限公司网站网站视频是什么软件做的
  • 推荐做网站的话术出口外贸是做什么的
  • 广州省建设厅官方网站温州网站制作价格
  • 申请网站做自己的产品二手车网站程序