步骤:

  • 导包

    • 四个核心包:

    • 日志包:由于市场上已经有更好的日志包,所以spring不用自己的,而是用apache的日志。

  • 搞对象

    由于spring是用来装对象的容器,所以得搞个对象让它装
  • 书写配置文件注册对象到容器

    建议命名为applicationContext.xml并且放在src目录下。
  • 导入约束
  • 将对象交给容器管理

    在配置文件中书写以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.3.xsd">
<!-- 将对象交给容器管理 -->
<bean name="user" class="com.fei.bean.User"></bean>
</beans>
  • 代码测试
public void fun1() {
// 1创建容器对象
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
// 2向容器要存储的对象
User user = (User) ac.getBean("user");
// 3打印user
System.out.println(user);
}

BeanFactory接口和ApplicationContext接口

  • BeanFactory接口特点:

    • spring的原始接口,针对原始接口的实现类功能比较单一
    • BeanFactory接口实现类的容器,特点是每次在获得对象时才会创建对象
  • ApplicationContext
    • 提供更多功能
    • 每次容器启动时就会创建容器中配置的所有对象
    • 有两个典型实现类:ClassPathXmlApplicationContext(从类路径下加载配置文件)、FileSystemXmlApplicationContext(从硬盘绝对路径下加载配置文件)

      web开发中,使用applicationContext,在资源匮乏的环境(例如移动端)可以使用BeanFactory
<!-- bean元素:使用该元素来描述需要spring容器管理的对象
class属性:被管理对象的完整类名
name属性:给被管理的对象起个名字,获得对象时根据该名称获得对象,可以重复,可以使用特殊字符
id属性:与name属性一样。名称不可重复,不能使用特殊字符(强烈不推荐使用)
结论:强烈推荐尽量使用name属性
-->

最新文章

  1. .Net使用Redis详解之ServiceStack.Redis(七)
  2. SIFT特征详解
  3. SQL Server下载安装
  4. Python之路,day3-Python基础
  5. mysql乱码解决
  6. View相关知识学习总结
  7. ArcGIS Server 缓存服务切图范围
  8. 可是把ie67下面的bug改好了,其实很简单,ie67下面取出来的字符串是带有空格的,不知道为什么
  9. hdu 4850 Wow! Such String!(字符串处理,yy)
  10. C#轻型ORM框架PetaPoco试水
  11. Adroid_Spinner_ArrayAdapter
  12. C# 下载资源
  13. 5.JSON
  14. java 字符串转int
  15. iOS 英语
  16. 一步步搭建最简单oauth2.0认证和授权
  17. PHP中public,private,protected,abstract等关键字用法详解
  18. 使用Tornado异步接入第三方(支付宝)支付
  19. 95%的技术面试必考的JVM知识点都在这,另附加分思路!
  20. 进制与进制转换DAY2

热门文章

  1. 126B Password[扩展kmp学习]
  2. data_model_action
  3. PADS 学习资料
  4. scrapy-redis debug视频
  5. Vue.js的列表数据的同步更新方法
  6. Vagrant 入门 - 项目设置
  7. 最长连续公共子序列(LCS)与最长递增公共子序列(LIS)
  8. jmeter对响应数据做断言
  9. 2019 年「计算机科学与工程学院」新生赛 暨ACM集训队选拔赛 # 1
  10. from、includes、indexOf