Handouts and Solutions for

06-18156.2 Internet Computing Workshop: Sem2


Demonstrators

Our two demonstrators are: Cong lun Yao and Hasan Qunoo

Rather than have office hours in their office, they hold them in the labs: thus both of them will be their for both 3 hour lab sessions in the MSc lab.


Tutorial And Lab Classes

Sometimes, the demonstrators will take the first hour of the Thursday lab session (14:00 to 15:00) to give a tutorial. After that the rest of the session will be a normal lab session.

Day
Time
Room
Mondays
09:00-12:00
LG04
Thursdays
14:00-17:00
LG04

Handouts

Handouts are available from the school library from the box in the shelves. The librarian always has a master copy so if they run out from the shelf box, ask the librarian to run off extra copies.

Handout 1: JDBC and Use Cases

The first link covers use of JDBC, using transactions via JDBC, using sequence fields in PostgreSQL, and describes the "Shop" database. There are links to the files used for the exercise in the handout.

The second link discusses Use Cases, a basic specification document form that we will use heavily in the workshop.

For Postgresql, you can find the online information about the schools setup here.

Handout 2: Hibernate

This handout introduces Hibernate, an object-relational mapping tool.

Handout 3: Spring

Here we introduce the Spring Framework. Current version of this handout will be updated.

SimpleSpring: using Spring to insert logging via aspects

SpringHibernateBookshop: using Spring to wire up some Data Access Objects with Hibernate

Handout 4: Wicket (Not available yet)

libhibsprwic.jar: A wicket front end to our hibernate/spring library system (Check here for updates). Note that you have to fix the applicationContext.xml file to refer to your database settings and your log4j.properties file to set the name and location of your log file (set it to an absolute path name, not a relative one). If running on your own machine, the home web address or the application will be http://localhost:8080/app If running on the school systems the host name and the port number will be the usual ones for you. When deployed, the root directory of the application should contain a META-INF directory (which contains context.xml), a styles directory (copied from the contents of resources unchanged) and a WEB-INF directory (which contains applicationContext.xml, web.xml and two directories: classes and lib

hswa.jar: A hibernate/spring/wicket/acegi library system. Note that you have to fix the applicationContext.xml file to refer to your database settings and your log4j.properties file to set the name and location of your log file (set it to an absolute path name, not a relative one). If running on your own machine, the home web address or the application will be http://localhost:8080/app If running on the school systems the host name and the port number will be the usual ones for you. When deployed, the root directory of the application should contain a META-INF directory (which contains context.xml), a styles directory (copied from the contents of resources unchanged) and a WEB-INF directory (which contains applicationContext.xml, web.xml and two directories: classes and lib

Assessed Exercises

This exercise is only available from within the school network or if you tunnel in to the school network from outside using the school's webcache proxy

Assessment 1: Library JDBC

Assessment 2: Library Hibernate

Assessment 3: Library Spring Hibernate

Assessment 4: Library Spring Hibernate Wicket

Assessment 5: Library Spring Hibernate Wicket Acegi

Solutions to Exercises

Solution 1: library_jdbc_solution.jar

Don't forget to fix the database url and your username in the Database.properties file

Solution 2: libhib_src.jar For ease of reading, the full directory is at libhib_src

Solution 3: library_hibspr.jar Note that this does not include a NEW usecase, but shows the old, returnBook usecase in the proper Hibernate Spring way.


Alan P Sexton