Java

 

CMP 436-F401 / CMP 774-F401: Introduction to Java Enterprise Computing

(Java Technologies for Enterprise Computing)

Mathematics and Computer Science
Lehman College
, City University of New York
Fall 2013

 


Instructor: Professor Gwang Jung
Email: gwang.jung@lehman.cuny.edu
Phone: 718-960-8785
Office: Gillet Hall (GI) 100-C

Lecture Schedule: Tuesdays and Thursdays 4:00 - 5:40 PM (GI 205)

Office Hours: Tuesdays and Thursdays 12:00 PM- 2:00 PM; Wednesdays: 3:00 PM - 5:30 PM; and other time by appointments


Course Objectives:  

This course covers Java enabling technologies (based on Java Enterprise Edition EE 7) for developing and running portable, robust, scalable, reliable and secure server-side applications.

  • Topics to include: Introduction to EE 6 and EE 7, Servlets, Java Server Pages, Java Server Faces, JDBC, Enterprise Java Beans (EJB), and Web Services (SOAP, RESTful), Web Sockets, Java Persistence API (JPA), Transaction Management, Contexts and Dependency Injection (CDI), Messaging with Java Message Service (JMS) and Message Driven Beans (MDBs), reviewing other Application Frameworks such as Spring and Struts

Prerequisites:  

  • CMP 338 (or 326) and Proficiency in Java

References:  

  1. Main reference 1: Java EE 7 Tutorial (August 2013 version): Java EE 7 tutorial in pdf also available at ( http://docs.oracle.com/javaee/7/tutorial/doc/)
    1. Note: Some examples will be selected from Java EE 6 Tutorial (January 2013 version): Java EE 6 tutorial in pdf also available at ( http://docs.oracle.com/javaee/6/tutorial/doc/). Java EE 6 tutorial examples Java EE 6 tutorial examples
  2. Main Reference 2: The NetBeans E-Commerce Tutorial ( http://netbeans.org/kb/docs/javaee/ecommerce/intro.html)
  3. David R Heffelfinger , Java EE 6 Development with NetBeans 7, Packet Publishing, 2011, ISBN 978-1-849512-70-1
  4. Java Server Pages ( Introduction to JSP)
  5. Coreservets.com ( http://www.coreservlets.com/)
  6. HTML (HTML 5, XHTML), CSS, AJAX, Java Script, etc. http://www.w3schools.com/default.asp
  7. Lecture Notes

Evaluation: 

1.   Programming Assignments (5 or 6): 30-35%

2.   Exams (Midterm, Final): 60-65%

3.   Class Participation : 10%

4. Presentation (Graduate Students only): topics -- Controlling concurrent access to entity data with locking, using second-level cache with JPA, Advanced Java EE security, batch processing (from R1)

Grading Scale: TBA; Exam Schedule: TBA

 

Makeup exam might be given only when a student's absence was unavoidable. In such a case, the student must file a formal written request.

 

Course Outline:         

 

 

Week

 

Lecture

 

Chapter

 

Topics

 

1

Introduction to Java EE

R1 (1, 2)

R2 (1, 2, 3)

Introduction to Java EE, setting up development environment (NetBeans 7.3, GlassFish application server 3.x, 4.x, MySQL DBMS community server)

 

2, 3

NetBeans E-Commerce Tutorial

R1 (3, 17)

R2 (2-6)

R3, R4, R5 (JSP/Servlets)

Requirements analysis, workflow analysis, data modeling, designing application, page views and controller servlet, connecting the application to database, JSP JSTL, EL (expression Language), Servlets, JNDI, Data Source Objects and Connection Pool

 4,5

NetBeans E-Commerce Tutorial (cont'd)

R2 (7, 8, 9)

R1(26, 27, 28, 35, 36, 37, 48)

Managing database by EJBs (entity and session beans) and JPA, entity manager concept, object relational mapping concept, session management, transactions

6, 7, 8
Java Server Faces
R1(6-12) R3

JSF framework, Facelets, JSF Lifecycle, Managed Beans, Facelets templating, Composite Component, PrimeFaces

Mid-term Exam

9, 10, 11
Web Services, Web Sockets, JSON Processing
R1(21, 22, 23, 24, 25, 18, 19)

JAX-WS (SOAP based), JAX-RS(RESTful Web Services), Web Sockets, JSON Processing

11, 12
Contexts and Dependency Injection (CDI)
R1(31, 32, 33, 34)
CDI concepts and examples
13, 14
Messaging with Java Message Services(JMS) and Message Driven beans (MDB)
R1(26, 42, 43), R3
JMS MDB concepts and examples
15
Other application frameworks

Brief introduction to Spring, Struts application framework, graduate student presentations

16
Final Exam  

Final Exam

 

Course Syllabus and other references

 

Homework

  • HW1: Study Reference (R1: ch1, ch2; R2: ch1, ch2, ch3) and install JDK 7, EE SDK 7 (bundled with GlassFish Application Server), apache ant, apache maven

Programming Assignments

  • TBA

Lecture Notes