This repository contains example code demonstrating various concepts introduced in SOFTENG 325 at the University of Auckland.
-
Example 01: Contains a simple example of how to send raw data over a TCP connection.
-
Example 02: Contains an example of how to serialize Java objects and send them across a network connection or convert them into a byte array.
-
Example 03: Contains an example of a simple Java Servlet.
-
Example 04: Contains a simple "hello world" SOAP service written in Java.
-
Example 05: Contains two REST services written using JAX-RS.
-
Example 06: Contains several examples showing how to use Jackson to serialize / deserialize JSON from our Java programs.
-
Example 07: Extends our parolee service running example with support for a custom data format - Java serialization.
-
Example 08: Extends our parolee service running example with support for JSON, without having to manually write out JSON strings.
-
Example 09: A simple example showing JPA and Hibernate usage.
-
Example 10: A much more complex JPA / Hibernate example, showing entity-entity relationships of various cardinalities, inheritance, and several examples of different kinds of JPQL queries.
-
Example 11: A more thoroughly implemented Parolee web service. Written without JPA / Hibernate, for comparison with example 12 below.
-
Example 12: Identical to example 11, but uses JPA / Hibernate for persistence.
-
Example 13: Shows how a rudimentary chat app can be build using JAX-RS support for asynchronous web services. Compare and contrast this with the WebSockets approach in Example 15.
-
Example 14: Builds on example 12, adding an asynchronous web method allowing users to subscribe to parole violations.
-
Example 15: Shows how a rudimentary chat app can be build using WebSockets. Compare and contrast this with the async web services approach in Example 13.
-
Example 16: Shows how we can integrate WebSockets with a larger application, by extending our Parolee web service with support for subscribing to parolee movements.