List of Java frameworks: Difference between revisions

Content deleted Content added
E090 (talk | contribs)
added link back to ormlite
m top: cleanup, typo(s) fixed: for for → for using AWB
Line 1:
{{Multiple issues|
{{unreferenced|date=February 2017}}
{{Orphan|date=February 2017}}
}}
 
Below is a list of [[Java (programming language)|Java programming language]] technologies ([[Software framework|frameworks]], [[Library (computing)|libraries]])
Line 7 ⟶ 9:
! Name !! Details
|-
|[[Activiti_Activiti (software)|Activiti]]||Workflow engine written in Java that can execute business processes described in BPMN 2.0.
|-
|[[Akka_Akka (toolkit)|Akka]]||Toolkit and runtime simplifying the construction of concurrent and distributed applications on the JVM.
|-
|Android Plot||Androidplot is a library for creating dynamic and static charts in your Android app.
|-
|[[Apache_Accumulo|Apache Accumulo]]||Distributed key/value store that provides robust, scalable data storage and retrieval.
|-
|[[Apache_ActiveMQ|Apache ActiveMQ]]||Messaging and Integration Patterns server.
|-
|[[Apache_Avalon|Apache Avalon]]||An application server component framework, includes logging, thread pooling, and scheduling.
|-
|[[Apache_Avro|Apache Avro]]||Remote procedure call and data serialization framework developed within Apache's Hadoop project.
|-
|[[Apache_Axis|Apache Axis]]||Implementation of the SOAP (Simple Object Access Protocol) submission to W3C
|-
|Apache Blur||Large scale search system built on Apache Lucene and Apache Hadoop.
Line 27 ⟶ 29:
|Apache BookKeeper||Replicated log service which can be used to build replicated state machines.
|-
|[[Apache_Camel|Apache Camel]]||Rule-based routing and mediation engine that provides a Java object-based implementation of the Enterprise Integration Patterns using an API to configure routing and mediation rules.
|-
|Apache Cayenne||Powerful, full-featured, open-source object relational mapping framework created for developers working with relational databases.
|-
|[[Apache_Click|Apache Click]]||Component oriented web application framework for the Java language and is built on top of the Java Servlet API
|-
|[[Apache_Cocoon|Apache Cocoon]]||Web application framework built around the concepts of pipeline, separation of concerns and component-based web development.
|-
|Apache Commons||Collection of open source reusable Java components from the Apache/Jakarta community
Line 39 ⟶ 41:
|Apache Crunch||Framework for writing, testing, and running MapReduce pipelines. Its goal is to make pipelines that are composed of many user-defined functions simple to write, easy to test, and efficient to run.
|-
|[[Apache_CXF|Apache CXF]]||Services framework. CXF helps to build and develop services using frontend programming APIs, like JAX-WS and JAX-RS.
|-
|Apache DataFu||Collection of libraries for working with large-scale data in Hadoop.
|-
|[[Apache_EmpireApache Empire-db|Apache Empire DB]]||Relational database abstraction layer and data persistence component that allows developers to take a much more SQL-centric approach in application development than traditional Object-relational mapping frameworks.
|-
|[[Apache_Felix|Apache Felix]]||Apache Felix is a community effort to implement the OSGi Framework and Service platform and other interesting OSGi-related technologies under the Apache license.
|-
|[[Apache_Flume|Apache Flume]]||Distributed, reliable, and available service for efficiently collecting, aggregating, and moving large amounts of log data.
|-
|[[Apache_Geronimo|Apache Geronimo]]||Open source server runtime that integrates the best open source projects to create Java/OSGi server runtimes that meet the needs of enterprise developers and system administrators
|-
|[[Apache_Giraph|Apache Giraph]]||Iterative graph processing system built for high scalability.
|-
|[[Apache_Hadoop|Apache Hadoop]]||Framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models.
|-
|[[Apache_HBase|Apache HBase]]||Non-relational, distributed database modeled after Google's BigTable
|-
|[[Apache_Hive|Apache Hive]]||Component of Hortonworks Data Platform(HDP). Hive provides a SQL-like interface to data stored in HDP.
|-
|[[Apache_JackrabbitApache Jackrabbit|Apache JackRabbit]]||Content repository for the Java platform.
|-
|Apache JavaNlp||Java machine learning toolkit for natural language processing (NLP).
|-
|[[Jena_Jena (framework)|Apache Jena]]||Web framework for Java. It provides an API to extract data from and write to RDF graphs
|-
|[[Jena_Jena (framework)|Apache Jena]]||Semantic Web framework for Java.
|-
|[[Apache_Kafka|Apache Kafka]]||Stream processing platform
|-
|[[Log4j|Apache Log4j]]|| Java logging framework
|-
|[[Apache_Lucene|Apache Lucene]]||High-performance, full-featured text search engine library.
|-
|[[Apache_Mahout|Apache Mahout]]||Project of the Apache Software Foundation to produce free implementations of distributed or otherwise scalable machine learning algorithms focused primarily in the areas of collaborative filtering, clustering and classification.
|-
|[[Apache_Mesos|Apache Mesos]]||Apache Mesos abstracts CPU, memory, storage, and other compute resources away from machines (physical or virtual), enabling fault-tolerant and elastic distributed systems to easily be built and run effectively.
|-
|[[Apache_MINAApache MINA|Apache Mina]]||Java network application framework. MINA can be used to create scalable, high performance network applications.
|-
|[[Object_Oriented_Data_TechnologyObject Oriented Data Technology|Apache OODT]]||Data management system framework
|-
|[[Apache_Oozie|Apache Oozie]]||Server-based workflow scheduling system to manage Hadoop jobs.
|-
|Apache OpenNLP||Java machine learning toolkit for natural language processing (NLP).
|-
|[[Apache_PDFBox|Apache PDFBox]]||Java tool for working with PDF documents.
|-
|[[Pig_Pig (programming_toolprogramming tool)|Apache Pig]]||High-level platform for creating programs that run on Apache Hadoop.
|-
|[[Apache_Pivot|Apache Pivot]]||Platform for building rich web applications in Java or any JVM-compatible language.
|-
|[[Apache_POI|Apache POI]]||APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format.
|-
|[[Apache_Qpid|Apache Qpid]]||Messaging system, implements the Advanced Message Queuing Protocol.
|-
|[[Jini|Apache River (Jini)]]||Apache River is a project furthering the development and advancement of Jini technology. River is the implementation of Jini service oriented architecture.
|-
|[[Apache_Samza|Apache Samza]]||Distributed stream processing framework.
|-
|[[Apache_Shiro|Apache Shiro]]||Powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.
|-
|[[Apache_Sling|Apache Sling]]||Web framework for the Java platform designed to create content-centric applications on top of a JSR-170-compliant (a.k.a. JCR) content repository such as Apache Jackrabbit.
|-
|[[Apache_Solr|Apache Solr]]||Enterprise search platform
|-
|[[Apache_Spark|Apache Spark]]||Fast and general engine for big data processing, with built-in modules for streaming, SQL, machine learning and graph processing.
|-
|[[Storm_Storm (event_processorevent processor)|Apache Storm]]||Distributed realtime computation system.
|-
|[[Apache_Struts_2Apache Struts 2|Apache Struts]]||Framework for building Servlet/JSP based web applications based on the MVC design paradigm
|-
|[[Apache_Tapestry|Apache Tapestry]]||Component-oriented Java web application framework
|-
|[[Apache_Tika|Apache Tika]]||Content detection and analysis framework.
|-
|[[Apache_Tomcat|Apache Tomcat]]||Tomcat Server, is an open-source Java Servlet Container
|-
|Apache Turbine||Web application development framework to facilitate building secure web applications.
Line 123 ⟶ 125:
|Apache UserGrid||Backend-as-a-Service (“BaaS” or “mBaaS”) composed of an integrated distributed NoSQL database, application layer and client tier with SDKs for developers looking to rapidly build web and/or mobile applications.
|-
|[[Apache_Velocity|Apache Velocity]]||Java-based template engine that provides a template language to reference objects defined in Java code
|-
|[[Apache_VXQuery|Apache VXQuery]]||Standards-compliant XML Query processor that is implemented in Java
|-
|[[Apache_Wink|Apache Wink]]||Apache Wink is an open source framework that enables development and consumption of REST style web services.
|-
|[[Xerces|Apache Xerces]]||Collection of software libraries for parsing, validating, serializing and manipulating XML.
|-
|[[Apache_ZooKeeperApache ZooKeeper|Apache Zookeeper]]||Centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
|-
|Axon||The axon framework is focussed on making life easier for developers that want to create a java application based on the CQRS principles.
|-
|[[Barracuda_Barracuda (Java)|Barracuda]]||MVC web application framework for developing Java EE web applications.
|-
|Beads||Library written in Java for realtime audio.
Line 141 ⟶ 143:
|BigFaceless||BFO develop Java APIs for working with PDF documents and Graphs.
|-
|[[BioJava|BioJava]]||Java framework for processing biological data.
|-
|[[Java_APIs_for_BluetoothJava APIs for Bluetooth|BlueCove]]||Java library for Bluetooth (JSR-82 implementation)
|-
|[[Bouncy_Castle_Bouncy Castle (cryptography)|Bouncy Castle Cryptographic]]||Collection of APIs used in cryptography. It includes APIs for both the Java and the C# programming languages.
|-
|[[Cascading_Cascading (software)|Cascading]]||Abstraction layer for Apache Hadoop and Apache Flink. Cascading is used to create and execute complex data processing workflows on a Hadoop cluster using any JVM-based language.
|-
|Checker||Checker Framework lets software developers detect and prevent errors in their Java programs.
|-
|[[Codename_OneCodename One|CodeName One]]||Set of software development tools aiming to provide ›Write Once, Run Anywhere‹ code for various desktop and mobile operating systems (like Windows, macOS, Android, Blackberry, iOS and others).
|-
|ControlsFX||ControlsFX is an open source project for JavaFX that aims to provide really high quality UI controls and other tools to complement the core JavaFX distribution.
|-
|[[Deeplearning4j|Deeplearning4j]]||Open-Source Deep-Learning Software for Java and Scala on Hadoop and Spark.
|-
|[[DWR_DWR (Java)|DirectWebRemoting]]||library that enables Java on the server and JavaScript in a browser to interact and call each other as simply as possible.
|-
|DropWizard Jersey||RESTful web services
|-
|[[EclipseLink|EclipseLink]]||Java persistence solution addressing relational, XML, and database web services.
|-
|[[Ehcache|EHCache]]||Ehcache is an open source, standards-based cache that boosts performance, offloads your database, and simplifies scalability.
|-
|[[Efficient_Java_Matrix_LibraryEfficient Java Matrix Library|Ejml (Efficient Java Matrix Library)]]||Java linear algebra library for manipulating dense matrices.
|-
|Facebook4j||Facebook4J is an open-sourced, mavenized Java library. With Facebook4J, you can easily integrate your application with the Facebook API
Line 181 ⟶ 183:
|[[GeoAPI|GeoApi]]||Set of Java language programming interfaces for geospatial applications.
|-
|[[GeoTools|GeoTools]]||Java library that provides tools for geospatial data.
|-
|[[GlassFish|GlassFish]]||Application server and official reference implementation for Servlets 3.0.
|-
|[[Gson|Google GSon]]||Library to serialize and deserialize Java objects to (and from) JSON.
|-
|[[Google_Guava|Google Guava]]||Set of common libraries, it facilitates best coding practices and helps reduce coding errors. It provides utility methods for collections, caching, primitives support, concurrency, common annotations, string processing, I/O, and validations.
|-
|[[Google_Guice|Google Guice]]||Lightweight dependency injection framework for Java 6 and above
|-
|[[Google_Web_ToolkitGoogle Web Toolkit|Google Web Toolkit (GWT)]]||Set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java.
|-
|GStreamer||Library for constructing graphs of media-handling components. The applications it supports range from simple Ogg/Vorbis playback, audio/video streaming to complex audio (mixing) and video (non-linear editing) processing.
Line 197 ⟶ 199:
|GXT||Java framework for building feature-rich web applications for both desktops and tablets.
|-
|[[Hibernate_Hibernate (framework)|Hibernate]]||Object-relational mapping tool for the Java programming language. It provides a framework for mapping an object-oriented ___domain model to a relational database.
|-
|[[HSQLDB|HSQLDB]]||RDBMS with JDBC interface, client-server version, query tool, grid, tree, performance test class, servlet, and self-test program.
|-
|[[IBATIS|iBatis]]||Persistence framework which automates the mapping between SQL databases and objects in Java, .NET, and Ruby on Rails.
|-
|[[Infinispan|Infinispan]]||Distributed in-memory key/value data store with optional schema
|-
|[[IText|IText]]||Dynamic PDF generation and manipulation for web- and other applications (Java, C#).
|-
|JackCess||Library for reading and writing MS Access databases.
|-
|[[Jackson_Jackson (API)|Jackson]]||High-performance JSON processor for Java.
|-
|[[Java_Media_Framework|Java Media Framework]]||The Java Media Framework (JMF) is a Java library that enables audio, video and other time-based media to be added to Java applications and applets.
|-
|[[Javassist|JavAssist]]||Library providing a means to manipulate the Java bytecode of an application.
Line 217 ⟶ 219:
|Javers||JaVers is a lightweight java library for auditing changes in your data.
|-
|[[Java_API_for_XML_ProcessingJava API for XML Processing|JaxP]]||Java XML Application programming interfaces (API)s, provides the capability of validating and parsing XML documents.
|-
|[[JBoss_Seam|JBoss Seam]]||Web application framework developed by JBoss
|-
|JCabi||Collection of small and useful Java components, which are not big enough to make their own projects.
Line 227 ⟶ 229:
|Jello||Jello is a Java Application Framework optimized for Google App Engine.
|-
|[[Project_JerseyProject Jersey|Jersey]]||Jersey RESTful Web Services framework, implementstion of [[Java_API_for_RESTful_Web_ServicesJava API for RESTful Web Services|JAX-RS]]
|-
|[[Jetty_Jetty (web_serverweb server)|Jetty]]||Java HTTP (Web) server and Java Servlet container.
|-
|[[JFreeChart|JFreeChart]]||Java chart library that makes it easy for developers to display professional quality charts in their applications.
|-
|JideSoft||Java UI component provider using technologies such as Swing, JavaFX and Javascript/HTML5.
Line 237 ⟶ 239:
|JMock||Mock objects help you design and test the interactions between the objects in your programs.
|-
|[[JMonkeyEngine|JMonkeyEngine]]||Game engine made especially for modern 3D development, as it uses shader technology extensively.
|-
|Joda Time||Quality replacement for the Java date and time classes.
Line 247 ⟶ 249:
|Jppf||JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid.
|-
|[[JProfiler|JProfiler]]||Java profiling tool for performance Tuning
|-
|[[JRockit|JRockit]]||Java profiling tool for performance Tuning
|-
|[[JavaServer_FacesJavaServer Faces|JSF]]||Java specification for building component-based user interfaces for web applications.
|-
|JsonLib||Java library for transforming beans, maps, collections, java arrays and XML to JSON and back again to beans and DynaBeans.
Line 261 ⟶ 263:
|JTS Topology||Java software library that provides an object model for Euclidean planar linear geometry together with a set of fundamental geometric functions.
|-
|[[JUnit|JUnit]]||Unit testing framework
|-
|[[Liquibase|LiquiBase]]||Liquibase is an open source database-independent library for tracking, managing and applying database schema changes.
Line 271 ⟶ 273:
|LoopJ||An asynchronous callback-based Http client for Android built on top of Apache’s HttpClient libraries.
|-
|[[Lightweight_Java_Game_LibraryLightweight Java Game Library|LWJGL]]||Java library that enables cross-platform access to popular native APIs such as OpenGL, OpenAL, and OpenCL.
|-
|MapDB||MapDB provides Java Maps, Sets, Lists, Queues and other collections backed by off-heap or on-disk storage. It is a hybrid between java collection framework and embedded database engine.
|-
|[[Mockito|Mockito]]||Unit testing framework for Java, framework allows the creation of test double objects (mock objects) in automated unit tests for the purpose of Test-driven Development (TDD) or Behavior Driven Development (BDD).
|-
|[[MyBatis|MyBatis]]||First class persistence framework with support for custom SQL, stored procedures and advanced mappings.
|-
|[[ND4J_ND4J (software)|ND4J]]||Scientific computing libraries for the JVM.
|-
|[[Netty_Netty (software)|Netty]]||Netty is a non-blocking I/O (NIO) client-server framework for the development of Java network applications such as protocol servers and clients.
|-
|[[Neuroph|Neuroph]]||Java neural network framework which supports common neural network architectures and learning rules.
|-
|Ninja||Full stack web framework for Java.
Line 289 ⟶ 291:
|OpenCSV||Very simple csv (comma-separated values) parser library for Java.
|-
|[[OpenCV|OpenCV]]||Library of programming functions mainly aimed at real-time computer vision.
|-
|[[Oracle_WebLogic_ServerOracle WebLogic Server|Oracle Weblogic]]||Java EE application server
|-
|[[Oracle_WebLogic_ServerOracle WebLogic Server|Oracle WebLogic]]||Java EE application server
|-
|[[OrientDB|OrientDB]]||NoSQL database management system written in Java. It is a multi-model database, supporting graph, document, key/value, and object models but the relationships are managed as in graph databases with direct connections between records.
|-
|[[ORMLite]]||Object Relational Mapping Lite (ORM Lite) provides some simple, lightweight functionality for persisting Java objects to SQL databases while avoiding the complexity and overhead of more standard ORM packages.
Line 301 ⟶ 303:
|PI4J||The Pi4J Project provides Java programmers full IO control of a Raspberry Pi.
|-
|[[Play_FrameworkPlay Framework|Play]]||Play Framework makes it easy to build web applications with Java & Scala. Play is based on a lightweight, stateless, web-friendly architecture.
|-
|[[PrimeFaces|PrimeFaces]]||User interface (UI) component library for JavaServer Faces (JSF) based applications.
|-
|[[Quartz_Quartz (scheduler)|Quartz]]||Job scheduling library that can be integrated into a wide variety of Java applications.
|-
|Quasar||Framework to build desktop & phone/tablet apps simultaneously.
|-
|[[RabbitMQ|RabbitMQ]]||Message broker software that implements the Advanced Message Queuing Protocol (AMQP).
|-
|Ratpack||Ratpack apps are lightweight, fast, composable with other tools and libraries, easy to test and enjoyable to develop.
Line 319 ⟶ 321:
|RestFB||Simple and flexible Facebook Graph API client written in Java.
|-
|[[Restlet|Restlet]]||Restlet Framework helps Java developers build better web APIs that follow the REST architecture style.
|-
|[[Simple_API_for_XMLSimple API for XML|Sax]]||Event-driven online algorithm for parsing XML documents, with an API developed by the XML-DEV mailing list.
|-
|ScribeJava||Simple OAuth client Java library
Line 327 ⟶ 329:
|Selenide||Framework for test automation powered by Selenium WebDriver
|-
|[[Selenium_Selenium (software)|Selenium]]||Portable software-testing framework for web applications.
|-
|[[SLF4J|SLF4J]]||Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks.
|-
|Slick2D||Slick2D is an easy to use set of tools and utilites wrapped around LWJGL OpenGL bindings to make 2D Java game development easier.
Line 337 ⟶ 339:
|SonarLint||SonarLint is an extension to your favorite IDE that provides on-the-fly feedback to developers on new bugs and quality issues injected into their code.
|-
|[[SonarQube|SonarQube]]||Platform for continuous inspection of code quality.
|-
|[[JasperReports|Jasper Reports]]||Java reporting tool that can write to a variety of targets, such as: screen, a printer, into PDF, HTML, Microsoft Excel, RTF, ODT, Comma-separated values or XML files.
|-
|[[Spock_Spock (testing_frameworktesting framework)|Spock]]||Testing and specification framework for Java and Groovy applications.
|-
|Spring AMQP||The Spring AMQP project applies core Spring concepts to the development of AMQP-based messaging solutions
Line 359 ⟶ 361:
|Spring Data JDBC Extensions||The JDBC support in the Spring Framework is extensive and covers the most commonly used features.
|-
|Spring Data MongoDB||Spring Data for MongoDB is part of the umbrella Spring Data project which aims to provide a familiar and consistent Spring-based programming model for for new datastores while retaining store-specific features and capabilities.
|-
|Spring Data Neo4j||Spring Data Neo4j offers advanced features to map annotated entity classes to the Neo4j Graph Database.
Line 365 ⟶ 367:
|Spring Hateoas||Library to support implementing representations for hyper-text driven REST web services.
|-
|[[Spring_Integration|Spring Integration]]||Framework for enterprise application integration.
|-
|Spring LDAP||library for simplifying LDAP operations, based on the pattern of Spring's JdbcTemplate.
Line 371 ⟶ 373:
|Spring MVC||An action-based web framework built on top of the Spring IOC Container.
|-
|[[Spring_Roo|Spring Roo]]||Spring Roo is an open source software tool that uses convention-over-configuration principles to provide rapid application development of Java-based enterprise software
|-
|[[Spring_Security|Spring Security]]||Powerful and highly customizable authentication and access-control framework
|-
|Spring Session||API and implementations for managing a user's session information.
Line 387 ⟶ 389:
|SuanShu||Object-oriented, high performance, extensively tested, and professionally documented math library.
|-
|[[TestNG|TestNG]]||JUnit-inspired test framework with extra functionality.
|-
|[[Thymeleaf|Thymeleaf]]||Java XML/XHTML/HTML5 template engine that can work both in web (Servlet-based) and non-web environments
|-
|Twitter4J||With Twitter4J, you can easily integrate your Java application with the Twitter service. Twitter4J is an unofficial library.
|-
|[[Vaadin|Vaadin]]||Web framework for rich Internet applications. In contrast to JavaScript libraries and browser-plugin based solutions
|-
|[[Vert.x|Vertx]]||Polyglot event-driven application framework that runs on the Java Virtual Machine.
|-
|[[VRaptor|VRaptor]]||Opensource MVC framework
|-
|WildFly||Application server implements the Java Platform, Enterprise Edition (Java EE) specification.
Line 419 ⟶ 421:
|Xuggler||Xuggler is the easy way to uncompress, modify, and re-compress any media file (or stream) from Java.
|-
|[[ZK_ZK (framework)|ZKoss]]||Ajax Web application framework, written in Java
|}
 
 
 
[[Category:Java (programming language) libraries]]