我们在搭建SSH框架的时候,需要引入各自的一些jar包

首先,先来看一下我们使用的SSH的各自版本及引入的jar包。

  struts2.3.1.2:

struts2-core-2.3.1.jar

javassist-3.11.0.GA.jar

commons-io-2.0.1.jar

commons-lang-2.5.jar

commons-fileupload-1.2.2.jar

xwork-core-2.3.1.2.jar

freemarker-2.3.18.jar

ognl-3.0.4.jar

struts2-spring-plugin-2.3.1.2.jar

 Spring2.5.6

spring.jar

commons-logging-1.1.1.jar

common-annotations.jar

aspectjrt.jar

aspectjweaver.jar

cglib-nodep-2.1_3.jar

如果用BasicDataSource来配置数据库连接,还要加入2个包:

commons-pool.jar

commons-dbcp.jar

  Hibernate3.6.8

hibernate3.jar

hibernate-jpa-2.0-api-1.0.1.jar

antlr-2.7.6.jar

commons-collection-3.1.jar

dom4j-1.6.1.jar

javassist-3.12.0.GA.jar

jta-1.1.jar

slf4j-api-1.6.1.jar

slf4j-nop-1.6.4.jar

展示完这一堆我们陌生又熟悉的jar包后,现在就开始逐个讲解:

1)Struts中的jar包 

jar包名称

作用

struts2-core-2.x.x.jar

struts2的核心jar包

javassist-3.x.x.GA.jar

一个开源的分析、编辑和创建Java字节码的类库(hibernate中也需要,引入其中一个即可)

commons-io-2.x.x.jar

commons项目(commons项目就是java中一些常用的公共的组件)的io子项目,是处理异常的

commons-lang-2.x.jar

commons项目中的lang包

commons-fileupload-1.x.x.jar

commons项目中的关于文件上传的包, struts2.1.6版本后必须加入此文件

xwork-core-2.x.x.jar

xwork的核心jar包,由于struts2是webwork的升级版本,所以必定对其有所依赖(struts2在其基础上构建)

freemarker-2.x.x.jar

支持freemarker(struts2的UI标签的模板使用FreeMarker编写)的,在webwork中也有

ognl-3.x.x.jar

支持ognl语言(对象图导航语言(Object Graph Navigation  Language))的,struts2框架通过其读写对象的属性,webwork也支持ognl语言

struts2-spring-plugin-2.x.x.jar

struts2与spring集成时使用的,引入该jar包后需要在struts.xml中指定struts的ObjectFactory(可以是struts也可以是spring),不然程序会报错

其中每一个jar包的版本不是根据struts来定的,而是根据各自的出处的版本更新的,所以你可以看到一个struts版本中的各个jar包的版本各不相同。(下面讲解的spring和hibernate也一样)

2)Spring中的jar包

jar包名称

作用

spring.jar

spring的核心jar包

commons-logging-1.x.x.jar

ASF出品的日志包,struts2 2、spring、hibernate框架使用这个日志包来支持Log4J和JDK 1.4+的日志记录

common-annotations.jar

支持注解的包

aspectjrt.jar

aspectjweaver.jar

支持AOP的包

cglib-nodep-2.x_x.jar

支持cglib动态代理的包

commons-pool.jar

commons-dbcp.jar

支持BasicDataSource来配置数据库连接(如果不用BasicDataSource配置数据库则不需要引入)

3)Hibernate中的jar包

jar包名称

作用

hibernate3.jar

hibernate的核心jar包

hibernate-jpa-2.x-api-x.x.x.jar

对JPA(Java持久化API)规范的支持

antlr-2.x.x.jar

语言转换工具,hibernate利用它实现HQL到SQL的转换

commons-collection-3.x.jar

commons项目中的子项目,是对collection集合的封装

dom4j-1.x.x.jar

对dom4j的封装,是解析xml文件的

javassist-3.x.x.GA.jar

一个开源的分析、编辑和创建Java字节码的类库

jta-x.x.jar

hibernate对事务的处理

slf4j-api-x.x.x.jar

一个日志系统的服务的api,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统

slf4j-nop-x.x.x.jar

对slf4j-api-x.x.x.jar的一个实现,这个jar包要去slf4j官网下载slf4j-1.6.4集成包

SSH中的jar包讲解的更多相关文章

  1. SSH中的jar包讲解(1)

    我们在搭建SSH框架的时候,需要引入各自的一些jar包,相信很多初学者跟我一样,搜个资料,照搬过来(当然版本还得对应),至于为什么要引入这些个jar包,引入它们的作用是啥子,一头雾水,今天我就来跟这些 ...

  2. SSH框架应用中常用Jar包用途介绍

    struts2需要的几个jar包:1)xwork-core-2.1.62)struts2-core-2.1.83)ognl-2.7.34)freemarker-2.3.155)commons-io-1 ...

  3. Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图(转载)

    Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图 2017年04月05日 10:53:13 李学凯 阅读数:104997更多 所属专栏: Intellij Idea   ...

  4. 如何在maven中添加jar包

    Maven 中央仓库地址: 1. http://www.sonatype.org/nexus/ 2. http://mvnrepository.com/ (本人推荐仓库) 3. http://repo ...

  5. 解决eclipse中maven web工程打包成war(发布到tomcar)时lib中没有jar包的解决方法

    可能有两个原因:1.maven中某些jar包下载不下来 从其他地方下载jar文件放到相应maven本地库的.m2里2..classpath文件中缺少(下面代码的作用是制定maven的jar发布路径)& ...

  6. [解决]UserLibrary中的jar包不会自动发布Tomcat的lib目录下(基于MyEclipse2014)

    1.在工程名称上单击[右键] —— 单击[Properties]选项,点击后会弹出属性窗口: 2.选择[Properties]后在左侧树中找到[MyEclipse] —— [Deployment As ...

  7. 从Maven仓库中导出jar包

    从Maven仓库中导出jar包:进入工程pom.xml 所在的目录下,输入以下命令:mvn dependency:copy-dependencies -DoutputDirectory=lib更简单的 ...

  8. 如何制作Jar包并在android中调用jar包

    android制作jar包: 新建android工程,然后右击,点击导出,选择导出类型为Java下的JAR file,在java file specification 中不要选择androidmani ...

  9. 在java工程中导入jar包的注意事项

    在java工程中导入jar包后一定要bulid path,不然jar包不可以用.而在java web工程中导入jar包后可以不builld path,但最好builld path.

随机推荐

  1. 优化jQuery选择器

    优化jQuery选择器 选择优化比以前更加重要,因为越来越多的浏览器实现了queryselectorall()并承担了将jQuery选择器转移到浏览器的责任.记住这些小技巧可以让你轻松突破学习选择器时 ...

  2. lightoj 1096【矩阵快速幂(作为以后的模板)】

    基础矩阵快速幂何必看题解 #include <bits/stdc++.h> using namespace std; /* 0 1 2 3 4 5 6 7 0 0 0 */ const i ...

  3. HDU4255【BFS】

    题意: 给你一个矩阵,矩阵里是的数是这么安排的,然后给你两个数,让你求这两个数的最短距离,素数不能去: 思路: 预处理一下素数表,矩阵,然后找一下起点和终点的坐标,跑一下BFS就好了: #includ ...

  4. css之BFC(block formmatting context)[格式化上下文]

    一.定义: BFC就是一个黑盒子,可以保证盒子内部元素不管如何变化,都不会影响盒子附近的元素:它属于普通流.浮动.定位方案中的普通流. 二.触发条件: 1.body: 2.float(不包含none) ...

  5. Scut

    这是一款免费开源的游戏服务器引擎,适用于开发AVG.SLGRPG.MMOG等类型的网络游戏,同时支持Http.WebSocket和Socket协议通讯,支持Window.Mac和Linux多种平台部署 ...

  6. 进击python第三篇:基础

    基础拾遗 序列解包 例: >>>x,y,z=1,2,3 >>>print x,y,z 1 2 3 交换变量也是没问题 >>>x,y=y,x > ...

  7. [Xcode 实际操作]九、实用进阶-(21)使用“调试视图”查看各界面元素的层次顺序

    目录:[Swift]Xcode实际操作 本文将演示如何在程序运行期间,查看模拟器各界面元素的层次顺序. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import ...

  8. 【BZOJ4548】小奇的糖果

    →原题传送门←(by Hzwer) 「题目背景」 小奇不小心让糖果散落到了地上,它对着满地的彩色糖果胡思乱想. 「问题描述」 有 N 个彩色糖果在平面上.小奇想在平面上取一条水平的线段,并拾起它上方或 ...

  9. JPA-day03 自动建表和注解

  10. E - Round Numbers

    #include <iostream> #include <algorithm> #include <cstdio> #include <cstring> ...