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

小说网站开发业务逻辑商城网站功能介绍

小说网站开发业务逻辑,商城网站功能介绍,中企动力企业邮箱入口,义乌网站建设公司书生商友DI详解 接下来学习一下依赖注入DI的细节. 依赖注入是一个过程, 是指IoC容器在创建Bean时, 去提供运行时所依赖的资源, 而资源指的就是对象. 在之前的案例中, 使用了Autowired这个注解, 完成了依赖注入这个操作. 简单来说, 就是把对象取出来放到某个类的属性中. 在一些文章中…DI详解 接下来学习一下依赖注入DI的细节. 依赖注入是一个过程, 是指IoC容器在创建Bean时, 去提供运行时所依赖的资源, 而资源指的就是对象. 在之前的案例中, 使用了Autowired这个注解, 完成了依赖注入这个操作. 简单来说, 就是把对象取出来放到某个类的属性中. 在一些文章中, 依赖注入也称为对象注入, 属性装配, 具体含义需要结合文章的上下文理解. 关于依赖注入, Spring提供了三种方式: 1.属性注入(Field Injection) 2.构造方法注入(Constructor Injection) 3.Setter注入(Setter Injection). 属性注入 属性注入通过Autowired实现的, 这里将Service类注入到Controller类中. Service public class MyService {public void sayHi() {System.out.println(Hi, MyService);} } Controller //将对象存储到Spring中 public class MyController2 {//注入方法1: 属性注入Autowired private MyService myService;public void sayHi() {System.out.println(Hi, UserController...);myService.sayHi();} }使用: SpringBootApplication public class SpringbootDemoApplication {public static void main(String[] args) {//获取Spring上下文对象ApplicationContext context SpringApplication.run(SpringbootDemoApplication.class);MyController2 myController context.getBean(MyController2.class);myController.sayHi();} } 最终运行结果如下: 构造方法注入 构造方法注入是在类的构造方法中实现注入, 如下所示: Controller //将对象存储到Spring中 public class MyController2 {private MyService myService;//注入方法2: 构造方法注入Autowiredpublic MyController2(MyService myService) {this.myService myService;}public void sayHi() {System.out.println(Hi, UserController...);myService.sayHi();} }注意事项: 如果类中只有一个构造方法, 那么Autowired注解可以省略(在Spring中, 如果一个类只有一个构造方法, 并且该构造方法不包含任何参数, 那么Spring在实例化这个类的时候会自动将其作为一个Bean注入到容器中); 如果类中有多个构造方法, 那么需要添加上Autowired来明确指明到底使用哪个构造方法.  Setter注入 Setter注入和属性的Setter方法实现类似, 只不过在设置set方法的时候需要加上Autowired注解: Controller //将对象存储到Spring中 public class MyController2 {private MyService myService;//注入方法3: Setter方法注入Autowiredpublic void setMyService(MyService myService) {this.myService myService;}public void sayHi() {System.out.println(Hi, UserController...);myService.sayHi();} } 这里注意, 对于Setter方法, 是一定要写Autowired的. Autowired存在问题 当同一类型存在多个bean时, 使用Autowired会存在问题. Component public class BeanConfig {Bean(u1)public User user1() {User user new User();user.setName(lisi);user.setAge(20);return user;}Beanpublic User user2() {User user new User();user.setName(zhangsan);user.setAge(18);return user;} } Controller public class MyController4 {Autowiredprivate User user;public void sayHi() {System.out.println(hi, UserController4...);System.out.println(user);} }运行结果: 报错的原因是, 非唯一的Bean对象. 如何解决上述问题呢? Spring提供了以下几种解决方案: Primary Qualifier Resource  使用Primary注解: 当存在多个相同类型的Bean注入时, 加上Primary注解, 来确定默认的实现. Component public class BeanConfig {Primary // 指定该bean为默认的bean实现.Bean(u1)public User user1() {User user new User();user.setName(lisi);user.setAge(20);return user;}Beanpublic User user2() {User user new User();user.setName(zhangsan);user.setAge(18);return user;} } 使用Qualifier注解: 指定要注入的bean对象. 在Qualifier的value属性中,指定注入bean的名称. Qualifier注解不能单独使用, 必须配合Autowired使用. Controller public class MyController4 {Qualifier(user2) //指定bean的名称.Autowiredprivate User user;public void sayHi() {System.out.println(hi, UserController4...);System.out.println(user);} }使用Resource注解: 是按照bean的方式注入. 通过name属性指定要注入的bean名称.  Controller public class MyController4 {Resource(name user2)private User user;public void sayHi() {System.out.println(hi, UserController4...);System.out.println(user);} } 常见面试题: Autowired和Resource的区别 Autowired是Spring框架提供的注解, 而Resource是JDK提供的注解.(Primary, Qualifier是Spring提供的注解). Autowired默认是按照类型注入, 而Resource是按名称注入. 相比于Autowired来说, Resource支持更多的参数配置, 例如name设置, 通过name获取bean.
http://www.dnsts.com.cn/news/62872.html

相关文章:

  • 淘宝客怎么建立网站人防pc网站开发计划书
  • 北京市建设管理公司网站游戏开发赚钱吗
  • 天津创思佳网络网站制作公司株洲专业网站排名优化
  • 手机网站可以做商城吗有个域名怎样做网站
  • 网站备案期间打不开合肥手机网站制作建设
  • 私人做的网站怎么挣钱网站推广的搜索引擎推广
  • php网站开发应具备能力高端猎头公司排名
  • 网站的访问量怎么查电脑上制作网站的软件
  • 怎么做网站推广和宣传室内设计公司有哪些
  • 卡片式设计的网站网站建设打造学院
  • 网站建设 需求模板牡丹江吧
  • 珠海建设网站的公司哪家好wordpress建站行吗
  • 网站流量统计主要指标包括wordpress导入 ftp
  • 软件下载网站哪个比较好网站建设方法
  • 深圳网站建设公司联华如何创建自己的软件
  • 网站 栏目添加 文章不显示常见的网络推广平台
  • 酒店类网站建设方案书东莞网络营销专业服务
  • 网站建设可行性分析报告怎样如何做网站赚钱
  • 西安网站建设优化服务公司用微信怎么做商城网站吗
  • 合肥网站建设设计外包手机电影网站怎么做的
  • 网站架构设计图怎么做wordpress 动态效果
  • 定制 网站网页特效梦工厂
  • 兰州做网站或小程序闵行郑州阳网站建设
  • 做网站不要盲目跟风网站特效
  • 网建什么意思seo服务公司
  • 可以中英切换的网站怎么做最新热点新闻事件素材
  • 民企厂房建设招标网站仿网站出售
  • 购买设备有什么网站做参考建站管理过程
  • 房产网网站专业房产网站建设公司排名
  • 汉中专业网站建设服务WordPress略缩图upload出错