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

左右左布局网站建设电子图书网站开发的目的

左右左布局网站建设,电子图书网站开发的目的,保定网站设计推荐,怎么把模板导入wordpress前一篇博客介绍了Spring中的Bean的基本概念和作用域#xff08;Spring读书笔记-----Spring的Bean之Bean的基本概念 #xff09;,现在介绍Spring Bean的基本配置。 从开始我们知道Java应用中各组件的相互调用的实质可以归纳为依赖关系。根据注入方式的不同#xff0c;Bean的依…前一篇博客介绍了Spring中的Bean的基本概念和作用域Spring读书笔记-----Spring的Bean之Bean的基本概念 ,现在介绍Spring Bean的基本配置。           从开始我们知道Java应用中各组件的相互调用的实质可以归纳为依赖关系。根据注入方式的不同Bean的依赖注入可以分为两种形式           1、  属性通过property …/元素配置对应设置注入。           2、  构造器参数通过constructor-arg…/元素配置对应构造注入。           不管是属性还是构造器参数都视为Bean的依赖接受Spring容器管理依赖关系的值要么是一个确定的值要么是Spring容器中的其他Bean的引用。           在一般情况下我是不应该在配置文件中管理普通属性的引用通常只是用配置文件管理容器中的Bean实例的依赖关系。           Spring在实例化容器时会校验BeanFactory中每一个Bean的配置。这些校验包括           Bean引用的依赖Bean是否指向一个合法的Bean。           Bean的普通属性值是否获得一个有效值。         对于singleton作用域的Bean如果没有强行取消其预初始化的行为系统会在创建Spring容器时预初始化所用singleton Bean与此同时该Bean所依赖的Bean也被一起实例化。           BeanFactory与ApplicationContext实例化容器中的Bean的时机也是不同的BeanFactory等到程序需要Bean实例时才创建Bean而ApplicationContext是在创建ApplicationContext实例时会预初始化容器中的全部Bean。同时在创建BeanFactory时不会立即创建Bean实例所以有可能程序可以正确地创建BeanFactory实例但是当请求Bean实例时依然抛出一个异常创建Bean实例或注入它的依赖关系时出现错误。所以当配置错误的延迟出现会给系统带来一些不安全的因素。而ApplicationContext则是默认预初始化所有singleton作用域的Bean所以ApplicationContext实例化过程比BeanFactory实例化过程的时间和内存开销大但是一旦创建成功应用后面的响应速度会非常快同时可以检验出配置错误故一般都是推荐使用ApplicationContext作为Spring容器。            其实我们可以指定lazy-int”true”来强制取消singleton作用域的Bean的预初始。这样该Bean就不会随着ApplicationContext启动而预实例化了。           Spring可以为任何java对象注入任何类型的属性只要改java对象为该属性提供了对应的setter方法即可。 [html] view plaincopyprint? bean idperson classlee.Person      !-- Property配置需要依赖注入的属性 --      property namename valuechenming /      property nameage value22 /  /bean   bean idperson classlee.Person!-- Property配置需要依赖注入的属性 --property namename valuechenming /property nameage value22 //bean             Spring会为bean…/元素创建一个java对象一个这样的java对象对应一个Bean实例对于如上代码Spring会采用如下形式来创建Java实例。   [java] view plaincopyprint? //获取lee.Person类的Class对象  Class  personClass  Class.forName(lee.Person);  //创建lee.Person类的默认实例  Object personBean  personBean.newInStance();   //获取lee.Person类的Class对象Class personClass Class.forName(lee.Person);//创建lee.Person类的默认实例Object personBean personBean.newInStance();           创建该实例后Spring就会遍历该bean../元素的所有property…/子元素。bean…/元素每包含一个property…/子元素Spring就会为该Bean实例调用一次setter方法。类似于下面程序 [java] view plaincopyprint? //获取name属性的setter方法  String setName  setName;  //获取lee.Person类里面的Set()Name方法  java.lang.reflect.Method setMethod  personClass.getMethod(setName, aVal.getClass());  //调用Bean实例的SetName()方法  setMethod.invoke(personBean, aVal);   //获取name属性的setter方法String setName setName;//获取lee.Person类里面的Set()Name方法java.lang.reflect.Method setMethod personClass.getMethod(setName, aVal.getClass());//调用Bean实例的SetName()方法setMethod.invoke(personBean, aVal);           对于使用constructor-arg…/元素来指定构造器注入Spring不会采用默认的构造器来创建Bean实例而是使用特定的构造器来创建该Bean实例。 [html] view plaincopyprint? bean idperson classlee.Person      constructor-arg index0 valueaVal /      constructor-arg index1 valuebVal /  /bean   bean idperson classlee.Personconstructor-arg index0 valueaVal /constructor-arg index1 valuebVal //bean             针对上面的代码Spring会采用类似如下的代码来创建Bean实例 [java] view plaincopyprint? //获取lee.Person类的class对象  Class  personClass  Class.forName(lee.Person);  //获取第一个参数是aVal类型第二个参数是bVal类型的构造器  Constructor personCtr  personClass.getConstructor(aVal.getClass(),bVal.getClass());  //以指定构造器创建Bean实例  Object bean  personCtr.newInstance(aVal,bVal);   //获取lee.Person类的class对象Class personClass Class.forName(lee.Person);//获取第一个参数是aVal类型第二个参数是bVal类型的构造器Constructor personCtr personClass.getConstructor(aVal.getClass(),bVal.getClass());//以指定构造器创建Bean实例Object bean personCtr.newInstance(aVal,bVal);           上面的程序只是一个实例实际上Spring还需要根据property…/元素、contructor-arg../元素所使用value属性ref属性等来判断需要注入的到底是什么数据类型并要对这些值进行合适的类型转换所以Spring的实际处理过程会更加复杂。               读李刚《轻量级Java EE企业应用实战》转载于:https://www.cnblogs.com/zzzzw/p/4580969.html
http://www.pierceye.com/news/537228/

相关文章:

  • 中国精准扶贫网站建设现状惠安规划局建设局网站
  • 营销型网站制作建设网络营销推广技巧
  • 哪里有做网站推广的宁波招聘网站开发
  • 建站工具帝国双语网站开发
  • 呼和浩特企业网站建设赞叹天河网站建设公司
  • 新郑做网站公司吉林省建设项目招标网
  • 深圳做网站哪里最好南宁seo外包平台
  • 新开传奇网站推荐做百度推广怎么做才能有电话
  • 文件夹里内容做网站的分类做网站上线一般要多久
  • 企业网站页头背景图河南网络优化服务
  • 成品网站nike源码免费现在装宽带要多少钱
  • 綦江建设银行网站外贸精品网站建设
  • 互动性的网站做第一个php网站
  • 移动网站开发视频怎样嵌入遵义市公共资源交易平台
  • 教做美食的视频网站青岛手机网站建设报价
  • 校园网站建设网成功做网站
  • 网站策划方案如何做网页设计师职业认知
  • 助孕网站优化推广项目名称有创意大全
  • 百度制作网站福州做商城网站公司
  • 周口师范做网站做类似昵图网网站
  • 岳阳企业网站建设网站服务器暂时不可用怎么办
  • 网站的站点的管理系统网站建设组织架构
  • 怎么制作网站视频教程wordpress 导入图片
  • 淘宝网发布网站建设wordpress不能翻页
  • 怎么样可以做网站wordpress gallery widget
  • 湖北网站推广公司技巧自己做app的软件
  • 网站梦打开又提示无法访问dw网页设计代码茶文化
  • 阳江营销型网站建设wordpress防攻击插件
  • 深圳电信网络建站东莞房价2022最新价格
  • 昆山营销型网站建设温州网上商城网站建设