我们在搭建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. VS2010在WIN7下安装报错“下列组件安装失败”如何解决

    VS2010在WIN7下安装报错“下列组件安装失败”如何解决 http://www.111cn.net/net/42/75914.htm

  2. 632. Smallest Range(priority_queue)

    You have k lists of sorted integers in ascending order. Find the smallest range that includes at lea ...

  3. Codeforces698B【并查集+拆环】

    好题,好题,第一次写这个神秘的拆环.. 题意: 给你n个数,第i个数代表点i连向点a[i], 将这副图变成树,求最小改变边的数量: 思路: 已知有向树的定义, 除了根节点外每个节点都有且仅有一条边都指 ...

  4. android通过获取摄像头照片,实时与点传输

    http://blog.csdn.net/csh159/article/details/7926654/ GetIP: [html] view plain copy print? package co ...

  5. IT兄弟连 JavaWeb教程 JSP静态包含和动态包含的区别

    JSP静态包含(<%@ include>和JSP动态包含<jsp:include>同样都可以用来包含文件,但是他们之间是存在很大差别的.下面将对include指令与includ ...

  6. SpringBoot2.0 整合 QuartJob ,实现定时器实时管理

    一.QuartJob简介 1.一句话描述 Quartz是一个完全由java编写的开源作业调度框架,形式简易,功能强大. 2.核心API (1).Scheduler 代表一个 Quartz 的独立运行容 ...

  7. SpringBoot2.0 整合 RocketMQ ,实现请求异步处理

    一.RocketMQ 1.架构图片 2.角色分类 (1).Broker RocketMQ 的核心,接收 Producer 发过来的消息.处理 Consumer 的消费消息请求.消息的持 久化存储.服务 ...

  8. JQuery Easyui/TopJUI表格基本的删除功能(删除当前行和多选删除)

    需求:数据表格datagrid实现删除当前行和多选删除的功能. html <a href="javascript:void(0)" data-toggle="top ...

  9. Machine Learning Codeforces - 940F(带修莫队) && 洛谷P4074 [WC2013]糖果公园

    以下内容未验证,有错请指正... 设块大小为T,则块数为$\frac{n}{T}$ 将询问分为$(\frac{n}{T})^2$块(按照左端点所在块和右端点所在块分块),同块内按时间从小到大依次处理 ...

  10. Java的Cloneable接口还有深浅复制

    我的小记录 首先语法上,搞清除,Java有个Cloneable接口,但这个接口是没有定义方法的. 那实现了这个接口有什么用呢? 再看Object类中,有个clone()方法,这个方法提供一个浅复制的功 ...