Java架构师之旅(十一)

45 篇文章 3 订阅
29 篇文章 1 订阅

夜光序言:

风说:我要哭。

于是,就下雨了。

风说 ,我想你了。

于是,满世界的刮起了风。

 

正文:

IOC和DI区别

 

IOC:控制反转,把对象的创建交给spring来进行管理

DI:依赖注入~~这个有点帅的,我记得opentcs就涉及~~

向类里面的属性设置值~

 

关系:依赖注入是不可以单独存在的,需要在IOC基础上进行操作~~

在实际开发中,action调用service,service调用dao

我们:

肯定要加在spring的核心配置文件

//1、夜光:加载配置文件,之后根据配置来创建对象

ApplicationContext context =

new ClassPathXmlApplicationContext("bean1.xml");

New对象,功能可以实现,效率很低

 

夜光:可以交给服务器来启动,一启动服务器,代码就运行

 

实现思想:把加载配置文件和创建对象过程,在服务器启动的时候来完成~~

实现原理:

  • servletcontext对象,我们可以用监听器知道
  • 监听器,监听什么时候创建
  • 具体使用:我说的详细一点(底层的基本原理)

在服务器启动的时候,为每个项目创建一个servletcontext对象

--在servletcontext对象创建时候,使用监听器可以具体到servletcontext对象在什么时候创建

--使用监听器监听到servletcontext对象创建时候

--加载spring配置文件,把配置文件配置对象创建

--把创建出来的对象放到servletcontext域对象里面(setAttribute)

--获取对象时候,到servletcontext域里面得到(getAttribute)

spring的bean管理注解准备

 

之前的都比较繁琐,我们接下来用一个更加简单的方式

 

 

注解的方式:

什么叫注解,我在开发中看到许多前辈都是这样写,一开始看到感觉很帅

(注解可以替代配置文件,但是不可能完全替代配置文件)

 

Spring注解开发准备:

  1. 注解创建对象
  2. 注解注入属性

 

 

 

接下来:创建类,创建方法~~

@Test

public void testUser(){

ApplicationContext context=

new ClassPathXmlApplicationContext("bean1.xml");

/*之前我们是根据的id值,现在可以根据value值*/

User user = (User) context.getBean("user");

System.out.println(user);

user.add();

}

spring的bean管理(注解注入属性)

@Test

public void testUser(){

ApplicationContext context=

new ClassPathXmlApplicationContext("bean2.xml");

/*之前我们是根据的id值,现在可以根据value值*/

GeniusService geniusService = (GeniusService) context.getBean("geniusService");

System.out.println(geniusService);

geniusService.add();

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值