javaweb项目中常用的jar包详解
- 格式:docx
- 大小:16.28 KB
- 文档页数:4
java开发常用的jar包的作用解释转载自:/chaod5659/article/details/8250845 java开发中主要用到的jar包描述commons-io.jar:可以看成是java.io的扩展,用来帮助进行IO功能开发.它包含三个主要的领域:Utilityclasses-提供一些静态方法来完成公共任务.Filters-提供文件过滤器的各种实现.Streams-提供实用的Stream,reader与writer实现.commons-beanutils.jar:提供对Java反射和自省API的包装,主要提供了对于JavaBean进行各种操作。
commons-digester.jar:它能方便地将XML文档所定义的元素转化为JAVA对象,其实它的用法有点象栈(当然内在的原理就是那个古老的东西,只是提供了更高一层的封装)。
commons-lang.jar:它扩展了标准ngAPI,增加了字符串操作方法、基本数值方法、对象反射、创建和串行化以及System属性。
它还包含一个可继承的enum类型、对多种嵌套的Exception 类型的支持、对java.util.Date的增强以及用于构建方法的实用程序,例如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。
ArrayUtils–用于对数组的操作,如添加、查找、删除、子数组、倒序、元素类型转换等;BitField–用于操作位元,提供了一些方便而安全的方法;BooleanUtils–用于操作和转换boolean或者Boolean及相应的数组;CharEncoding–包含了Java环境支持的字符编码,提供是否支持某种编码的判断;CharRange–用于设定字符范围并做相应检查;CharSet–用于设定一组字符作为范围并做相应检查;CharSetUtils–用于操作CharSet;CharUtils–用于操作char值和Character对象;ClassUtils–用于对Java类的操作,不使用反射;ObjectUtils–用于操作Java对象,提供null安全的访问和其他一些功能;RandomStringUtils–用于生成随机的字符串;SerializationUtils–用于处理对象序列化,提供比一般Java序列化更高级的处理能力;StringEscapeUtils–用于正确处理转义字符,产生正确的Java、JavaScript、HTML、XML和SQL代码;StringUtils–处理String的核心类,提供了相当多的功能;SystemUtils–在ng.System基础上提供更方便的访问,如用户路径、Java版本、时区、操作系统等判断;Validate–提供验证的操作,有点类似assert断言;WordUtils–用于处理单词大小写、换行等。
java开发常用jar包mail.jar与activation.jar里面包含了activation.jar和mail.jar两个包.通过里面的类的调用便可以达到发送电子邮件的目的commons-beanutils.jarApache Commons包中的一个,包含了一些Bean工具类类。
必须使用的jar包。
commons-collections.jarApache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大commons-lang.jarApache Commons包中的一个,包含了一些数据类型工具类,是ng.*的扩展。
必须使用的jar包。
commons-logging.jar:Apache Commons包中的一个,包含日志功能commons-io.jarApache Commons包中的一个,java.io.*的扩展,输入输出,支持文件上传commons-fileupload.jarApache Commons包中的一个,是一个通过Http接收上传的文件并处理结果文件的库dom4j-1.4.jar 和jaxen-1.1.1.jar是一个Java的XML API,类似于jdom,用来读写XML文件的。
Hibernate使用dom4j解析XML配置文件和XML映射元文件。
必需的。
ehcache-1.2.jarHibernate可以使用不同cache缓存工具作为二级缓存。
EHCache是缺省的cache缓存工具。
如果没有其它的可选缓存工具,则为必需的。
hibernate3.jarhibernate3的核心类库。
itext.jar是用于生成PDF文档的一个java类库。
通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。
iTextAsian.jaritext中关于亚洲编码的类库,在这里用于中文字体的输入。
jta.jar 标准JTA API必要commons-collections.jar 集合类 必要antlr.jar ANother Tool for Language Recognition 必要asm.jar ASM字节码库 如果使用“cglib” 则必要asm-attrs.jar ASM字节码库 如果使用“cglib” 则必要ehcache.jar EHCache缓存 如果没有其他的缓存,则是必要的cglib.jar CGLIB字节码解释器 如果使用“cglib” 则必要commons-beanutils.jar 提供对java反射和自省API的包装 对bean操作的类,可以访问类的属性及get和set方法commons-digester.jar Digester基于规则的XML文档解析,主要用于XML到java对象的映射commons-lang.jar 包含了一些数据类型工具类,是ng.* 的扩展 必须使用的包commons-pool.jar,commons-dbcp.jar DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCPcommons-chain.jar Jakarta Commons的子项目Chain将上述两个模式组合成一个可复用的Java框架用于描述顺序的处理流程 strutsheShale应用框架作为处理HTTP请求处理的基础机制commons-validator.jar 用来帮助进行验证的工具。
比如验证Email字符串,日期字符串等是否合法。
Burlap.jar 支持ejb,远程调用Remoting方面的类buffalo.jar 处理xml的jar包commons-betwixt.jar 用xml生成报表时需要用到的包commons-el.jar Apache 组织中一个用来解析 JSP 2.0 的表达式语言的 Javahtmlparser.jar 是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或提取html类库jakarta-oro.jar java正则表达式所需的包jaxen.jar 在jdom中使用xpath需要导入jaxen.jar包mina-core.jar Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架这里主要介绍的是Hibernate使用到的.jarHibernate一共包括了23个jar包,令人眼花缭乱。
common s-dig ester.jarDige ster基于规则的X ML文档解析,主要用于XML到Java对象的映射.co mmons-bean utils.jar提供对J ava 反射和自省A PI的包装.a spect jweav er.ja r用于在Spri ng 2.0中集成A spect J Asp ectJLTW织入器o gnl.j arO GNL是O bject-Grap h Nav igati on La nguag e的缩写,它是一种功能强大的表达式语言(Expre ssion Lang uage,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。
它使用相同的表达式去存取对象的属性。
hiber nate2依赖的一些包hi berna te2.j arH ibern ate的库,没有什么可说的,必须使用的j ar包cgli b-asm.jar:CGL IB库,H ibern ate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包do m4j.j ar: dom4j是一个Java的XML A PI,类似于jdom,用来读写XML文件的。
dom4j 是一个非常非常优秀的Jav a XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在Sour ceFor ge上找到它。
在IB M dev elope rWork s上面可以找到一篇文章,对主流的Java XMLAPI进行的性能、功能和易用性的评测,d om4j无论在那个方面都是非常出色的。
Java打包⼯具jar包详解Java打包⼯具是Java开发⼯具中⽐较常⽤的⼀种,代码重新打包⼯具jarjar可以帮助你将其它⽤到的java库打包并嵌⼊到你⾃⼰的项⽬jar包中。
这样做的原因有:当你发布项⽬的时候,把⽤到的库打包进现有项⽬jar包,可以让发布的这个jar包不⽐依赖于其它项⽬的jar包;当你所⽤到的java库升级了以后,它所新发布的jar包可能和你现存的项⽬不匹配,为了保持项⽬的代码稳定性,你可以把编写代码时所⽤到的依赖jar包,全部打包进现在的项⽬jar包,以避免出现这个问题。
jarjar可以通过Ant任务的⽅式使⽤,也可以单独地在命令⾏下使⽤。
打包代码时,如果你要重命名某些依赖包的名字的时候,jarjar会调⽤字节码转换(通过ASM)来更新代码,并⾃动做好其他⼯作。
以Ant任务的形式使⽤jar我们现存的Ant任务⾥可以⽤jar任务来打包代码,⽐如:<target name="jar" depends="compile"><jar jarfile="dist/example.jar"><fileset dir="build/main"/></jar></target>为了使⽤jarjar⼯具,我们创建⼀个叫jarjar的任务,由于JarJarTask是Ant标准任务Jar的⼦类,所以如果你不需要使⽤jarjar的特有功能的话,完全可以像这样调⽤jarjar⼯具:就像标准的”jar”任务⼀样,可以通过”zipfileset”元素来包含其它jar包。
但是仅仅包含其它jar包并不能让你远离“jar包陷阱”,因为你所依赖的jar包中的类名还是没有改变,仍然有可能和其它版本的jar包⾥的类名相同,产⽣冲突。
为了重命名类名,JarJarTask引⼊了⼀个新元素”rule”。
J2EE常用Jar包含义文章分类:Java编程本文向您介绍J2EE常用Jar包的含义,包括activation.jar、chartengineapi.jar等,熟知这些J2EE常用的Jar包有助于我们在开发中通过多种途径解决问题。
activation.jar:与javaMail有关的jar包,使用javaMail时应与mail.jar一起加入到lib中去,具体负责mail的数据源和类型等ajaxtags-1.2-beta3.jar:ajax提供的标签库,使用户能像使用jsp普通标签一样使用ajaxant.jar和antlr.jar(可以删去):的是ant编译用的包,在工程中不用添加asm.jar:Hebernate的包,Hibernate在运行时使用这个代码生成库增强类(与java反射机制联合使用).ASM字节码库,cglib.jar包依赖的包。
必需的jar 包。
axis-ant.jar:是Axis为支持Ant构建,提供了的文件。
该文件包含三个可选任务(task)的定义和实现:axis-wsdl2java,axis-java2wsdl和axis-admin。
cglib-2.1.3.jar:全称是Code Generation Library,它可以用来动态继承Java 类或者实现接口,很多知名的开源项目中用到了它.Hibernate用它来实现PO字节码的动态生成,非常核心的库,必需的jar包。
chartengineapi.jar:不大清楚,大概是Birt关于字体的类库。
com.ibm.icu_3.6.1.v10070417.jar:从3.2版本开始,eclipse就增加了一个com.ibm.icu插件,用于增强对多语言的支持。
应该是没用的。
commons-beanutils.jar:下面几个带“commons”的都是Apache Commons包中的一个,这里是被hibernate使用的,估计在工程中没有全部用到这些包,所以有的应该能删去。
JAR包介绍大全用途作用详解JAVAJAR(Java Archive)是Java的一种标准压缩文件格式,它是一种将多个Java类文件、资源文件、配置文件和元数据文件打包成一个文件的方式。
JAR包的使用具有很多作用和用途,下面将详细介绍。
1. 代码打包和发布:通过将Java类文件打包成JAR包,可以方便地将整个项目的代码进行打包和发布。
这样可以简化代码的传输、分发和部署。
2. 代码模块化:JAR包可以将一组相关的Java类打包成一个模块,便于代码的管理和维护。
不同的模块可以根据需要进行组合,提高代码的可复用性和可扩展性。
3.应用程序部署:将应用程序的所有依赖的类和资源文件统一打包到一个JAR包中,方便进行部署和发布。
可以减少部署过程中的错误和问题。
4. 库文件管理:JAR包可以用来管理和分发Java库文件。
开发者可以将常用的库文件打包成JAR包,并在其他项目中使用。
5. 类库扩展:在Java中,可以通过类路径(CLASSPATH)来指定需要加载的类库。
而JAR包可以通过设置类路径来扩展Java的类库。
只需将JAR包加入到类路径中,就可以在代码中使用其中的类和方法。
6.版本管理:JAR包可以用来管理和分发不同版本的软件。
通过使用不同的JAR包命名规则或目录结构,可以区分不同版本的软件,方便用户选择特定版本的功能和功能。
7.防止类文件冲突:当使用多个第三方类库时,可能会发生类文件冲突的情况。
通过将每个类库打包成一个JAR包,并且每个类库中的类在包的结构中唯一,可以避免类文件冲突的问题,保证程序的正确运行。
8. 加载器和类加载:在Java中,类加载器负责将类文件加载到Java虚拟机中。
而JAR包是可以被类加载器加载的,可以通过类加载器的机制来加载JAR包中的类。
9. Java application扩展:JAR包可以作为Java应用程序的扩展,可以在运行时动态地加载和使用JAR包中的类和方法。
这种机制可以实现插件式的应用程序设计。
java项目打包成jar包和war包有什么区别在Java中,将项目打包成JAR(Java Archive)包和WAR(Web Archive)包是常见的部署方式。
这两种包的主要区别在于它们的用途和部署环境。
1. JAR包(Java Archive):JAR包是一种用于打包Java类、资源文件和库文件的归档文件格式。
JAR包主要用于打包和分发独立的Java应用程序、Java库和组件。
JAR包可以包含Java代码、字节码、配置文件、资源文件和其他依赖的类库文件。
JAR包可以通过Java虚拟机(JVM)直接执行,因此适用于命令行工具、桌面应用程序和独立的Java应用。
2. WAR包(Web Archive):WAR包是一种用于打包和分发Web应用程序的归档文件格式。
WAR包主要用于部署Java Web应用程序,例如基于Java的Web应用框架(如Java Servlet、JavaServer Pages(JSP)和JavaServer Faces (JSF))。
WAR包可以包含Web应用程序的所有内容,包括Java类、JSP页面、HTML、CSS、JavaScript、配置文件、静态资源(图像、样式表等)以及依赖的类库文件。
WAR包可以部署到Java Web服务器(如Apache Tomcat、Jetty、WebLogic和WebSphere)中,以提供Web应用程序的服务。
总结:JAR包主要用于独立的Java应用程序和库的分发,而WAR包主要用于Java Web应用程序的部署。
选择JAR包还是WAR包取决于你的项目类型和部署需求。
如果你开发的是一个独立的Java应用程序,你可以将其打包为JAR包。
如果你开发的是一个Java Web应用程序,你应该将其打包为WAR包,并将其部署到Java Web服务器中。
java开发常用的jar包的作用解释转载自:/chaod5659/article/details/8250845 java开发中主要用到的jar包描述commons-io.jar:可以看成是java.io的扩展,用来帮助进行IO功能开发.它包含三个主要的领域:Utilityclasses-提供一些静态方法来完成公共任务.Filters-提供文件过滤器的各种实现.Streams-提供实用的Stream,reader与writer实现.commons-beanutils.jar:提供对Java反射和自省API的包装,主要提供了对于JavaBean进行各种操作。
commons-digester.jar:它能方便地将XML文档所定义的元素转化为JAVA对象,其实它的用法有点象栈(当然内在的原理就是那个古老的东西,只是提供了更高一层的封装)。
commons-lang.jar:它扩展了标准ngAPI,增加了字符串操作方法、基本数值方法、对象反射、创建和串行化以及System属性。
它还包含一个可继承的enum类型、对多种嵌套的Exception 类型的支持、对java.util.Date的增强以及用于构建方法的实用程序,例如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。
ArrayUtils–用于对数组的操作,如添加、查找、删除、子数组、倒序、元素类型转换等;BitField–用于操作位元,提供了一些方便而安全的方法;BooleanUtils–用于操作和转换boolean或者Boolean及相应的数组;CharEncoding–包含了Java环境支持的字符编码,提供是否支持某种编码的判断;CharRange–用于设定字符范围并做相应检查;CharSet–用于设定一组字符作为范围并做相应检查;CharSetUtils–用于操作CharSet;CharUtils–用于操作char值和Character对象;ClassUtils–用于对Java类的操作,不使用反射;ObjectUtils–用于操作Java对象,提供null安全的访问和其他一些功能;RandomStringUtils–用于生成随机的字符串;SerializationUtils–用于处理对象序列化,提供比一般Java序列化更高级的处理能力;StringEscapeUtils–用于正确处理转义字符,产生正确的Java、JavaScript、HTML、XML和SQL代码;StringUtils–处理String的核心类,提供了相当多的功能;SystemUtils–在ng.System基础上提供更方便的访问,如用户路径、Java版本、时区、操作系统等判断;Validate–提供验证的操作,有点类似assert断言;WordUtils–用于处理单词大小写、换行等。
(1) Activation-1.1.jar:与 javamail 相关的 jar 包,使用 javamail 时应与 mail.jar —起加入到lib 中去,具体负责mail 的数据源和类型等。
(2) Antlr-2.7.6.jar:是 ant 编译的包,在工程中不用添加可以删除。
ANother Tool for Language Recog niti on(an tlr)⑶asm.jar:是hibernate 的包,使用这个包生成库增强类,必须要。
⑷ aspectjweaver.jar:这是 Spring AOP 所要用到的包.(5)bcprov-jdk.jar: JAVA 开发CA 认证使用Java 开发和信息安全相关的程序 (6)Cglib.jar: CGLIB 字节码解释器如果使用"cglib ”则必要⑺commons-beanutils.jar: BeanUtils 就是其中的一个,用于处理JavaBeans 。
它利用 Java 的反射机制,从动态的生成对bean 的getter 和setter 的调用代码,到模拟创建一个动态的bea n ,等等。
(8) Commons-codec.jar:Common 项目中用来处理常用的编码方法的工具类包,例如 SHA1 MD5 Base64, URL Soundx 等等。
[1]不仅是编码,也可用于解码。
(9) Commons-collections.ja r:为 Java 标准的 Collections API提供了相当好的补充。
在此基础上对其常用的数据结构操作进行了很好的封装、 抽象和补充。
保证性能的同时大大简化代码。
(10) Commons-dbcp.jar:主流数据库连接池之一 (DBCP 、c3p0、proxool),单独使用 DBCP 需 要使用 com mon s-db pc.jar 、com mon s-collecti on s.jar、com mons-po ol.jar 三个包(11) Common s-digester.jar: com mon s 中的 digester 是非常优秀的 xml 解析工具,这个工具提 供了从 xml->javabean 的映射。
相较于传统的w3c 、sax 方式解析xml 文档,digester 的层次更高,适合更懒得家伙。
(12) Com mon s-fileu pload.jar: Apache 的 common s-fileu pload.jar可方便的实现文件的上传功能,(13) Commons.httpciient.jar: HttpCIient提供高效的、最新的、功能丰富的支持 议最新的版本和建议。
(14) Commons-io.jar:项目中用来处理(16) Commons-logging.jar :能够方便的调试和跟踪应用程序任意时刻的行为和状态。
的应用开发中尤其重要,毫不夸张的说丄ogging 是不可或缺的重要组成部分。
必要DES是Ap ache Jakarta Com mon 下的子项目,可以用来HTTP 协议的客户端编程工具包, 并且它支持HTT P 协IO 的一些工具类包,(15) Com mon s-la ng.jar:跟 ng供一些基础的、通用的操作和处理,如自动生成和equals()方法、数组操作、枚举、日期和时间的处理等等。
这个包的作用类似,Commo ns Lang 这一组 toStri ng() 的结果、自动实现 API 也是提hashCodeO在大规模(17) Commo ns-p ool.jar: Pool 提供三个主要方面对象池的 API : a ) 一个提供客户方和实现方用来实现简单、可变的对象池的基本接口。
b ) 一个用来创建模块化对象池的工具。
c ) 几个通用的对象池的实现。
(18) Commons-calidators.jar:主要用于处理 action 里面的validate 函数的使用以及 等信息,比如验证Email 字符串,日期字符串等是否合 里面配置。
addFieldError 禾 R addAct ion Error法。
使用之前需要在 struts-co nfig (19) Dom4j.jar: dom4j 是一个 Java 是一个十分优秀的 JavaXML API , 的XML API ,类似于jdom ,用来读写 XML 文件的。
dom4j 具有性能优异、功能强大和极其易使用的特点, (20) Drools-compiler.jar 它包含编译器/构建器组件,用于获取规则资源,以及构建可执行规 则库。
它通常是你的应用程序的一个运行时间依赖项, 但是如果你是预编译了你的规则, 不需要它。
这^取决于 drools-core 。
(21) Drools-core:这是核心引擎,运行时间组件。
包含了 RETE 引擎和LEA PS 弓I 擎。
如果你 是预编译的规则,则它只是运行时间依赖项(部署通过 Package 或RuleBase 对象)。
(22) Drool-decisiontables.jar 这是决策表"编译”组件,其使用了 drools-compiler 组件。
它 支持excel 和CSV 俞入格式。
(23) Dwr.jar:允许JavaScript 从WEB 服务器上一个遵循了 AJAX 原则的Servlet 中获取数据. 另外一方面一个 JavaScri pt 库可以帮助网站开发人员轻松地利用获取的数据来动态改变网 页的内容. (24) Ehcache.jar:使用hibernate 的二级缓存如果用 ehcache 的时候需要此jar 包。
(25) eXtremeComponents.jar:eXtremeComponents 是提供更高级数据显示的开源 JSP 标签,用于以表格的形式来显示数据,它的功能强大且使用简单, Excel 与 pdf 等。
常用的功能包括排序、 分页、导出(26) Hibernate3.2.1.jar 稳定的 hibernate 版本。
(27) Hibernate-annotations.jar:使用注解的时候需要用到的 jar 包 (28) Hibernate-commons-annotation .jar :使用 annotation 必须的包。
(29) Jcaptcha.jar ; ptcha 是一个开源的用来生成图形验证码的Java 开源组件(30) Jdom.jar:读取xml 的jar 包。
(31) Jstl.jar:使用JSP标准标签的时候,需要在web项目中使用这两个jar包(32) Jta.jar: Java Transaction API ( Java 事务API)(33) Junit.jar: 用于测试的jar包(34) Jxl.jar通过java操作excel表格的工具类库(35) log4j.jar:生成日志(36) Ojdbc.jar oracle 驱动(37) Oro.jar:O RO是最全面以及优化得最好的正则表达式API之一(38) Pe-enterx-gurad:未知。
(39) Persistence-api.jar: java持久化API,就是类似与ORM的东西,主要用于和数据库交互的,比如Java bean和数据库表的对应关系,这个是JPA的核心包,属于Java EE标准(40)Poi.jar对excel进行操作的jar包、(41)Quartz.jar: Quart 框架核心包(42)S prin g.jar(43)Springmodules-validation.jar:数据校验jar,与spring 的无缝接入,是java pojo 对象校验的好框架。
(44) Springside-jddform.jar :SpringSide 涉及了很多当前流行的JavaEE技术,并有机地把这些技术应用有机地整合起来,教您如何解决企业应用开发中会面临的各种问题,比如持久化、Web Service、安全等等。
(45) Spring-test.jar:集成测试(46) Spring-webmvc.jar :这个jar文件包含Spring MVC 框架相关的所有类。
包括框架的Servlets ,WebMVC框架,控制器和视图支持。
当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。
(47) Standard.jar:如果你想在项目中使用JSTL和EL表达式,那么你必须要引入这个standard.jar 文件。
即使你没有引入,那MyEcIipse工具自带的类库也会帮你倒入。
其他工具不会。
(48) Stax-api.jar:java中数据序列化和反序列化的包stax系列(49) Wsdl4j.jar:可以有效解析基于rpc模型的WSDI文件,但是无法解析基于dom模型的WSDL文件,拿不到message的具体参数信息,是Web Services Description Language 的缩写,是一个用来描述Web服务和说明如何与Web服务通信的XML语言。
为用户提供详细的接口说明书。
(50) wstx-asl .jar :未知。
(51) Xbean.jar:解析excel (52 )Xmlschema.jar:约束XML文件。
可以验证XML文件的元素标签是否正确。