Dozer is a powerful, yet simple Java Bean to Java Bean mapper that recursively copies data from one object to another. Typically, these Java Beans will be of different complex types. Dozer supports simple property mapping, complex type mapping, bi-directional mapping, implicit-explicit mapping, as well as recursive mapping. The mapper is used any time you need to take one type of Java Bean and map it to another type of Java Bean. Most field mapping can be done automatically by Dozer using reflection, but any custom mapping can be predescribed in XML format.
The Protomatter Classes is a collection of (hopefully) useful Open Source Java classes.
The package provides the following:
A robust logging system.
JDBC Connection Pool
A JDBC driver that maintains a pool of connections.
A lightweight application server framework. (JavaDoc)
Object Pooling Framework
A generic object pooling framework. These baseclasses are used to implement the JDBC connection pool, thread queues, mutex locks, etc.
Misc Utility Classes
Base64 encoder/decoder, blocking queues, work queues, mutex locks, and other stuff...
Libraries for common tasks such as CSV, Base64, Circular Buffers, MD5, and Significant Figures.
JTimepiece is an advanced library for working with dates and times in Java. Features include: reduces number of objects created when working with multiple date/times, methods for computing difference between two date/times, support for time zones, leap year and daylight savings, methods for converting between string and date/times, methods for adding and subtracting to and from date/times, methods for easily retrieving individual parts of date/times, no dependencies to other non-standard Java libraries, compatible with J2SE 1.2 and above.
Jodd is a generic purpose open-source Java library. It helps in development of Java applications, both stand-alone and server-side. You may think of Jodd as swiss army knife for Java: small, sharp and with plenty handy gadgets included.
Jodd contains many useful and ready to use features: it provides Java beans manipulation, loads beans with ease from various sources, simplifies JDBC connectivity and code, profiles sql queries, manages date and time, manipulates and format Strings, searches files on disk, helps with handling servlet requests. Additionally, Jodd contains small, yet useful mvc2 JSP-based framework. And there is more inside...
Joone is a FREE Neural Network framework to create, train and test artificial neural networks. The aim is to create a powerful environment both for enthusiastic and professional users, based on the newest Java technologies.
Joone is composed by a central engine that is the fulcrum of all applications that are developed with Joone. Joone's neural networks can be built on a local machine, be trained on a distributed environment and run on whatever device.
The JADE library provides "Context Programming" which allows:
- Objects to be allocated on the "stack" to avoid garbage collection and provide faster execution speed (PoolContext). - Automatic concurrency in low level method to take advantage of multi-processors (or hyper-threading) in a transparent manner (ConcurrentContext).
- Thread-based inheritable local/global settings (LocalContext).
This library also provides
- Struct/Union classes for interoperability with C/C++.
- A math package with the first (and unique) generic Matrix class to solve linear systems of any kind.
- Physical quantities for which the dimension checking is done in the form of class-type checking (e.g. the division of a length by a duration returns a velocity instance).
- Real-time XML parser with no dynamic object creation (the world fastest by a factor 2-3x) And much, much more...
Java applications are typically deployed in multiple environments and platforms, each requiring some unique configuration. JFig gives developers a simple yet powerful tool to manage their applications configuration. It allows them to:
* Store application configuration in one common repository of XML files
* Access configuration data using one common,
* Easily define multiple configurations, dynamically modifying those variables that need to change in different situations
* Eliminate the error prone practice of defining the same configuration variables in multiple locations
* Ease the management, deployment, and control of configuration files