本文共 1977 字,大约阅读时间需要 6 分钟。
今天博主将讲解Spring框架,为大家分享学习的经验。简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。关于这两个概念我后面会详细的讲解给大家。
为什么要学习Spring,我们来看看他的优点就知道了。
1.Spring可以实现解耦,方便开发。所谓解耦,就是降低程序间的依赖关系(注意我说的是降低,不是完全消除。);Spring就是一个大的工厂,专门用于生产Bean对象,然后交由Spring来管理。2.Spring支持事务3.Spring支持Juint,可以方便测试4.Spring可以集成很多优秀的框架5.Spring的封装是的Spring对于java EE的API的使用十分简单
Spring是一个分层框架,分为20个模块,这些模块分别是Core Container、Data Access/Integration、Web、AOP(Aspect Oriented Programming)、Instrumentation和测试部分。
上面这个图片可以方便我们了解Spring的组成,但是不需要去记忆,只要有一个概念就可以了,我们在后续开发讲解中会慢慢接触这些内容。学习Spring当然是需要下载相应的jar包的,我们可以访问来下载。我将需要的zip文件放在了网盘。
链接:https://pan.baidu.com/s/1ZMextw5x620LpPiWW0M05A
提取码:q441 链接:https://pan.baidu.com/s/1kEwvqzePEDCIXCpclbPQ3w 提取码:kxyb
下载解压后找到下面5个文件。
接下来我们创建项目: 创建好工程以后,添加下面的内容: beans.xml的初始内容:UserDao的内容为:
package dao;public interface UserDao { void add();}
UserDaoImpl的内容为:
package Impl;import dao.UserDao;public class UserDaoImpl implements UserDao { @Override public void add() { System.out.println("实现了add"); }}
以前我们要想获得UserDao的对象,需要去new UserDaoImpl();但是在Spring里面,我们只需要在beans.xml里面添加:
test测试类的内容为:
package test;import dao.UserDao;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class test { @Test public void test(){ //加载beans.xml文件,那么这个时候Spring内部就会创建对象 ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); //获取对象,下面这里的UserDao就是你在beans.xml的id UserDao userDao = (UserDao) context.getBean("UserDao"); userDao.add(); UserDao userDao1 = (UserDao) context.getBean("UserDao"); //输出两次获取的对象的地址 System.out.println(userDao); System.out.println(userDao1); }}
运行结果为:
从结果我们发现Spring的为我们创建了UserDaoImpl对象,而且保证了是单例的。当然后面我们可以通过配置来实现非单例,默认是单例的。这里介绍一个概念:IOC,即Spring的控制反转,意思就是把对象的控制权交给Spring框架来管理。比如这里的UserDaoImpl的对象就是给Spring来管理。转载地址:http://kvlzi.baihongyu.com/