Spring 是什么

  Spring是由Apache开发的一种轻量型Java框架,能够更加便捷使用JavaBean(之前只有EJB才能实现)

  Spring的主要优势:分层架构:

    1. DAO层:(Data Access object)数据访问对象,一个数据库的接口
    2. Service层:对于业务的判断和处理
    3. Controller层:接收用户的请求以及和页面的交互

  Spring是一个IOC(DI)容器和AOP模式框架。

    这里需要解释 什么是IOC,什么是AOP

    1.IOC(DI):Inversion of Control 控制反转

  它是一种设计模式:在对象被创建的时候,由一个调控系统内所有对象的外界实体将其依赖的对象的引用传递给它。(通俗来讲:在A类中调用B类的对象b,可以直接调用外界new好的对象注入到A类中,避免内部类之间的耦合)而它最常见的方法就是依赖注入(Dependency Injection 简称:DI)

2.AOP: Aspect Oriented Programming 面向切面编程

  通过预编译的方式和运行期间动态的管理,实现在不修改源代码的基础上给程序添加功能的一种技术,比如将日志记录,性能统计等代码从业务逻辑代码中划分出来。在对他们的行为改变的时候不影响其他业务逻辑代码。

Spring 开发环境的搭建

  1.所需jar包:

    (1)spring-context:装载bean的定义并组装起来。

  (2)spring-core:发现,建立并维护bean与bean之间的关系所需要的一系列工具

  (3)spring-beans:(Spring中的主角)Spring的依赖注入正是将new出来的对象包裹在bean中注入到程序中的

  (4)spring-expression:一个强大表达式解析语言,支持在运行时动态的解析表达式给对象赋值(目前不是很理解)

  (5)commons-logging: 提供简单日志以及日志解耦功能(解耦功能暂时也没有用过)

通过maven工程加载:

   <dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>5.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
</dependencies>

2.配置xml文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd "> </beans>

  Spring的配置文件用于Spring工厂进行 Bean生产,依赖注入以及Bean实例。其中命名为applicationContext.xml是Spring的默认配置文件,当容器找不到指定的其他xml文档时,默认加载这个文件。

  解析xml文件中的beans标签及属性信息:

  (1)beans:整个配置文件的根节点,包含一个或多个bean元素

  (2)xmlns: xml namespace当前xml指定的命名空间

  (3)xmlns:xsi :指的是xml所要遵循的标签规范,xmlns的一个属性

  (4)xsi:schemaLocation:指定的命名空间对应的验证文件,就是xml书写时需要遵循的语法,用于声明了目标命名空间的模式文档。xsi的一个属性。在schemaLocation中的引用都是 成对存在的。

  例如:

http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd

  (5)xsd文件: XML Schemas Definition xml的结构定义

  

人生若只如初见---Spring概述以及环境的搭建的更多相关文章

  1. 《微信小程序七日谈》- 第一天:人生若只如初见

    <微信小程序七日谈>系列文章: 第一天:人生若只如初见: 第二天:你可能要抛弃原来的响应式开发思维: 第三天:玩转Page组件的生命周期: 第四天:页面路径最多五层?导航可以这么玩 微信小 ...

  2. 【Linux探索之旅】第一部分第五课:Unity桌面,人生若只如初见

    内容简介 1.第一部分第五课:Unity桌面,人生若只如初见 2.第一部分第六课预告:Linux如何安装在虚拟机中 Unity桌面,人生若只如初见 不容易啊,经过了前几课的学习,我们认识了Linux是 ...

  3. python 自动化之路 day 01 人生若只如初见

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 Python 注释 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式i ...

  4. Spring MVC开发环境的搭建和实例

    一.安装jdk 二.安装tomcat 三.安装maven 新增环境变量MAVEN-HOME,并在path变量中添加bin路径 四.安装IntelliJ IDEA 五.创建maven web项目选择jd ...

  5. Spring+SpringMVC+Mybatis环境的搭建(使用Intellij IDEA)

    前言:本文主要介绍利用IDEA如何搭建SSM环境,并使用mybatis的逆向生成功能,根据数据表生成对应mapper接口和sql映射文件.具体步骤如下. 开发环境: IDEA 14.1.7 maven ...

  6. [原创]java WEB学习笔记54:Struts2学习之路---概述,环境的搭建

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  7. Spring 源码阅读环境的搭建

    前言 本文记录了 Spring 源码环境的搭建方式,以及踩过的那些坑!​当前版本:5.3.2-SNAPSHOT. 环境准备 Git JDK master 分支需要 JDK 11 5.2.x 分支, J ...

  8. Spring概述

    layout: post title: Spring概述 tags: [Java,Spring,IOC,AOP] --- Spring是一个开源的轻量级Java SE(Java 标准版本)/Java ...

  9. 基础知识(09) -- Spring 概述

    Spring概述-------------------------------------------------------------------------主要内容: 1.Spring是什么 2 ...

随机推荐

  1. 实用脚本awk

    非常实用的awk 有时候需要去服务器下载几个日志 日志太多,翻滚起来很麻烦,操作又慢又复杂. 可以使用这个下载最新的两个文件 ls -lt | head -3 | awk -F ' ' '{if(NR ...

  2. 设计模式(三)Template Method模式

    在父类中定义处理流程的框架,在子类中实现具体处理的模式就称为Template Method模式即模板方法模式. 根据下面的示例程序理解模板方法模式. package BigJunOba.bjtu.Te ...

  3. Linux之Centos7开机之后连不上网

    问题:ns33mtu 1500 qdisc noop state DOWN group default qlen 1000 解决方法: root@topcheer ~]# systemctl stop ...

  4. Mycat分布式数据库架构解决方案--配置defaultAccount属性报错解决方案

    echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!!! 该文章 ...

  5. 关于Ubuntu10.04磁盘空间不足的问题

    最近由于项目问题,需要自己写驱动,但是驱动知识太少,开始下了个内核自己玩玩,没想到的是内核下好了,Ubuntu待机后却登录不了了,重启了好几次也不行,而且颜色是蓝色,右上角还提示:Install pr ...

  6. 全栈项目|小书架|服务器开发-Koa2 全局异常处理

    什么是异常 做开发的基本都知道异常,像Android开发中常见的ANR异常.空指针异常,服务器开发中经常遇到的异常404,500异常,还有一些其他常见的异常,具体可见HTTP状态码. 基本上这些异常可 ...

  7. JAVA程序打包方法-挺好

    https://blog.csdn.net/dj0721/article/details/72462688/

  8. csps模拟测试70

    又炸了,T1没开$long long$,炸掉$50pts$,昨天因为SB错误挂掉$100pts$. 我kuku了,以后细心点吧.

  9. ARP协议字段解读

    Hardware type : 硬件类型,识别链路层协议 Protocol type : 协议类型,标识网络层协议 Hardware size : 硬件地址大小,标识MAC地址长度,这里是6个字节(4 ...

  10. Md5实例

    MD5实例 我的md5源码 当我们对数据进行操作时,存储到数据库时,有时候不希望别人能够看到,通过md5能够实现对数据的加密. java代码 ```javaimport org.springframe ...