一.spring中的各个依赖,及分类
(1)spring基础包(一)概览(二)依赖代码
(2)AOP切面(一)概览(二)依赖代码
(3)事务(一)概览(二)相关代码
(4)数据库(一)概览(二)相关代码
(5)web(一)概览(二)相关代码
(6)日志(一)概览(二)依赖代码
(7)servlet(一)概览(二)依赖代码
(8)mybatis(一)概览(二)依赖代码
(8)activiti工作流(一)概览(二)依赖代码
(9)shiro(Java安全框架)(一)概览(二)依赖代码
(10)freemarker(.ftl)(一)概览(二)依赖代码
(11)thymeleaf(.html)(一)概览(二)依赖代码
(1)spring基础包
(一)概览
junit : maven框架中单元测试的各种包 . spring-test : 对JUNIT等测试框架的简单封装.
spring-core : spring的核心工具包.
spring-beans : spring IOC(Inversion of Control控制反转)的基础实现,包含访问配置文件,创建和管理bean等.
spring-context : 在基础IOC功能基础上提供扩展服务,此外还提供了许多企业级服务的支持,有邮件服务,任务调度,JNDI定位,EJB继承,远程访问,缓存以及多种视图层架构支持.(对Context来说他就是要发现每个Bean之间的关系,为它们建立这种关系并且要维护好这种关系。所以Context就是一个Bean关系的集合,这个关系集合又叫Ioc容器,一旦建立起这个Ioc容器后Spring就可以服务了.)
spring-context-support : Spring context的扩展支持,用于mvc方面.将第三方库整合进 Spring 应用上下文提供支持。
(二)依赖代码
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
(2)AOP切面
(一)概览
spring-aop : spring面向切面编程,提供AOP(面向切面编程)的实现.
spring-aspects : Spring提供的对AspectJ框架的整合.
aopalliance : 这是AOP联盟的API包,里面包含了针对面向切面的接口.通常Spring等其它具备动态织入功能的框架依赖此包。
aspectjweaver : 简单理解,支持切入点表达式等等,像↓ .<–<aop:pointcut id=“pc” expression=“execution(* com.qf.service..(…))”/–>
(二)依赖代码
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.13</version>
</dependency>
(3)事务
(一)概览
spring-tx : 声明式事务相关配置包.
(二)相关代码
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
(4)数据库
(一)概览
spring-jdbc : 对jdbc简单的封装.
c3p0 : c3p0数据库连接池
mysql-connector-java : Java 连接MySQL需要驱动包,否则JDBC无法访问数据库(无法注册驱动(没有合适的司机))
(二)相关代码
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
(5)web
(一)概览
spring-web : 包含Web应用开发时,用到spring框架时所需的核心类,包括自动载入ApplicationContext 特性的类,Struts与jsf继承类,文件上传的支持类,Filter类和大量工具辅助类
spring-webmvc : 包含springmvc框架相关的所有类.包含国际化,标签,Theme,视图展示的FreeMaker,JasperReports,Tiles,Velocity,XSLT相关类.当然,如果你的应用了独立的MVC框架,则无需这个JAR文件里的任何类.
jstl : JSP标准标签库 (c:if)
(二)相关代码
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.3.18.RELEASE</version>
</dependency>
(6)日志
(一)概览
log4j : 日志文件相关包
slf4j-api : 日志的api,(api:Application Programming Interface,即应用程序编程接口).
slf4j-log4j12 : 即slf4j-api提供接口,slf4j-log4j提供具体的实现。也就是 slf4j只是一个日志标准,并不是日志系统的具体实现,如果项目只有slf4j的包是没有办法实现日志功能的。
commons-logging : 用来记录程序运行时的活动的日志记录
(二)依赖代码
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.25</version>
<scope>test</scope>
</dependency>
(7)servlet
(一)概览
javax.servlet-api : 是提供编写servlet时要用到 HttpServletRequest和HttpServletResponse 等对象的,但是tomcat里也有,运行时要用tomc444at自己的,所以引入这个包就能用这个包里面的了.
jstl : JSP标准标签库 (c:if)
(二)依赖代码
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
(8)mybatis
(一)概览
mybatis : mybatis相关包
mybatis-spring : spring整合mybatis
(二)依赖代码
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.6</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.2</version>
</dependency>
(8)activiti工作流
(一)概览
acticiti-engin : activiti 引擎包
jackson-databind : 序列化,与反序列化,和json的支持
activiti-spring : spring框架集合activiti
activiti-bpmn-model : activiti中bpmn文件模板包
activiti-bpmn-converter : activiti中的.bpmn文件的视图转换器
acticiti-image-genrator : activiti中图片展示器
activiti-process-validation : 验证处理的相关包
(二)依赖代码
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<version>5.22.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.3</version>
</dependency>
<!--依赖于spring,集成了spring环境-->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<version>5.22.0</version>
</dependency>
<!--bpmn模型支持包-->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-bpmn-model</artifactId>
<version>5.22.0</version>
</dependency>
<!--bpmn模型转换包,将模型转换成具体流程定义实例-->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-bpmn-converter</artifactId>
<version>5.22.0</version>
</dependency>
<!--可以将流程自动转换成图片,可以应用于软件程序中展示的流程图-->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-image-generator</artifactId>
<version>5.22.0</version>
</dependency>
<!--流程的校验器,检验流程定义是否符合规则-->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-process-validation</artifactId>
<version>5.22.0</version>
</dependency>
(9)shiro(Java安全框架)
(一)概览
shiro-all : 关于shiro的全部包
(二)依赖代码
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-all</artifactId>
<version>1.3.2</version>
</dependency>
(10)freemarker(.ftl)
(一)概览
freemarker : freemarkerxiang相关包
shiro-freemarker-tags : freemarker中使用shiro标签库所需依赖.
(二)依赖代码
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
<dependency>
<groupId>net.mingsoft</groupId>
<artifactId>shiro-freemarker-tags</artifactId>
<version>1.0.1</version>
</dependency>
(11)thymeleaf(.html)
(一)概览
thymeleaf : thymeleaf相关包
thymeleaf-spring4 : spring整合thymeleaf
(二)依赖代码
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf</artifactId>
<version>3.0.11.RELEASE</version>
</dependency>
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf-spring4</artifactId>
<version>3.0.11.RELEASE</version>
</dependency>