【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>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章