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

企业首次建设网站的策划方案百度ai人工智能平台

企业首次建设网站的策划方案,百度ai人工智能平台,网站配置服务Wordpress,响应式旅游网站模版构造方法实现实例化 无参构造器实例化 我们之前用的就一直是无参构造器实现实例化,虽然没有在类中写构造器,但是每个类都会有一个默认的无参构造器 有参构造器实例化 相比于无参构造器,我们只需要传入参数就可以了 我们可以通过construc…

构造方法实现实例化

无参构造器实例化

我们之前用的就一直是无参构造器实现实例化,虽然没有在类中写构造器,但是每个类都会有一个默认的无参构造器

有参构造器实例化

相比于无参构造器,我们只需要传入参数就可以了

我们可以通过constructor-arg标签来传递参数

<bean id="UserService" class="com.xxx.service.impl.UserServiceImpl" autowire="byName" scope="prototype"><constructor-arg name="name" value="captain"/><constructor-arg name="age" value="18"/><property name="userDao" ref="UserDao"/></bean>

当然传递自建的类也是可以的

<bean id="UserService" class="com.xxx.service.impl.UserServiceImpl" autowire="byName" scope="prototype"><constructor-arg name="name" value="captain"/><constructor-arg name="age" value="18"/><constructor-arg name="userDao" ref="UserDao"/><!--<property name="userDao" ref="UserDao"/>--></bean>

这里也可以把类的传参看作是依赖注入的构造方法

工厂方法实现实例化

静态工厂

静态工厂实现实例化比较的简单,因为方法是静态的,不需要创建一个对象去调用方法,因此我们可以直接通过我们的factorybean去实例化

<bean  id="UserDao1" class="com.xxx.factory.BeanFactory1" factory-method="userDao"/>

非静态工厂

    <bean id="BeanFactory2" class="com.xxx.factory.BeanFactory2"/><bean id="UserDao2" factory-bean="BeanFactory2" factory-method="userDao"/>

这里相当于我们要先实例化我们的工厂对象,通过这个对象在调用我们的方法,类似于要先new一个对象才能去调用方法

通过实现BeanFactory接口

我们首先写一个类实现FactoryBean接口,之后重写一下里面的方法
我们可以看到getobject方法就和我们之前的工厂中获取bean对象的方法相同,里面只要写上我们想获取的bean

public class BeanFactory3 implements FactoryBean<UserDao> {@Overridepublic UserDao getObject() throws Exception {return new UserDaoImpl();}@Overridepublic Class<?> getObjectType() {return UserDao.class;}
}

这个的xml配置的非常的简短

<bean id="UserDao3" class="com.cjh.factory.BeanFactory3"/>

或许你可能会有疑问,这样我们通过getbean获取的bean对象不是应该是BeanFactory3吗,为什么实际上我们获取的还是UserDaoImpl
在这里插入图片描述

实际上我们可以通过断点调试看一下
我们会发现这样一个缓存,原来我们实际上调用的是这个缓存的内的键值
在这里插入图片描述
而且这个缓存是只有当我们的bean实例化时才会产生,相当于是一种延时,可以减少我们内存的花销,使得性能更优

tips

那么如果我们还是想调用BeanFactory呢
我们可以在bean的名字前加一个&

        ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");Object userDao3 = applicationContext.getBean("&UserDao3");System.out.println(userDao3);

在这里插入图片描述
可以看到我们取到的就是BeanFactory

没用的小知识又增加了呢

http://www.yidumall.com/news/96500.html

相关文章:

  • 聊城做网站做的不错的网络公司网络软文营销是什么意思
  • 鹰潭网站开发百度竞价入门教程
  • 长春做网站wang浙江百度推广
  • 东莞做网站有哪些福州短视频seo平台
  • 济宁中小企业网站建设线上推广软件
  • 深圳宝安建网站万网域名注册信息查询
  • 自己做的网站容易被黑吗百度竞价排名是什么
  • 跨境b2c网站免费b站推广网址有哪些
  • 一起做玩具网站酒店营销策划与运营
  • 浙江网站备案流程怎么自己制作网页
  • 网站备案会掉吗怎么做
  • 网站建设公司怎么赚钱seo优化广告
  • 武汉汉阳网页设计培训seo编辑是干什么的
  • 企业网站源码库怎么优化推广自己的网站
  • 浙江做网站广告推广平台赚取佣金
  • 大的网站制作seo优化器
  • 定制网站建设公司哪家好企业网站建设案例
  • 网站文章标题改了 百度快照多久能改营销策划案例
  • 怎么制作网站app百度免费安装
  • 我想自学建网站市场营销的策划方案
  • 成都如何做网站无锡网站建设
  • 青岛网站建设团队百度快照是干什么的
  • 网站推广活动策划太原网站快速排名提升
  • 怎么查看网站是哪家公司做的搜索量用什么工具查询
  • 河南工程建设信息网官网深圳百度关键字优化
  • 江苏住房建设厅主办网站什么是白帽seo
  • 那个做头像的网站好seo优化公司排名
  • 专注网站建设怎么样友情链接是外链吗
  • 苏州吴中区做网站的seo优化的价格
  • 在线网页设计培训机构湛江百度seo公司