Program Objectives: The Program aims to up skill the students on the comprehensive knowledge domain in Java/J2EE technologies including MVC Architecture, JSP, Servlets, Struts, Spring and Hibernate. After Completing the program Students will able to develop Web applications using J2EE framework, Struts, Spring and Hibernate. Pre-Requisite: Students who have excellent OOPS concepts and core Java 6/7 knowledge. Program Schedule: Sl.No Course Title Intervention Duration (Hrs) 1 J2EE framework (JSP & Servlet) Up skilling and knowledge reinforcement 40Hrs 2 Struts 2 Up skilling and knowledge reinforcement 20 Hrs 3 Spring using Hibernate Up skilling and knowledge reinforcement 20 Hrs 5 Project Project Development 40 Hrs Total Duration 120 Hrs
3 | TALENTEDGE Confidential
Session Plan Course - J2EE (JSP and Servlet) Session number Module Topics 1 JEE Overview Define three-tier architecture Define Model-View-Controller (MVC) architecture 2 Servlets Overview Introduction to Java Servlets Servlet Life Cycle Describe web applications, CGI, and the role of Java Describe benefits of Java servlet technology Create a simple Java Servlet 3 Handling Form data Creating and submitting form Reading individual request parameters Reading an entire set of parameters Reading array of value 4 Redirection Understanding Client side redirection Understanding ServletContext Understanding RequestDispatcher Understanding Server Side Redirection Difference between include and forward 5 Working with database Building web application using JDBC Handling Exception Using JNDI with JDBC Using ServletConfig in an application Using ServletContext Understanding JPA 6 Annotations in Servlet Ease of Development Annotation Support 4 | TALENTEDGE Confidential
7 Using Cookies Stateless nature of HTTP Protocol Explain the need for Session Understanding the benefits and drawback of cookies Sending Outgoing cookies Receiving Incoming cookies Tracking repeat visitors Specifying cookie attributes 8 Handling Session in Servlets Implementing session tracking from scratch Using basic session tracking Understanding Session tracking api URLEncoding Tracking user counts 9 Working with Java Server Pages Understand the need for Java Server pages Evaluating the benefits of Java Server pages(JSP) Understanding JSP Lifecycle Installing JSP pages 10 Scripting Element in JSP Static v/s dynamic text Directives JSP Scriptlets JSP declarations Expression Action 11 Implicit Objects Understanding built In Objects Request, response Out session exception page and application scope 12 Java Beans Understanding the benefits of beans Creating beans Installing beans classes on server Accessing bean properties 5 | TALENTEDGE Confidential
13 Model View Control (MVC) Understanding the benefits of MVC Using RequestDispatcher to implement MVC Forwarding request from servlets to JSP Handling relative URL 14 Object persistence and EL Persisting Object in Request, Session, Application Scope in Servlet Understanding the implementation of EL 15 Implementing JSP tag extensions Understand and use jsp: tags Developing JSP pages using custom tags 16 JSP Standard Tag Library(JSTL) Introduction to JSTL Exploring the features of JSTL Working with core Tag Library Working with SQL Tag library 17 Implementing Filter Exploring the need of filter Exploring filter API Creating a Filter Configuring a Filter Using initialization parameter in Filters 18 Implementing Listeners Understanding Listener Monitoring creation and destruction in ServletContext Recognizing session creation and destruction Recognizing request creation and destruction 19 Security Understanding major security concern Declarative v/s programmatic security Using form based authentication Using BASIC authentication 20 AJAX Asynchronous web applications Understand the interactions that are essential to asynchronous web pages Understand the role of AJAX-style client side programming Implement asynchronous servlets using the facilities of Java EE 6
6 | TALENTEDGE Confidential
Course -Struts 2 Session number Module Topics 1 Introduction to MVC Struts 2 Architecture Work with custom Filters Compare between servlets and filters, . Understand MVC 2 Framework, Develop a simple MVC 2 Example using Servlet and JSP Why Struts 2? Struts 2 Features and Architecture Configure a Struts 2 project in IDE Folder structure of a Struts 2 project Develop Hello World example using Struts 2 Compare between MVC 1 and MVC 2. Advantages of MVC 2 Front controller design pattern MVC Components in Struts2 2 More on Struts 2 Framework Display data entry form Use predefined constants of Action Interface as return type from the Action class method Extend Action class from ActionSupport Invoke a custom method of the Action class Map the custom return value from the method of Action class in struts.xml Display a data entry form on the click of a link Display the entered values on the resultant page on submitting the form Understand Pull MVC v/s Push MVC Briefly understand Value Stack 3 Dynamic Method Invocation ModelDriven Interface Implement dynamic method invocation in Struts 2 Populate the Action class property which is an object of a user defined class Work with ModelDriven interface 4 Struts 2 form tags Form Validation using Annotations Work with Struts 2 form tags Validate a Struts 2 data entry form using annotations 5 XML Form Validation Internationalization in Struts 2 Validate the Struts 2 data entry form using xml based validation Work with property files and implement internationalization in Struts 2 7 | TALENTEDGE Confidential
6 Dependency Injection in Struts 2 Interceptors in Struts 2 Refer to HTTPSession inside the Action class Perform dependency injection using SessionAware interface Perform Custom validation Understand the importance of interceptors Create custom interceptor to get more information about Action class Implement lifecycle methods of interceptors Declare and include interceptors in the struts.xml file 7 Custom Interceptors Predefined Interceptors Work with custom Interceptors which provide functionality in Struts 2 Work with interceptor stack Work with predefined interceptors like Logger, Timer, ServletConfigetc Understand struts-default.xml file 8 FileUpload in Struts 2 Exception handling, ResultTypes Retrieve request parameters and session attributes in Action class Upload a file using Struts 2 Handle exception in Struts 2 at action level and package level Implement the exception interceptor Work with different result types 9 Tiles and Struts 2 Jasper Reports and Struts 2 Achieve standard look and feel for all pages of the web application using Tiles framework in Struts 2. Work with Jasper Reports in Struts 2 Work with ValueStack and OGNL 10 More Struts 2 Tags Annotations in Struts 2 Work with Struts data tags, control tags Understand Struts 2 Themes Replace struts.xml file with annotations at action class/method level
8 | TALENTEDGE Confidential
Course -Spring with Hibernate Session number Module Topics 1 Introduction to Spring Understanding the Bean Life Cycle The Spring application context XML configuration Working with existing singletons and factories Working with multiple configuration files XML namespaces Initialization, use, and destruction phases Externalizing constant values into properties files Bean Scopes 2 Simplifying Application Configuration Annotation-Based Dependency Injection Dependency injection of collections Inner beans Bean definition inheritance Autowiring and component scanning Stereotype annotations Java-based configuration Mixing configuration styles When to use XML, annotations, and Java configuration 3 Aspect-Oriented Programming Data Access and JDBC with Spring What problems does AOP solve? Differences between Spring AOP and AspectJ Defining pointcut expressions How to use the types of advice: around, before, after How Spring integrates with existing data access technologies DataAccessException hierarchy Simplifying jdbc access using the Spring JdbcTemplate 9 | TALENTEDGE Confidential
4 Object Persistence and Hibernate Architecture Persistent Classes Object/Relational Paradigms O/R Mismatch Object Relational Mapping (ORM) Java ORM/Persistent Frameworks Hibernate Architecture and API Hibernate Installation/Setup Configuration Files Mapping Files POJOs/JavaBeans Basic Mapping Class to Table Mappings Property Mapping Identifiers Generators Quoting SQL Tables and Columns 5 Working with Persistent Objects Mapping Simple Associations Entity Lifecycle Transient State Persistent State Persistent Object Updates Automatic Dirty Checking Detatched State Deleted,Merge State Many-to-one Bidirectional Many-to-one Many-to-many Bidirectional Many-to-many The Relationship "inverse" Cascading Over Relationships Queries Across Relationships (Lazy and Eager) 6 Inheritance Mappings Hibernate Query Language (HQL) Inheritance Mapping Strategies Table per concrete class Table per subclass Table per hierarchy Inheritance Mapping Pros/Cons Choosing an Inheritance Strategy Hibernate Object Fetching Options Hibernate Query Language HQL Parameters Named Queries Native SQL 10 | TALENTEDGE Confidential
7 Hibernate Criteria API's Hibernate Caching Restrictions Projections Query By Example Pagination Query Option Pros/Cons The promise of Cache Hibernate Caching Architecture First Level Cache Second Level Cache Cache Concurrency Configuring Second Level Cache using EHCache 8 Integrating Spring with Hibernate Database Transactions with Spring Quick introduction to ORM with Hibernate Benefits of using Spring with Hibernate Hibernate configuration in Spring Exception handling The Java Transaction Hibernate Transaction Configuration Hibernate Transaction API Declaring a Spring Transaction Manager @Transactional annotation Configuring Exceptions Configuring transaction propagation 9 Getting Started with Spring Web MVC Spring MVC Configuration Options Spring model-view-controller (MVC) overview DispatcherServlet Controller programming model overview Spring MVC views Simplifying configuration Spring MVC infrastructure Beans URL mappings Message source Views and view resolvers 11 | TALENTEDGE Confidential
10 Building Form Pages with Spring MVC Integration of Spring with Web Components and Struts 2.0 Form rendering Type conversion Data binding Form validation using Spring and Bean validation (JSR 303) Form object management Configuring ContextLoaderListener in web Application Creating applicationContext.xml Configuring Files using contextConfigLocation context- param COnfiguring Struts-Spring Plugin Managing Action Configurations in Spring Bean Configuration Files Linking Spring Bean Configuration with Struts Action Configurations