Java open-source jar packages

Source: Internet
Author: User
Tags email string jbpm

Java open-source jar packages

Turn: http://blog.csdn.net/kevingao/article/details/8125683

Activation ~ Jar packages related to javaMail should be added to lib together with mail. jar (mail. jar and activation. jar) When javaMail is used. The jar package is responsible for the data source and type of mail.

ApacheActiveMQ ~ Apache is the most popular open-source message bus with powerful capabilities. ActiveMQ is a JMS Provider that fully supports JMS1.1 and J2EE 1.4 specifications.

Ajaxtags ~ The tag library provided by ajax enables users to use ajax just like common jsp labels.

Apache Ant ~ Build tools to complete a large number of other tasks, such as document generation and test execution.

Anlr ~ A syntax analyzer, for example, helps hibernate execute Hql statements.

AOP Alliance ~ The AOP Alliance (http://aopalliance.sourceforge.net/) is a joint open-source collaboration organization that works across multiple projects to provide a set of standard AOP Java interfaces ). Spring AOP is based on AOP.

Standard API implementation. If you want to use Spring's AOP or any Feature Based on AOP, you only need this JAR file.

Asm ~ Hibernate uses this code to generate library enhancement classes at runtime (used in conjunction with the java reflection mechanism). ASM bytecode library, cglib. jar package dependent packages. Required jar packages.

Aspectj ~ Aspect (aspect) is another name for cross-cutting concerns. This mechanism can be used to specify the cross-concern in a modular way.

Btm ~ Bitronix Transaction Manager ~ Multi-Data Source transaction management.

Bsf ~ Bean Scripting Framework (BSF) is an open-source project that supports calling scripts in Java applications and directly accessing Java objects and methods.

C3P0 ~ An open-source JDBC connection pool that implements data source and JNDI binding and supports JDBC3 specifications and standard extensions of JDBC2. Currently, open-source projects using it include Hibernate and Spring.

Cglib ~ The full name is Code Generation Library, which can be used to dynamically inherit Java classes or implement interfaces. It is used in many well-known open-source projects. Hibernate uses it to dynamically generate PO bytecode, a very core library, and a necessary jar package.

 

Commons (Apache Commons)

Common-annotations.jar: Spring and hibernate can be used, spring or hibernate annotation dependency package.

Commons-bcel.jar: Byte Code Engineering Library for analyzing, creating, and processing Java class files.

Commons-beanutils.jar: This package contains some Bean tool class, is a must use jar package.

Commons-betwixt.jar: provides services that map JavaBean to XML documents, and vice versa.

Commons-bsf.jar: Bean Scripting Framework. Scripting language interfaces, including JSR-223. BSF is a set of java classes that can be downloaded. the current version is bsf-bin-2.3.1. With this baby, you can use JavaScript, Python, XSLT, Perl, tcl,... in java application ,...... In other words, you can call any registered an or java object in these scripting languages.

Commons-chain.jar: is a Java class library that implements the responsibility chain design pattern. As program developers, we often need to apply object-oriented methods to a procedural system. Business analysts and administrators often use flowcharts and workflow charts instead of class hierarchy and sequence diagrams to describe such systems. However, in any case, using an object-oriented method to solve these problems will bring more flexibility. The object-oriented design model provides useful structures and actions to describe the processing of this order, such as the Template Method [GoF] and the Chain of Responsibility) [GoF]. The subproject Chain of Jakarta Commons combines the above two modes into a reusable Java framework to describe the sequential processing process. This framework developed in the Jakarta Commons project community has been widely accepted and used in many interesting applications, in particular, the Struts and Shale application frameworks serve as the basic mechanism for processing HTTP requests. You can use CommonsChain when you need to define and execute a set of consecutive steps.

Commons-cli-1.0.jar: this is a tool for processing commands. For example, the string [] entered by the main method needs to be parsed. You can pre-define the parameter rules and then call CLI for parsing.

Commons-codec: mainly includes core algorithms. For example, MD5. SHA1. Or the General encryption and decryption algorithm is BASE64.

Commons-collections.jar: encapsulates various collection objects. Including some collection classes developed by Apache, which are more powerful than java. util.

Commons-Compress.jar: Used to compress or decompress files into tar, zip, bzip2 and other formats.

Commons-Configuratio: A Configuration Management Library for java applications. You can load software configuration information from properties or xml files to build a basic environment supporting software running. When many configuration files are complex, you can use this configuration tool to simplify the parsing and Management of configuration files. It also improves the development efficiency and Software maintainability.

Commons-csv: CSV (comma separated value) is the abbreviation of (comma-separated values), usually plain text files.

Commons-csv is used to read and write CSV files.

Commons-Daemon: helps you implement a background service for a common Java application programming system. For example, Tomcat uses this project to start and stop services for Linux and Windows.

Commons-dbutils: commons-dbutils is an open-source JDBC tool library provided by the Apache organization. It encapsulates the classes of traditional database operations and converts the result set to List.

Commons dbcp. jar: One of the mainstream database connection pool (DBCP, c3p0, proxool), the use of DBCP alone need to use commons-dbpc.jar, commons-collections.jar, commons-pool.jar three packages ,.

Commons-digester.jar: it can easily convert the elements defined in the XML document into JAVA objects, in fact, its usage is a bit like a stack (of course, the internal principle is that old thing, it only provides encapsulation of a higher layer ).

Commons-discovery-0.2.jar: The implementation of the discovery mode that provides a general method for locating and instantiating classes or other resources. Use the best algorithm to get all the implementations of the interface. This is especially useful when users want to find all providers that provide a certain service.

Commons-el :( Expression Language) is a Java class library used to parse the Expression Language of JSP 2.0 in Apache.

Commons-Email: Library for sending e-mail from Java.

Commons-Exec: a Java project on Apache. It provides common methods for executing external processes.

Commons-fileupload.jar to achieve file upload function package.

Commons-Functo: the Library contains a large number of basic structures and can be reused in complex use scenarios involving closures and higher-order functions.

Commons-httpclient.jar: The Commons-HttpClient project is specifically designed and used to simplify HTTP client and server

 

Various communication programming implementations-it can implement various functions of conventional HTTP client programs (that is, browser programs.

The commons-io.jar is used to read and write streams. It can be seen as an extension of java. io.

Commons-JCI: Java Compiler Interface is a class library that encapsulates the Java Compiler.

Commons-JCS: Java Caching System. JAVA cache.

Commons-Jelly: Jelly is an XML-based code generation tool that can convert XML documents into executable code.

Commons-Jexl: Jexl is an expression language that extends the expression language defined by JSTL by drawing on experience from Velocity.

Commons. jxpat: defines a simple Parser for the XPath expression language.

Commons-lang.jar provides extensions and programming base classes for java. lang.

Commons launcher: the Launcher component is a platform-independent Java application loader. Commons-launcher eliminates the need for batch processing or Shell scripts to load Java classes. If you need to run a class with the main method on linux/windows

 

This class references many jar and class files. You can use Launcher.

A logging package common to the commons-logging.jar.

Commons-Math: a lightweight self-container mathematical and statistical computing method package on Apache, which contains most common numerical algorithms.

Commons-Modeler: a Java program that provides a tool for creating MBeans models based on JMX specifications.

Commons-net.jar provides FTP and other functions, this package implements a lot of basic Intenet-based protocol, the following is the protocol supported by commons: FTP/FTPS, NNTP, SMTP, POP3, Telnet, TFTP, Finger, whoisrexec/rcmd/rlogin, Time (rdate) and Daytime Echo Discard NTP/SNTP.

Commons-OGNL: Abbreviation of Object Graph Navigation Language. Compared with JSP and JSF, OGNL is a powerful Java Expression Language (EL ), it can be used to read and update attributes of Java objects.

Commons-Primitives provides a smaller, faster, and easier-to-use support for basic Java types. Currently, it is mainly for collection of basic types ..

Commons-pool.jar: DBCP database connection pool, Apache Jakarta organization development, Tomcat4 connection pool is DBCP.

COmmons-Proxy: a subproject of Apache, which encapsulates some common methods of Java object Proxy.

Commons-Sanselan: a pure java library for reading and generating images. It also includes analyzing image information, such as size, color space, and metadata.

Commons-validator.jar: a tool to help with verification. For example, verify whether the Email string and date string are valid.

Commons-Transaction is designed to provide a lightweight, standardized, and efficient Java Transaction multi-thread programming toolkit that provides multi-level locks, Transaction sets, and Transaction-level file access.

Commons-SCXML: The Java Implementation version of The SCXML engine. The function basically covers all the content of the SCXML W3C specification.

Commons-vfs: VFS (Virtual File System Virtual Machine) provides a single application programming interface (API) for accessing different File systems, greatly simplifying the complexity of the application code. Currently, VFS supports FTP, Local Files, HTTP/HTTPS, SFTP, Temporary Files, Zip, Jar/Tar (uncompressed, tgz or tbz2), gzip/bzip2, res, and ram all the files in these file systems are encapsulated into the FileObject class. This class is used for file read/write operations. The file path adopts the URL method. If you need to obtain information about files of different formats, such as the file size, path, and last modification time, or we need to perform some common operations on files, such as deleting files and copying files. The VFS (Virtual File System) in Apache Commons is an open-source System that you can consider.

 

CXF (Apache CXF )~ Apache CXF is an open-source Services framework that helps you build and develop Services like JAX-WS using Frontend programming APIs. These Services can support multiple protocols, such as SOAP, XML/HTTP, RESTful HTTP, or CORBA, and can run on multiple transmission protocols, such as HTTP, JMS, or JBI, CXF greatly simplifies the creation of Services and inherits the XFire tradition. It can also be seamlessly integrated with Spring.

 

Dom4j ~ A Java xml api, similar to jdom, used to read and write XML files.

Dozer ~ Dozer is a class library used to copy the an attribute, similar to BeanUtils.

Drools ~ JBPM5 combines the jBPM project and Drools Flow. Drools Flow has been around for several years. Its purpose is to implement flexible and adaptive business processes and build a prototype by integrating business rules and complex event processing. Practice has proved that these features are not only feasible, but also bring great value in the long run and can better manage the complexity of real cases. Over the past few years, this content has been well integrated with the experience accumulated in the jBPM construction process. jBPM5 is based on this. However, the vision of jBPM has not changed, but has been expanded. Drools Flow will no longer develop independently. The latest version of Drools is already using jBPM5 to handle its process requirements.

DWR (Direct Web Remoting) is an open-source remote server-side Ajax framework used to improve web page interaction with Java. It can help developers develop websites that contain AJAX technology. It allows the code in the browser to use JAVA functions running on the WEB server, just as it is in the browser.

DisplayTag is a very useful table display label and is suitable for the MVC mode.

Ehcache ~ Java cache framework EhCache is a pure Java in-process cache framework with fast and lean features. It is the default CacheProvider in Hibernate.

FreeMarker is a template engine, a common tool for generating text output based on templates, which is written in Java only.

Geronimo ~ Apache Geronimo is an Open Source J2EE server of the Apache Software Foundation. It integrates many advanced technologies and design concepts. Most of these technologies and concepts come from independent projects, with different configuration and deployment models. Geronimo can fully integrate the configuration and deployment of these projects and methods into a unified and easy-to-use model.

H2 ~ An open source relational database.

Hamcrest ~ Is a good JUnit test jar package.

 

Hibernate

Hibernate-annotations.jar Hibernate annotation dependency package.

The core library of hibernate-entitymanager.jar Hibernate.

Hibernate-jpa-2.0-api-1.0.1.Final.jar Hibernate dependency package, used to define java persistence.

Hibernate core implementation.

Itext ~ A java class library used to generate PDF documents. Using iText, you can not only generate PDF or rtf documents, but also convert XML and Html files into PDF files.

Jackson ~ It is a class library used by Java to process JSON format data, with excellent performance.

Jasypt ~ Simple and Easy-to-use String encryption tool.

Jasper ~ Tomcat6.0 version after the lib package location adjustment, jasper-runtime.jar and jasper-compiler-jdt.jar, jasper-compiler.jar and so on are integrated into the jasper. jar package. Compile class. If you want to manually compile JSP, it also includes other JAR packages under tomcat lib: jasper. jars; servlet-api.jar; el-api.jar; catalina. jar; catalina-ant.jar; jasper-el.jar; jasper-jdt.jar; tomcat-juli.jar; jsp-api.jar ;.

JFreeChart ~ Is an Open Class Library for drawing charts on the JAVA platform. It is fully written in JAVA and is designed for applications, applets, servlets, and JSP. JFreeChart can generate pie charts, bar charts, scatter plots, time series, and Gantt charts, in addition, it can generate PNG and JPEG output and be associated with PDF and EXCEL.

Jaxen ~ Jaxen is an open source XPath library written in Java. This is suitable for a variety of different object models, including DOM, XOM, dom4j, and JDOM. It can also be used as an adapter to convert Java byte code or XML Java bean to xml, so that you can use XPath to query these trees.

Jbpm ~ Java Business Process Management (Business Process Management ). JBOSS open source project.

Jettison ~ A set of StAX parser and writer are used to read and write JSON data. This allows you to implement a JSON-based web service in a service framework such as CXF and XFire.

Javassist is an open-source class library for analyzing, editing, and creating Java bytecode. Can dynamically change the structure of a class or dynamically generate a class.

JAXB (Java Architecture for XML Binding) is an industry standard and a technology that can generate Java classes based on XML Schema. In this process, JAXB also provides a way to reverse generate a Java object tree for the XML instance document, and re-write the content of the Java object tree to the XML instance document. On the other hand, JAXB provides a fast and easy way to bind the XML schema to the Java representation, so that Java developers can easily combine XML data and processing functions in Java applications.

Jcl-over-slf4j ~ Components that may be used in your project use JCL and SLF4J respectively. For example, if Hibernate 3.5 and Struts are used in the project, or some other open source components of Apache, you may not want to use the SLF4J component log information to output to, when JCL component logs are used to output to B, where should the log information in your own code be written? The JCL-Over-SLF4J + SLF4J is required to output the log information through SLF4J.

Jmemcached ~ Is a Java version of memcached Cache Server, basically compatible with memcached. Jmemcached uses Apache MINA for non-Congested Network I/O operations, but jmemcached switched to Netty as the network I/O operation package from version 0.7.

Jsoup is a Java HTML Parser that can directly parse a URL address and HTML text content. It provides a set of very labor-saving APIs that can be used to retrieve and manipulate data through DOM, CSS, and operations similar to jQuery.

Joda-Time ~ A set of Java class packages are provided for processing date and time, including the ISO8601 standard. It can be used to completely replace JDK Date and the Calendar class, and it can still provide good integration.

Jolokia ~ Is a brand new way to access remote JMX MBeans, unlike the JSR-160 connector, it uses HTTP-based JSON format as the communication protocol, provide JMX batch operations and so on.

Jpa-api ~ Java Persistence API. Not much to mention ~

Jstl ~ Use the jstl label implementation package.

JS ~ Used to execute javascript in JAVA?

Jsr ~ JSR is the abbreviation of Java Specification Requests, which indicates a Java standard request. Is a formal request to add a standardized technical specification to the JCP (Java Community Process. Anyone can submit a JSR to add new APIs and services to the Java platform. JSR has become an important standard in the Java field.

JTA ~ Java Transaction API, translated as Java Transaction API.

Kahadb ~ Is the default message storage engine of activemq after version 5.4.

 

Log4j ~ Logs.

Logback ~ Logback is developed by the log4j author Ceki and gradually replaces log4j.

Lucene is a sub-project of the 4 jakarta Project Team of the apache Software Foundation. It is an open-source full-text search engine toolkit, that is, it is not a complete full-text search engine, it is a full-text search engine architecture that provides a complete query engine and index engine, some text analysis engines (English and German ).

The predecessor of MyBatis is iBatis. Is a data persistence layer framework.

Mina (apache mina )~ Apache MINA (Multipurpose Infrastructure for Network Applications) is a newer project in Apache, which provides a very convenient framework for developing high-performance and high-availability Network Applications. The currently released MINA version supports TCP/UDP application development and serial communication programs based on Java NIO Technology (only available in the latest preview version ), functions supported by MINA are also being expanded.

MVEL ~ MVEL is a powerful Java application-based Expression Language.

Neethi ~ Apache Neethi This component provides an incomplete WS-Policy implementation for Axis2, allowing Axis2 users to operate and combine Policy documents. Axis2 is a tool used to create the runtime representation of the policy document and to normalize, merge, and submit the policy document. WS-Policy provides a way to specify the possible configurations of Web services and to execute defined security and authentication.

ORO ~ Jakarta ORO is a text processing tool that provides perl5.0 Compatible Regular Expressions, AWK-like regular expressions, and glob expressions. It also provides functions such as replacement, splitting, and file name consideration.

Poi ~ Apache POI is an open-source library of the Apache Software Foundation. POI provides APIs for Java programs to read and write Microsoft Office files.

Quartz is another open-source project of OpenSymphony open-source organization in the Job scheduling field. It can be used together with J2EE and J2SE applications.

Qrcode ~ The QR Code is a matrix QR Code symbol developed by the Japanese company Denso in September 1994, it has the advantages of one-dimensional barcode and other two-dimensional barcode, such as large information capacity, high reliability, the ability to express multiple types of Chinese characters and images, and strong confidentiality and anti-counterfeiting. This jar package parses and generates the QR code ~

 

Spring

Spring-aop: spring's Aspect-oriented programming, which provides the implementation of AOP (the interface of the above-mentioned AOP Alliance for Aspect-Oriented Programming.

Spring-asm: spring-independent asm Program. Compared with version 2.5, additional asm. jar packages are required.

Spring-aspects: spring provides the integration of the AspectJ framework.

Spring-beans: basic implementation of springIoC (dependency injection.

Spring-context.support: spring-context extension support for MVC.

Spring-context: spring provides extension services on the basic IoC functions, and also supports many enterprise-level services, such as emails.

 

Services, job scheduling, JNDI positioning, EJB integration, remote access, caching, and encapsulation of various view layer frameworks.

Spring-core: spring3.1 core toolkit.

Spring-expression: spring expression Language.

Spring-instrument.tomcat: spring3.1 base of Tomcat connection pool.

Spring-instrument: proxy interface of spring3.1 to the server.

Spring-jdbc: simple encapsulation of JDBC by spring.

Spring-jms: simple encapsulation of spring to simplify the use of JMS APIs.

Spring-orm: spring integrates third-party ORM (Object relationship ing) ing support, such as Hibernate, Ibatis, Jdo, and

 

Support for spring JPA.

Spring-oxm: spring supports Object/XMI ing, which enables switching between JAVA and XML.

Spring-test: simple encapsulation of Junit and other testing frameworks by spring.

Spring-transaction: consistent declarative and programmatic transaction Management for JDBC, Hibernate, JDO, and JPA.

Spring-web.portlet: springMVC enhancements.

Spring-web.servlet: Support for J2EE6.0 Servlet3.0.

Spring-web.struts: Integrated Struts support.

Spring-web: springWeb toolkit.

Spring Security: the predecessor is Acegi Security, which is the framework used by the Spring Project Team to provide Security authentication services.

Spring-module: verification framework for form verification.

 

Servlet-api ~ Nothing to say.

Shiro ~ The permission framework is similar to SpringSecurity.

Sitemesh ~ OS (OpenSymphony) SiteMesh is a framework component used to implement the layout and decoration in JSP, it helps website developers easily separate dynamic content from static decorative appearances on pages.

SLF4J, namely, Simple Logging Facade for Java, is not a specific log solution. It only serves a variety of log systems.

Spymemcached ~ An asynchronous, single-threaded Memcached client developed using Java.

StAX ~ (Streaming API for XML) stream-oriented pull parsing XML, which is fast and occupies less resources. It is very suitable for processing xml files with large data volumes.

Standard ~ It is used with jstl to implement the el language. To use the JSTL and EL expressions in the project, you must introduce the standard. jar file.

Struts ~ The application framework of the MVC design pattern.

Struts Menu ~ Is a tag library used to generate page navigation menus, which must be supported by struts.

Urlrewritefilter ~ Is a Web Filter Used to rewrite the URL, similar to Apache mod_rewrite.

Velocity is a java-based template engine ). It allows anyone to simply use the template language to reference objects defined by java code. When Velocity is applied to web development, the interface designer can develop a web site following the MVC Architecture in sync with java program developers. That is to say, the page designer can only focus on the page display effect, java developers focus on business logic encoding. Velocity separates java code from web pages, which facilitates the long-term maintenance of web sites and provides an optional solution besides JSP and PHP.

Woodstox ~ A fast open-source Xml processor that complies with StAX (STreaming Api for XML processing) specifications (as a processor, it can process input (equivalent to parsing) and output (equivalent to writing, serialization )).

Wsdl4j ~ As the name suggests, it is a JAVA class library (Toolkit) for parsing and creating WSDL ).

Xalan ~ It is an XSLT processing package used to convert XML documents into HTML documents, text files TXT, or XML documents in other formats. It implements the interfaces of javast1.0 and XPath1.0, which can be called in the command line, in the applet, servlet, or as a module of other programs.

XmlResolver ~ To parse external DTD, entity, and architecture.

Xmlschema ~ As the name suggests, it is used to parse xml schema.

Xml-apis.jar with xercesImpl. jar ~ These two jar packages are a syntax analyzer compatible with the Extensible Markup Language (XML.


Use a class file or a java file to create a jar package

The packaged file is a compiled class file.
After packaging, you can run the jar *. jar command directly.
No need to compile again

Java program package into executable jar tools or methods

For convenience, follow the steps in my directory.
1. Create MANIFEST. MF (in the Directory D: \ abc)
The following content is the file content (only copying between two equal signs)
============================
Manifest-Version: 1.0
Main-Class: RoundButton
Created-By: Abc
============================

2. Package
Copy your RoundButton. class to the D: \ abc directory.
Then
Start -- run cmd to open the command line,
Enter cd d: \ abc and press Enter.
Enter d: Enter
Enter jar cvfm abc. jar MANIFEST. MF *. * And press Enter.

Then we can see that there is a file named abc. jar in the abc directory. Double-click the file to run it. The jar package name can be changed without affecting it.

The prerequisites for the above operations are that the jdk environment variables in your machine are correctly configured and 100% are available. I have tried

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.