博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring系列教程——01Spring入门简介与案例
阅读量:3959 次
发布时间:2019-05-24

本文共 1977 字,大约阅读时间需要 6 分钟。

Spring系列教程——01Spring入门简介与案例

今天博主将讲解Spring框架,为大家分享学习的经验。简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。关于这两个概念我后面会详细的讲解给大家。

文章目录

一.Spring的优点

为什么要学习Spring,我们来看看他的优点就知道了。

1.Spring可以实现解耦,方便开发。所谓解耦,就是降低程序间的依赖关系(注意我说的是降低,不是完全消除。);Spring就是一个大的工厂,专门用于生产Bean对象,然后交由Spring来管理。2.Spring支持事务3.Spring支持Juint,可以方便测试4.Spring可以集成很多优秀的框架5.Spring的封装是的Spring对于java EE的API的使用十分简单

二.Spring体系结构

Spring是一个分层框架,分为20个模块,这些模块分别是Core Container、Data Access/Integration、Web、AOP(Aspect Oriented Programming)、Instrumentation和测试部分。

在这里插入图片描述
上面这个图片可以方便我们了解Spring的组成,但是不需要去记忆,只要有一个概念就可以了,我们在后续开发讲解中会慢慢接触这些内容。

三.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/

你可能感兴趣的文章
机器学习算法汇总:人工神经网络、深度学习及其它
查看>>
解决Spring中AOP不能切入Struts的DispatchAction方法的问题
查看>>
出国以后才知道英语应该怎么学
查看>>
计算机专业权威期刊投稿经验总结
查看>>
如何在三个月内学会一门外语?
查看>>
看看你对Linux到底了解多少?
查看>>
网上看到的:ARM入门最好的文章(转)
查看>>
中国最美情诗100句
查看>>
javascript注册window的onload事件问题研究
查看>>
客户端技术分页控件javascript+css,可用于任何服务器端技术
查看>>
学习Swing 的网站[转]
查看>>
Google App engine 的第一个应用 midispot
查看>>
提问的智慧
查看>>
关于dom4j无法解析xmlns问题及生成非UTF-8字符集乱码问题的解决
查看>>
很好的一篇文章 如果让我重做一次研究生 王汎森
查看>>
保护U盘批处理文件
查看>>
hibernate 自动导入sql 文件import.sql 国际化编码的问题的解决方案
查看>>
第七颗头骨 & 忘魂花 凤凰
查看>>
李小龙哲学之言
查看>>
[心情] 如果有一天
查看>>