Spring学习笔记1——初识Spring

一、什么是Spring?

Spring是一款主流的、开源、轻量级的企业级java应用程序开发框架,具有强大的功能和卓越的性能。
在服务器端采用三层体系架构:表现层(web)、业务逻辑层(service)、持久层(dao)。
Spring提供了web MVC框架:

  • 模型(Model)由POJO类组成,封装了应用程序数据。
  • 视图(View)渲染模型数据。
  • 控制器(Controller)负责处理用户发送的请求并生成对应的模型,然后传递给视图渲染。

二、Spring体系结构

Spring框架采用分层架构,根据不同的功能划分成多个模块。
Spring学习笔记1——初识Spring
上面的模块可按照需求进行选择使用,不必全部引入。

模块介绍

1、Data Access/Integration(数据访问/集成)
  • JDBC:提供JDBC抽象层,大幅减少对数据库的编码
  • ORM:对关系映射API(JPA、JDO、Hibernate和iBatis)提供了集成层
  • OXM:提供支持对象/XML映射的抽象层实现(JAXB、Castor、XMLBeans、JiBX和XStream)
  • JMS:java消息服务(生产和消费的信息)
  • Transactions事务:支持编程和声明式事务管理实现特殊接口类
2、Web模块
  • Web:提供基本Web开发集成特性(file上传、用Servlet监听器的IoC容器初始化和Web应用上下文)
  • Servlet:MVC——实现——>WebApp
  • Struts:支持类内的SpringApp,集成经典的Struts Web层
  • Portlet:提供在Portlet中使用MVC的实现(类似Web—Servlet模块)
3、Core Container(核心容器)
  • Beans:提供BeanFactory,是工厂模式的经典实现,Spring将管理对象称为Bean
  • Core:Spring基本组成部分(包括IoC和DI功能)
  • Context:建立于Core和Beans基础之上,是访问定义和配置任何对象的媒介,其焦点是ApplicationContext接口
  • Expression Language:运行时查询和操作对象图的表达式语言
4、其他
  • AOP:提供面向切面编程实现,允许定义方法拦截器和切入点,将代码按功能分离,降低耦合性
  • Aspects:提供与AspectJ的集成,是一个面向切面编程(AOP)的框架
  • Instrumentation:提供类工具的支持和类加载器的实现,可在特定应用服务器中使用
  • Test:支持Spring组件,用JNit/TestNG框架的测试

IOC:控制翻转,把创建对象过程交给Spring管理
AOP:面向切面,不修改源代码进行功能增强

看到上面这些一脸懵逼。。。。

三、环境配置

我们要先去官网下载需要用到的jar包,可以直接到https://repo.spring.io/release/org/springframework/spring/找自己要的版本即可,就不用到网上一路找,用浏览器下载可能会很慢,可以结合IDM下载就很香啦。 然后再下载一个日志的jar包commons-logging,地址==>http://commons.apache.org/proper/commons-logging/download_logging.cgi
Spring学习笔记1——初识Spring
spring的jar包中主要有三个文件夹
Spring学习笔记1——初识Spring
docs:API文档和开发规范
libs:jar包和源码
schema:与开发相关的schema文件,其定义了相关配置文件的约束

我们首先关注libs中的beanscontextcoreexpression
Spring学习笔记1——初识Spring
这四个jar包对应上边说的体系结构中的核心容器,是Spring的核心基础包,到时候将其导入到项目的lib目录即可

Spring学习的第一部分就到这里啦,我是条条,一起加油~

条条:该学习笔记是记录了我的学习过程,学习自动力节点c语言中文网,有不对的地方欢迎指出