【SSM框架】常用的jar包介绍

SSM框架(SpringMVC + Spring + MyBatis)常用的jar包介绍

junit.jar:

junit是java语言的单元测试框架,是程序员进行的测试,所以又成为白盒测试。Junit是xUnit的一个子集,在c++python,java等语言中都有不同的名字。里面有许多测试的封装函数,并且每一个单元测试都需要带上@Test。

<!-- 使用junit4 -->
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
    <scope>test</scope>
</dependency>

logback:

是由log4j的创始人设计的又一个开源的日志组件,当前的logback分成三个模块:

logback-core.jar

logback-classic.jar

logback-access.jar

core是其他两个模块的基础,classic是log4j的一个改良版本,access模块与Servlet容易集成提供从Http访问日志的功能。

/**************************************************************************************************************************************

名词解释:

日志:

服务器运行,数据库的操作,电脑上的程序,手机上的app在运行,服务的时候,都会产生一个叫做log的事件记录,每一行的日志都会记载着日期,具体时间,使用者,及进行的操作等。

log4j.jar:

log4j是apache的一个开源项目,通过log4j,我们可以把控制日志信息输送到你想要到达的地方,例如控制台,各种项目中的组件,文件中等等。我们可以决定每一条的日志信息输出format(格式)。在项目庞大的时候,我们就非常需要log4j这类的操作包,来查看它的输出信息。同时log4j也是一个非常强大的日志包,它内部有许多语言的接口,例如c,c++,net,sql,java等等。

****************************************************************************************************************************************/

slf4j-api.jar:

slf4j-api是简单的日志门面,是存取日志的标准接口。为什么要使用slf4j?我们要知道slf4j知识一个日志标准,并不是日志系统的具体实现,slf4j只做两件事,提供日志接口,提供获取具体日志对象的方法。logback是slf4j的具体实现。slf4j的用法就是常年不变的一句"Logger logger = LoggerFactory.getLogger(Object.class);通过LoggerFactory去拿slf4j的具体接口。

<!-- 1:日志 java日志:slf4j,log4j,
logback,common-logging 
slf4j是规范/接口
日志实现:log4j,logback,common-logging
使用slf4j+logback -->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.12</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>1.1.1</version>
</dependency>
<!-- 实现slf4j接口并整合 -->
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.1.1</version>
</dependency>

(logback-access.jar加不加就要看你项目情况而定了)

mysql-connector-java.jar:

是java连接mysql需要的驱动包,即mysql的jdbc驱动包,因为我们需要使用jdbc来连接mysql数据库。

c3p0.jar:

c3p0是一个开源的jdbc连接池,它拓展了传统的jdbc数据库连接池,支持jdbc2的标准扩展和jdbc3的规范。

为什么使用数据库连接池?

因为用户每次连接都需要验证,消耗大量的时间和资源,我们在系统初始化的时候,将数据库连接作为一个对象存放在数据库连接池中,当用户需要访问数据库时,不会创建一个新的连接,而是从数据库连接池中取出一个已经建立的空闲连接对象,用户使用结束后,对象不会关闭,而是放回数据库连接池中。数据库连接池管理连接,断开,监视数据库的连接数量和使用情况。

同时,也可以配置许多属性,例如最大连接数,连接失败重试次数,获取连接超时时间,连接断开后所有事务进行回滚操作。

<!-- 数据库相关依赖 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.35</version>
    <scope>runtime</scope>
</dependency>
<dependency>
    <groupId>c3p0</groupId>
    <artifactId>c3p0</artifactId>
    <version>0.9.1.2</version>
</dependency>

mybatis.jar:

MyBatis 是支持定制化 SQL、存储过程以及映射的持久层框架。MyBatis 避免了JDBC繁琐的代码和手动设置参数去获取结果集。MyBatis 通过简单的配置xml或者注解,将接口和 Java 的 POJOs(普通的 Java对象)映射成数据库中的记录。

<!-- DAO框架:mybatis依赖 -->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.3.0</version>
</dependency>

mybatis-spring.jar:

MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中。它将允许 MyBatis 参与到 Spring 的事务管理之中,创建映射器 mapper 和 SqlSession 并注入到 bean 中,以及将 Mybatis 的异常转换为 Spring 的 DataAccessException。最终,可以做到应用代码不依赖于 MyBatis,Spring 或 MyBatis-Spring。

<!-- mybatis自身实现的spring整合依赖 -->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>1.2.3</version>
</dependency>

standard.jar和jstl.jar:

standard和jstl是jsp编写所需要的jar包,standard是jsp的标准标签库,jstl是用于jsp页面中的el表达式。

jackson-databind.jar:

将JSON格式的数据转化为类对象,我们知道从web从服务器中拿数据,是访问api(Application Programming Interface,应用程序接口)来拿到封装成json格式的数据,在这个包中就实现了这样一个方法,就不需要我们去手动实现这一过程了。

javax.servlet-api.jar:

编写过servlet就知道要用到HttpServletRequest和HttpServletResponse等对象,这些对象都是要靠这个jar包才能使用的。但是在3.0版本前,这个包是叫做:servlet-api.jar

<!-- 3:Servlet web相关依赖 -->
<dependency>
    <groupId>taglibs</groupId>
    <artifactId>standard</artifactId>
    <version>1.1.2</version>
</dependency>
<dependency>
    <groupId>jstl</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.5.4</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
</dependency>

spring-core.jar:

Spring的核心组件,spring框架都需要用到这个jar包。

spring-beans.jar:

是那些形成Spring应用的主干的java对象。它们被Spring IOC容器初始化,装配,和管理。这些beans通过容器中配置的元数据创建。比如,以XML文件中<bean/>的形式定义。

即写了一个接口,这个接口通过一个类实现了,然后当我们要进行调用这个接口的时候,只需要找到接口,而不需要找到实现它的类。这位大佬的博客里讲得很清楚,大家看看,里面有讲到什么是IOC(控制反转)和DI(依赖注入):

https://blog.csdn.net/qq_42709262/article/details/81951402

spring-context.jar:

通过应用上下文装载bean的定义并把它们组装起来。Spring应用上下文全权负责对象的创建和组装。Spring自带了多种应用上下文的实现,它们之间主要的区别仅仅在于如何加载配置。

<!-- 1)spring核心依赖 -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-beans</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>

spring-jdbc.jar:

是spring 官方提供的一个持久层框架,对jdbc进行了抽象和封装,消除了重复冗余的jdbc重复性的代码,使操作数据库变的更简单。

spring-tx.jar:

负责在spring框架中实现事务管理功能。

<!-- 2)spring dao依赖 -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jdbc</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-tx</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>

spring-web.jar:

这个jar文件包含Web应用开发时,用到Spring框架时所需的核心类。

spring-webmvc.jar:

这个jar文件包含Spring MVC框架相关的所有类。包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、XSLT相关类。

<!-- 3)spring web相关依赖 -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>

spring-test.jar:

使用spring中对Junit框架的整合功能, 对于单元测试和集成测试的简单封装。

如果用到切面编程(AOP),还需要用到aspectjweaver.jar这个包。

<!-- 4)spring test相关依赖 -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-test</artifactId>
    <version>4.1.7.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.aspectj</groupId>
    <artifactId>aspectjweaver</artifactId>
    <version>1.8.13</version>
</dependency>
发布了22 篇原创文章 · 获赞 19 · 访问量 3534

猜你喜欢

转载自blog.csdn.net/KnightHONG/article/details/102934513