CECS-423: Database Applications
This site contains information about the activities to be carried out in the database
web applications class, CECS-423, during Spring-2011. Here you'll find the most recent
activities in each of the different categories and you'll also find announcements.
You can read the CECS-423 Spring 2011 class syllabus
to get more administrative details about the class.
Readings and Lectures
Following is a brief description of the concepts introduced during each of
the fifteen weeks of the course. Under construction, below is just a
subset of topics to be covered
- Introduction to the course, overview of the
JEE 6 API's
we will learn. Introduction to the
Model View Controller (MVC) design pattern.
Lecture notes introducing Java EE
and notes on JPA 2.0.
Lab: Introduction to NetBeans, GlassFish, JavaDB, sample application.
- Persistence layer: JPA. Lab: Discussion of JPA and how it is used in the
sample application. Chapters 2, 3, and 4 from JEE Book.
The NetBeans project modeling player/team (Subversion repository) provides an introductory example of JPA.
Read some notes on using Subversion in NetBeans. Lecture notes on JPQL.
- Business layer: Enterprise Java Beans (EJB). Session Beans.
Chapters 6 and 7 from JEE book.
Lecture notes on EJBs.
Presentation layer: JavaServer Faces. JSF, Facelets, Managed Beans.
Chapters 10, 11, 12 from JEE book. See also the first few chapters of the
JSF book. There are two example projects in the Subversion repository, one
is from chapter 2 of the JSF book and another is a small web application
demonstrating the differences between managed beans with different scopes.
See my CECS 470 class web site
for resources on these web technologies.
- Submit your SRS.
Review examples in the Subversion repository:
a sample solution to A#2
and a project with the examples from Chapter 11 of the JEE book.
- Review of SRS, guest lecture on
Human Factors in Web Design by Dr. Tom Strybel.
- More information on the JEE API's
used in each of the three layers of: persistence, business
model, and presentation.
- Rest of the semester: Stored Procedures
and Database Triggers. Securing JEE Applications,
miscellaneous lectures, guest speakers, and work on project
- Instructions for configuring
your own AWS EC2 instance that will run
GlassFish and where you will deploy the web application.
- Books to read/reference and accessible online from
Safari Books Online or from
both are collections of books online to which CSULB has a license -- you
will need to use the CSULB library proxy service in order to access it from
outside of the csulb.edu network.
- Description of database projects
from previous semesters.
- We will use NetBeans to develop our web applications. You may download the
NetBeans IDE from netbeans.org. Be
sure to download the Java bundle that includes the Sun GlassFish Enterprise
Java EE 6 Tutorial is a great starting place for much of this technology
in addition to the books above.
Working with the Java DB (Derby) Database -- This is
a page describing how to use the Apache Derby database
(repackaged as part of Java where it's known as Java DB).
It's a tutorial, so you can follow the instructions to
start the JavaDB server, create a database, connect to
the database, create a table, and query it.
- Configuring JDBC Resources
in GlassFish. This page has instructions on how to
create a database pool and a JDBC Resource for use in
your web applications.
Getting Started with Java EE 6 Applications from netbeans.org -- we will be
developing web applications and this web page has instructions for setting up
your very first web application.
- The EclipseLink JPA
User's Guide has good explanations and examples of the various JPA annotations.
EclipseLink is the reference implementation for JPA 2.0.
- The database model (PDF),
in the form of a UML Class diagram, and accompanying
documentation (PDF) that
models the information for the academic programs of a University. These are provided
here for review of modeling techniques learned in CECS 323 and CECS 343, both of which
are prerequisites to this class.