Software Development & Education Center Java Advance Frameworks (Struts Hibernate Spring)
STRUTS 2.0 Apache Struts is an open-source framework for creating Java web applications that use the MVC design pattern. The Struts framework is particularly useful for larger web applications. Although the Struts framework was popular early in the history of the Java language it has gradually been replaced in popularity with other Java web frameworks, particularly Java Server Faces, or JSF. For those looking to write Java web applications that will be deployed to more recent Java EE application servers training in JSF may be greatly beneficial. This course introduces the students to Struts. During the course, students will learn to design and develop Struts based applications. Students learn how to incorporate JSPs, servlets, EJBs and JavaBeans into their design. Corresponding to every chapter, there is a lab reinforcing the concept. Objectives Understand and explain the Struts framework Design and build Struts based applications Audience This course is intended for programmers and designers who want to design and develop applications using the Struts Model-View-Controller (MVC) framework. Prerequisites A good understanding of HTML. A good understanding of object-oriented programming using Java. Experience with JSPs and servlets with some understanding of JavaBeans or EJBs.
Detailed Curriculum Struts Architecture and Overview Introduction to Struts Objectives Review: MVC model What is Struts? Struts flow Components in Struts? The Model The View The Controller struts-config.xml The <data-sources> element The <form-beans> element The <global-forwards> element The <action-mappings> element Sample The role of web.xml for the application Configuring Struts in web.xml web.xml content Steps to configuring Struts in web.xml Sample Summary A Simple Struts Application The Goal of the Application The input form The struts-config.xml
The Form Bean class The Action class The result page Struts features in Eclipse Objectives Struts binary distribution Directory structure of Struts application Example Eclipse support for Struts Developing a web application using Eclipse features of Struts Struts Development Cycle Objectives Struts development cycle Gathering requirements Defining screen requirements Data vs. FormBean define FormBean Determining the screen flow Defining the ActionMappings in struts-config.xml Developing the FormBean The reset ( ) method Form validation using the validate ( ) method ActionError Define message key Developing Action Class Action and Action Class The execute() method
ActionForward ActionMapping class execute() example Example execute() method Developing business logic - EJB Developing JSPs Configuring struts-config.xml and web.xml Build, pack and deploy Struts Tag Libraries Objectives JSP taglib directive Components of a tag library The JSP File The tag library descriptor The tag Handler Class An example The TLD File - carprice.tld TDL File - example The Handler Class - CarPriceHandler.java The Handler Class - example The JSP File - Carprice.jsp Tag Lib Handler life cycle Directory structure: where custom tag libraries fit Struts TagLib Bean tags bean:message bean:define
bean:page bean:include bean:cookie HTML tags html:form html:submit html:text html:link html:password Logic tags Functionality logic:equal logic:iterate Template tags Struts Plugin, Internationalization and Error Handling Objectives Struts plugins Creating a plugin Configuring a plugin Internationalization Error Handling Struts Internationalization Mechanisms Adding internationalization to the example application Formatting messages Struts Error Handling Mechanisms ActionError and ActionErrors Error handling from a form bean
Error handling from an action Formatting error messages Struts exception handling Adding error handling to the example application Miscellaneous Advanced Features Objectives HTTP Redirection Dealing with check boxes Context sensitive form validation DispatchAction BeanUtils package Digester package DynaActionForms Multi-application support Validators Database Programming Configuring and using a Struts Data Source Using a J2EE Data Source Transaction management from an action Sharing a connection with the model classes Pre-populating a form for editing data Paginated listing of large amounts of data Templates, Tiles and JSTL Objectives Struts Templates Template tags - insert, get and put Struts 1.1 tiles support
Inheritance in tiles definitions JSTL overview JSTL and Struts Unit Testing Struts Applications Struts Test Case Objectives What is JUnit? A sample JUnit test case A simple StrutsTest test case Executing a StrutsTest test Testing strategies JSTL Objectives The future of Struts Tags JSTL - What does it provide? JSTL actions Core JSTL tags Formatting tags Database tags XML tags JSTL Expression Language JSTL Implicit Objects
Hibernate 3.0/4.0 You Will Learn How To: Implement object persistence with Hibernate Map objects to databases using XML and annotations Optimize data access with Hibernate Query Language (HQL) Course Benefits Moving data back and forth from a database system and the object model of a Java application is harder than it seems to be. In this course, Java developers learn how to quickly build enterprise Java applications using the industry-standard Hibernate framework. Through intensive hands-on exercises, you learn how to bridge the gap between object-oriented domain models and relational database systems. Who Should Attend Architects, programmers, engineers, managers and those involved in the development of complex enterprise-level Java applications. Knowledge of Java at the level of Java Programming, plus real-world Java programming experience, is assumed.
Detailed Curriculum Introduction What is Hibernate? Object Relational Mapping JDBC v/s Hibernate Installing Hibernate Using Hibernate with an IDE Getting Started POJOs and Persistence Creating Hibernate Mappings Configuration Session Factory Session Working with Entities Transactions Queries Tying Everything Together Mapping with Annotations Introduction to Annotations Annotation Pros and Cons Using Annotations in Your Application Mapping Entities and Tables Mapping Columns and Data Types Mapping Associations Mapping Collections
Mapping with XML Mapping Entities and Tables Mapping Columns and Data Types Mapping Associations Mapping Collections Working with Persistent Objects Object states in Hibernate Common Hibernate Methods Working with Entities Working with Bidirectional Associations Flushing the Session Cascading Operations Orphans Lazy Associations Querying with HQL The Hibernate Query Language Retrieving Data Using Operators Sorting Results Using Aggregate Functions Grouping Results Using Joins Using Parameters Transactions Hibernate and Thread-Safety Introducing the Hibernate Util Class Committing and Rolling Back Transactions
SPRING The Spring Framework is a lightweight solution and a potential one-stop-shop for building your enterprise-ready applications. However, Spring is modular, allowing you to use only those parts that you need, without having to bring in the rest. Spring enables you to build applications from "plain old Java objects" (POJOs) and to apply enterprise services noninvasively to POJOs. This capability applies to the Java SE programming model and to full and partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for some of the latest Java EE 6 features. OBJECTIVES Upon completion of this course, you should be able to: Understand the need for the Spring framework Integrate Spring with the JPA ORM framework Use the Spring MVC web framework to develop flexible web applications Use Spring Web Flow to create conversational web applications Integrate Spring with JSF applications Use AJAX with Spring AUDIENCE Software designers, developers and programmers.
Detailed Curriculum ENTITIES AND JAVA PERSISTENCE API Data Persistence Java Persistence API Entities Session Beans v/s Entities Entities Persisting and Retrieving Data Accessing Entities Entity Manager & Persistence Unit Persistence Context Entities - Example persistence.xml Hibernate Provider persistence.xml Open JPA Provider persistence.xml - Toplink Entity Instance Lifecycle Creating Entity Manager in Session EJB Creating Entity Manager in a Plain Java Class Working With the Entity Manager Interface Transaction Basics Summary USING SPRING WITH JPA OR HIBERNATE Spring ORM Benefits of Using Spring with ORM Spring @Repository Using JPA with Spring
Configure Spring JPA Entity Manager Factory Using JNDI to Lookup JPA Entity Manager Factory Local Container Entity Manager Factory Bean Local Entity Manager Factory Bean Application JPA Code Hibernate Hibernate Session Factory Spring Local Session Factory Bean Application Hibernate Code "Classic" Spring ORM Usage Spring JpaTemplate Spring JpaCallback JpaTemplate Convenience Features Spring Hibernate Template Spring Hibernate Callback Hibernate Template Convenience Methods Summary SPRING MVC Spring MVC Spring MVC Components DispatcherServlet Context Loaders Spring MVC Example Mapping Web Requests BeanNameUrlHandlerMapping CommonsPathMapHandlerMapping Using Multiple Handler Mappings Controller Hierarchy
AbstractCommandController SimpleFormController AbstractWizardFormController MultiActionController ThrowawayController View Resolution InternalResourceViewResolver BeanNameViewResolver XmlViewResolver ResourceBundleViewResolver Using Multiple View Resolvers Binding Views to Models Spring Form Tags form and input Tags password and hidden Tags checkbox Tag radiobutton Tag textarea Tag select Tag option Tag options Tag errors Tag TILES WEB APPLICATION TEMPLATES Apache Tiles Configuring Tiles in Spring Tiles URL-based View Resolver Tiles ViewPreparer Tiles ViewPreparer Configuration
ALTERNATE CONTENT WITH SPRING WEB APPS Creating Excel Spreadsheets Creating PDF Documents Creating Other Non-HTML Documents Summary INTRODUCTION TO SPRING WEB FLOW 2 What is Spring Web Flow 2? Relationship to Spring and Spring MVC Spring Web Flow 2 Modules Integration Support What is a Flow? Book Hotel Flow Example Book Hotel Flow Definition Benefits of Spring Web Flow 2 Required Software Configuration Steps JAR File Instructions Configure web.xml Spring Web Flow Components Sample Spring Web Flow Configuration File Summary DEFINING FLOWS Recap: What is a Flow? Recap: Book Hotel Flow Example Flow Definition Language Skeletal Flow Definition States
View State Transitions Generating Events Generating Events using Submit Button Generating Events using Links End States Actions When do Actions Occur? Putting it all Together Introduction to Unified Expression Language Unified Expression Language Functionality Unified Expression Language Implicit Variables Flow Instances Flow Variables Variable Scopes Assigning and Accessing Variables Flow Input Binding a View to a Model Summary USING JSF WITH SPRING JSF Integration Options DelegatingVariableResolver SpringBeanVariableResolver SpringBeanFacesELResolver Spring Bean Scopes FacesContextUtils JSF with Spring Web Flow
SPRING SECURITY Securing Web Applications with Spring Security 3.0 Spring Security 3.0 Authentication and Authorization Programmatic v Declarative Security Getting Spring Security from Maven Spring Security Configuration Spring Security Settings in Spring Configuration Basic Web Security Configuration Granting Anonymous Access to Pages and Resources Requiring Encrypted HTTPS Communication Customizing Form-based Login Custom Login Page Configure Logout Session Management Selectively Display Links in a JSP Method Level Security Authentication Manager Using Database User Authentication LDAP Authentication Encoding Passwords Using an External Authentication Provider Summary INTRODUCTION TO AJAX What is AJAX? A Simple Example The Old Way
The AJAX Way Two Key Aspects of AJAX What are the Advantages of the AJAX Approach? AJAX Technologies The Basic AJAX API Creating the XMLHttpRequest Object The XMLHttpRequest Object Basics Complete Example The Timeline Review Questions Review Answers USING JAVASCRIPT WITH SPRING Spring JavaScript Relationship to Dojo Serving JavaScript Resources Including Spring JavaScript Spring JavaScript Decorations Dijit ValidationTextBox Decoration Dijit DateTextBox Decoration Spring ValidateAllDecoration Handling Ajax Requests with Spring MVC Handling Ajax Requests with Spring Web Flow Summary SPRING REST SERVICES Many Flavors of Services Understanding REST RESTful Services REST Resource Examples
REST vs SOAP Relation to Spring MVC Adding REST Capability to Existing Spring MVC Applications RestTemplate HTTP Message Conversion Summary REVIEW OF NEW FEATURES IN SPRING 3.0 Requirements and Supported Environments Using Spring with Servers Packaging Spring Expression Language Java-based Configuration Annotation-based Configuration Spring MVC Changes New Spring MVC Configuration Spring MVC Annotation Example Validation Summary
Industry Interface Program Projects 3 Assignments / Mini Projects 1 Web-based Project 1 Major Project Domains / Industry Retail Industry Banking & Finance Service E-Commerce Manufacturing & Production Web Application Development Research & Analytics HR & Consultancy FMCG Consumer Electronics Event Management Industry Telecom Networking
Training & Performance Tracking Knowledge related to current technology aspects and corporate level deliverable & Continuous training and assessment to make you industry ready. Throughout the Training Curriculum Candidate will go through a Scheduled Assessment Process as below: Continues Assessments Practical Workshops Modular Assignments Case Studies & Analysis Presentations (Latest Trends & Technologies) Tech Seminars Technical Viva Observing live Models of various projects Domain Specific Industry Projects
Skills Development Workshop Communication is something which all of us do from the very first day of our life, yet there is a question that haunts us most of the time Did I express myself correctly in such and such situation? The answer to this question is really tricky, because in some cases we leave our signatures and good impression but in some others we even fail to get our idea clearly. It happens mostly because we don t know how to act in certain situations. Every time we fail we don t lose completely, we do learn something, but prior knowledge of the same thing could be more beneficial because then we could have turned that failure into success. The course / workshop would focus at many aspects of personality, like: Building positive relationships with peers & seniors Building self-confidence & Developing clear communication skills Exploring and working on factors that help or hinder effective interpersonal communication Learning impacts of non-verbal behavior & Dealing with difficult situations and difficult people Workshops Consists of Following Activities: Personality Development Group Discussions & Debates Seminars & Presentations Case Studies & Analysis Corporate Communication Development HR & Interview Skills Management Games & Simulations Aptitude, Logical & Reasoning Assessments & Development