CSCI 5895: Advanced Java Programming for E-Commerce

Instructor:

Dr. John R. Sullins

Office hours: MW 9:30 – 10:00, MWF 11:00 – 12:00, MW 1:30 – 2:00, or by appointment

Office: 333 Meshel Hall

Phone: 742-1806

Email: john@cis.ysu.edu

Web site: http://cis.ysu.edu/~john/

   Check the web site regularly, as assignments and announcements will be posted here.

 

Course Description:
Advanced Java programming concepts and tools for electronic commerce and enterprise applications. Servlets, Java server pages, and XML for web server systems. Enterprise JavaBeans for session and entity management. Client side applets, JDBC database manipulation, security, and other advanced topics.

 

Prerequisites:

CSIS 3701: Advanced Object-Oriented Programming. It is assumed that you are very familiar with Java syntax and visual classes, as well as concepts related to object-oriented programming (classes, encapsulation, static properties, inheritance, polymorphism, exception handling, interfaces, and event handling), and that you can design and implement reasonably large programs as part of a team involving those concepts.

Textbook:

Java for the Web with Servlets, JSP, and EJB. Budi Kurniawan, New Riders Press.

The Java Sun web site also has a number of tutorials that you might also find useful, some of which go beyond what is covered in the textbook. These include:

·        http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html (Java Enterprise Edition, version 1.4)

·        http://java.sun.com/docs/books/tutorial/jdbc/index.html (JDBC)

·        http://java.sun.com/docs/books/tutorial/i18n/index.html (Internationalization)

·        http://java.sun.com/docs/books/tutorial/rmi/index.html (Remote Method Invocation)

·        http://java.sun.com/docs/books/tutorial/native1.1/index.html (Java Native Interface)

Grading:

Programming assignments

35% 

3 or 4 biweekly assignments 

Group E-commerce project

35%

Due last week of class

Exam 1

15%

October 6

Exam 2

15%

November 3

     no final exam

            Last day to withdraw with a "W": Saturday, October 25

 

Assignments:

Programming assignments will introduce you to basic server-side programming concepts, including servlets and server pages, session management, database manipulation, and client-side applets.

The final project will involve developing an e-commerce site in programming teams of 3 or 4. The site will exercise the server, client, and database programming covered by the assignments, as well as advanced concepts such as security and enterprise design. Free time during class will occasionally be given near the end of the term for groups to meet.

Software:

In order to implement the assignments and the project, you will need to download and install the Tomcat server on your computer (if this is a problem, please see me to make other arrangements). Instructions are in Appendix A of the textbook – this is something that you should do as soon as possible. We will also be working with a database program at some point (either Access or MySql) so I may have you install a database driver as well.

Very Tentative Course Outline:  

WEEK

TOPICS

8/25

Introduction to enterprise computing, Java servlets

9/1

Implementing servlets on the Tomcat server (University closed Monday)

9/8

Database drivers, Introduction to JDBC

9/15

JDBC database manipulation and creation

9/22

Session management, filtering servlets

9/29

Java Server Pages

10/6

XML and JSP custom tags

10/13

Client-side applets

10/20

Security configuration

10/27

Designing and developing multi-tiered E-Commerce applications

11/3

Enterprise session and entity beans

11/10

Java Message Service, message beans

11/17

Internationalization

11/24

Remote method invocation over networks (University closed Friday)

12/1

Java native interface for C++ legacy code, Project presentations