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

做外贸的几个网站网站推广应该坚持什么策略

做外贸的几个网站,网站推广应该坚持什么策略,汽配出口做哪个网站好,国企500强公司有哪些目录 1. 不创建参数类型的Bean 2. 创建一个与参数同类型同名的Bean 3. 创建多个与参数同类型,其中一个与参数同名的Bean 4. 创建一个与参数同类型不同名的Bean 5. 创建多个与参数同类型但不同名的Bean 对于Bean修饰的方法,也可能需要从外部传参&…

目录

1. 不创建参数类型的Bean

2. 创建一个与参数同类型同名的Bean

3. 创建多个与参数同类型,其中一个与参数同名的Bean

4. 创建一个与参数同类型不同名的Bean

5. 创建多个与参数同类型但不同名的Bean


对于@Bean修饰的方法,也可能需要从外部传参,现说明@Bean的参数传递问题。

仍以BeanConfig类的userInfo方法为例,假设当前方法需传递一个名为name的String类型的参数。

1. 不创建参数类型的Bean

BeanConfig类内容如下:

package com.example.iocdemo1.Config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class BeanConfig {@Beanpublic UserInfo userInfo(String name){UserInfo userInfo1=new UserInfo();userInfo1.setId(1);userInfo1.setName(name);userInfo1.setAge(20);return userInfo1;}
}

运行程序,启动日志报错如下:

即将参数name也视为一个bean,该bean的类型为String,当前并未定义该bean,故报错。

2. 创建一个与参数同类型同名的Bean

修改BeanConfig类,为其增加一个名为name的String类型的Bean如下:

package com.example.iocdemo1.Config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class BeanConfig {@Beanpublic String name(){return "wangwu";}@Beanpublic UserInfo userInfo(String name){UserInfo userInfo1=new UserInfo();userInfo1.setId(1);userInfo1.setName(name);userInfo1.setAge(20);return userInfo1;}
}

保持启动类内容不变,重新启动程序:

可见此时userInfo方法接收参数成功;

3. 创建多个与参数同类型,其中一个与参数同名的Bean

当前userInfo方法需要一个名为name类型为String的参数,现创建两个String类型的Bean,一个Bean(name)与形参名保持一致,另外一个Bean(name2)与形参名不同:

package com.example.iocdemo1.Config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class BeanConfig {@Beanpublic String name(){return "wangwu";}@Beanpublic String name2(){return "zhaoliu";}@Beanpublic UserInfo userInfo(String name){UserInfo userInfo1=new UserInfo();userInfo1.setId(1);userInfo1.setName(name);userInfo1.setAge(20);return userInfo1;}
}

重新启动程序,日志如下:

可见当前userInfo方法接收了与参数名相同(name)的那个Bean;

4. 创建一个与参数同类型不同名的Bean

当前userInfo方法需要的参数类型为String,现创建一个String类型的Bean,该Bean的名称(name2)与形参名称(name)不同:

package com.example.iocdemo1.Config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class BeanConfig {@Beanpublic String name2(){return "zhaoliu";}@Beanpublic UserInfo userInfo(String name){UserInfo userInfo1=new UserInfo();userInfo1.setId(1);userInfo1.setName(name);userInfo1.setAge(20);return userInfo1;}
}

运行程序,日志如下:

可见当前userInfo方法接收了与参数虽然名称不同(name)但类型相同(String)的那个Bean;

5. 创建多个与参数同类型但不同名的Bean

当前userInfo方法需要的参数类型为String,现创建两个String类型的Bean,两个Bean的名称(name2和name3)都与形参名称(name)不同:

package com.example.iocdemo1.Config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class BeanConfig {@Beanpublic String name2(){return "zhaoliu";}@Beanpublic String name3(){return "tianqi";}@Beanpublic UserInfo userInfo(String name){UserInfo userInfo1=new UserInfo();userInfo1.setId(1);userInfo1.setName(name);userInfo1.setAge(20);return userInfo1;}
}

报错如下:

总结@Bean接收参数的原则:

1、首先根据类型获取Bean,若没有与参数类型匹配的Bean则报错

2、若满足类型要求的Bean有多个,则优先获取与参数同名的Bean。 

3、若存在一个名称虽不匹配但类型匹配的Bean,则该Bean也可被@Bean接收

4、若存在多个名称虽不匹配但类型匹配的Bean,则无法匹配Bean,报错;

http://www.khdw.cn/news/53555.html

相关文章:

  • 网站密码怎么做seo策略工具
  • 静态网站做301重定向长沙新媒体营销
  • 郑州工商注册郑州seo顾问外包公司
  • 关于做旅游网站的参考文献seo优化宣传
  • 搜狗搜索引擎推广口碑优化seo
  • 网站建设原理与实践短视频营销策划方案
  • php网站登录系统怎么做什么是seo优化?
  • 新疆建设兵团林业局网站微信小程序官网
  • 网站建设的制度baidu优化
  • 呼市网站制作招聘万网域名注册查询
  • 石大网页设计与网站建设网站seo软件
  • 自建站什么意思营销型网站建设
  • 跨境电商创业新手怎么做北京优化网站推广
  • 3d视频制作公司铁力seo
  • 网站建设用阿里还是华为云网络营销策划的目的
  • 新闻网站跟贴怎么做百度seo排名查询
  • 网站tdk优化文档网络推广企业
  • 东莞企业网站seo江苏seo和网络推广
  • wordpress付费汉化主题seo关键词排名优化评价
  • 网络商城网站怎样做关键词优化武汉seo首页
  • 佛山乐从网站建设网上推广平台有哪些
  • 做网站销售大数据营销精准营销
  • 游戏下载网站 wordpressaso关键词优化工具
  • 给领导发网站建设可行性方案邮件怎么写百度高级搜索技巧
  • 浙江网站设计 site宁波优化网站排名软件
  • 福州市交通建设集团有限公司 网站营销型企业网站案例
  • 网站开发公司需要哪些资质搜索引擎优化的作用
  • 做flash网站广州网站建设费用
  • 廊坊建网站外包买卖交易平台
  • 怎么描述网站主页做的好全球网站排名前100