|Building Banking Systems with J2EE Design Patterns|
|Duration: 5 days|
- J2EE developers
- Software designers
- Software architects
- Experience with Java, Servlets, JSP is a prerequisite.
- Exposure to EJB is highly recommended.
- Exposure to UML is recommended.
|This five-day course covers the most successful practices in developing J2EE applications. Developing Advanced Enterprise Systems With J2EE Patterns goes far beyond the coverage of J2EE patterns in texts: this practical course goes deeply into the details of designs and implementation of patterns and shows patterns applied in realistic setting. Besides showing individual patterns in the integration layer, the Enterprise JavaBean layer and the presentation layer, the course shows how to use and combine these J2EE patterns in building a complete banking system application. Numerous design and coding examples and extensive design and code exercises enable participants to quickly acquire the level of knowledge needed to effectively build sophisticated J2EE systems. The course also goes beyond published J2EE patterns and covers important issues of enterprise systems like error handling, memory management and caching, remote notification, and integration with legacy systems.
This is a hands-on course for experienced developers. Computer labs represent 50% of the course, design exercises preceding the computer labs 15%.
The web-based banking system application this course aims to build supports three kinds of users: bank customers, bank tellers, and bank managers. Bank customers need to login to access the system. Once logged in, they can view accounts summary (list account numbers, account types, current balance of each account), view transactions of a particular account, transfer money between accounts, update account information such as password, address, etc, and finally logout. Bank tellers can enter transactions for customers. Transactions can be cashing a check, depositing cash, transferring money, etc. Bank managers can add customers and add accounts for customers.
The application uses all the major J2EE design patterns and applies them in an
industry-strength way. To get students started, a lot of base code is provided.
Students are expected to use the base code as examples and add more functionality
to the system.
|The objective of the course is to transform participants with J2EE fundamental knowledge into expert J2EE developers by teaching and exercising best practices of enterprise application development.|
On completion of this course, developers will be able to:
- Develop J2EE applications faster and better with the use of J2EE patterns
- Design and implement J2EE systems for high performance, modifiability, and scalability
- Recognize potential architecture and design problems early on and design and implement
an optimal solution
- Select the best combination and implementation of patterns for problem at hand
- Implement design pattern solutions with Servlets, JSPs, with and without EJBs
- Apply the patterns to a real-world banking system application
- Reuse code from the course in daily work
|Developing Enterprise Systems
- Analysis and Design
- From UML Models to Enterprise Systems
- Problems of Enterprise Applications
- Design Patterns in Enterprise Systems
- Enterprise Architectures
Presentation Tier Patterns
- Tiers in Applications
- Separation of Domains
- Connecting Domains
- Domains in J2EE Systems
- Presentation Tier
- Business Tier
- Decorating Filter
- Front Controller
- View Helper
- Composite View
- Service To Worker
- Dispatcher View
- Selecting the Right Presentation Tier Pattern
||Business Tier Patterns
Integration Tier Patterns
- Business Delegate
- Value Object
- Value Object Assembler
- Value List Handler
- Session Fašade
- Aggregate Entity
- Service Locator
- Selecting the Right Business Tier Pattern
Beyond J2EE Patterns
- Data Access Object
- Object-Relational Mapping
- Service Activator
- Memory Management in Enterprise Applications
- Memory Leaks in Java
- Reference Objects
- Building Custom Cache Systems
- Error Handling Patterns
- Remote Notification Mechanisms
- Integration With Legacy Systems