Skip to content

exploring server-side non-blocking web application development in Java

Notifications You must be signed in to change notification settings

LaughingLogic/todosapp

 
 

Repository files navigation

todosapp

todosapp is a sample application that manages your to-do items. It is built primarily to explore the server-side asynchronous programming in JVM web frameworks. It is inspired by todomvc, a browser-side sample application to showcase MV* JavaScript frameworks.

You can find more info in my article "Develop Non-Blocking Web Applications in Java".

JVM Web Frameworks

In the sub-projects, we build the sample project using the following frameworks respectively:

  • Java EE: Servlet and JAX-RS
  • Spring MVC, with Spring Data and Spring Boot
  • Vert.x 2.0 for Java
  • Play 2 Framework for Java

Applications

Once running, the web application can be accessed at its homepage

 http://localhost:8080

There are actually three "applications" packaged in each sub-project:

Java 8

All modules are implemented in Java 8, taking advantage of the Lambda expressions.

###Maven Integration

The build system is Maven. Maven 3.2.2 or newer should be used. Older versions of Maven can result in CDI linkage errors.

To build all sub-projects, run

mvn clean install

Each application can be deployed and run on its embedded application server with an in-memory database directly from Maven. Refer to the instruction in each project for how to run the application.

IDE and NetBeans

The project is built using Maven. You can open it in any of your favorite IDE.

If you open the module as a Maven project in NetBeans, you can leverage NetBeans integration with Maven to run NetBeans command Clean, Build, Run and Debug.

About

exploring server-side non-blocking web application development in Java

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 69.4%
  • HTML 13.4%
  • JavaScript 10.4%
  • Handlebars 6.3%
  • Scala 0.5%