Technologies, Tools and frameworks that I am using through my current project or have used in my past projects and proof of concepts.
Enterprise JavaBeans (EJB) technology is the server-side component architecture for Java Platform, Enterprise Edition (Java EE). EJB technology enables rapid and simplified development of distributed, transactional, secure and portable applications based on Java technology.
Apache Struts 2 is an elegant, extensible framework for creating enterprise-ready Java web applications. The framework is designed to streamline the full development cycle, from building, to deploying, to maintaining applications over time.
With Google App Engine (GAE) for Java, you can build web applications using standard Java technologies and run them on Google's scalable infrastructure. The Java environment provides a Java 6 JVM, a Java Servlets interface, and support for standard interfaces to the App Engine scalable datastore and services, such as JDO, JPA, JavaMail, and JCache.
Hibernate is a powerful, ultra-high performance object/relational persistence and query service for Java. Hibernate lets you develop persistent objects following common Java idiom – including association, inheritance, polymorphism, composition and the Java collections framework. Extremely fine-grained, richly typed object models are possible. The Hibernate Query Language, designed as a "minimal" object-oriented extension to SQL, provides an elegant bridge between the object and relational worlds. Hibernate is now the most popular ORM solution for Java.
Spring is a layered Java/J2EE application framework, based on code published in Expert One-on-One J2EE Design and Development
Spring is a layered Java/J2EE application framework, based on code published in Expert One-on-One J2EE Design and Development.JUnit is a regression testing framework written by Erich Gamma and Kent Beck. It is used by the developer who implements unit tests in Java.
The JavaServer Pages Standard Tag Library (JSTL) encapsulates, as simple tags, core functionality common to many JSP applications. For example, instead of suggesting that you iterate over lists using a scriptlet or different iteration tags from numerous vendors, JSTL defines a standard tag that works the same everywhere. This standardization lets you learn a single tag and use it on multiple JSP containers. Also, when tags are standard, containers can recognize them and optimize their implementations.
Log4j is a logging tool that allows you to log at runtime without modifying the application binary. The log4j package is designed so that logging statements can remain in shipped code without incurring a heavy performance cost. Logging behavior can be controlled by editing a configuration file, without touching the application binary.
Axis is the third generation of Apache SOAP (which began at IBM as "SOAP4J"). It also includes: * a simple stand-alone server, * a server which plugs into servlet engines such as Tomcat, * extensive support for the Web Service Description Language (WSDL), * emitter tooling that generates Java classes from WSDL. * some sample programs, and * a tool for monitoring TCP/IP packets.
Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project’s build, reporting and documentation from a central piece of information.
Cruise Control is both continuous integration tool and is extensible framework for creating a custom continuous build process.
Like Cruise Control, Hudson is also both continuous integration tool and is extensible framework for creating a custom continuous build process. This is relatively a new tool compared to Cruise Control but it is gaining a lot of popularity among Agile development teams.