JAVA EE - J2SE - CORE JAVA After all having a lot number of programming languages. Why JAVA; yet another language!!! AND NOW WHY ONLY JAVA??? CHAPTER 1: INTRODUCTION What is Java? History Versioning The Java Virtual Machine Writing a Java Program Packages Simple Java Programs CHAPTER 2: LANGUAGE COMPONENTS Primitive Data Types Comments The for Statement The if Statement The while and do while Statements The switch Statement The break Statement The continue Statement Operators Casts and Conversions Keywords CHAPTER 3: OBJECT-ORIENTED PROGRAMMING Defining New Data Types Constructors The String Class String Literals Documentation Packages The StringBuffer Class Naming Conventions The Date Class The import Statement Deprecation The StringTokenizer Class The DecimalFormat Class
CHAPTER 4: METHODS Method Signatures Arguments and Parameters Passing Objects to Methods Method Overloading Static Methods The Math Class The System Class Wrapper Classes CHAPTER 5: ARRAYS Processing Arrays Copying Arrays Passing Arrays to Methods Arrays of Objects The Arrays Class Command Line Arguments Multidimensional Arrays CHAPTER 6: ENCAPSULATION Constructors The this Reference Data Hiding public and private Members Access Levels Composition Static Data Members CHAPTER 7: INHERITANCE & POLYMORPHISM A Simple Example The Object Class Method Overriding Polymorphism Additional Inheritance Examples Other Inheritance Issues
CHAPTER 8: ABSTRACT CLASSES AND INTERFACES Abstract Classes Abstract Class Example Extending an Abstract Class Interfaces CHAPTER 9: EXCEPTIONS Exception Handling The Exception Hierarchy Checked Exceptions Advertising Exceptions with throws Developing Your Own Exception Classes The finally Block CHAPTER 10: INPUT AND OUTPUT IN JAVA The File Class Standard Streams Keyboard Input File I/O Using Byte Streams Character Streams File I/O Using Character Streams Buffered Streams File I/O Using a Buffered Stream Keyboard Input Using a Buffered Stream Writing Text Files CHAPTER 11: THREADS o o o o o o o o Threads vs. Processes Creating Threads by Extending Thread Creating Threads by Implementing Runnable Advantages of Using Threads Daemon Threads Thread States Thread Problems Synchronization
CHAPTER 12: COLLECTIONS Vectors Hashtables Enumerations Properties Collection Framework Hierarchy Lists Sets Maps The Collections Class CHAPTER 13: NETWORKING Networking Fundamentals The Client/Server Model InetAddress URLs Sockets A Time-of-Day Client Writing Servers Client/Server Example
J2EE - ADVANCED JAVA Database Programming using the JDBC API: JAVA DATABASE CONNECTIVITY (JDBC) Relational Databases Structured Query Language A Sample Program Transactions Meta Data The X/OPEN Call Level Interfaces Database Connectivity & ODBC Concepts The JDBC mechanism-connecting to a DB Types of JDBC Drivers The steps in implementing a JDBC application Types of statements, Result Sets etc. to JDBC 3.0 AP! Java Servlet v2.4 Technology: CGI Vs Servlets to web designing to the web servers HTTP Protocol-Status codes, request methods Deployment descriptors Servlet Lifecycle Types of servlets Servlet API Sessions & Session tracking Cookies Servlet changing and dispatching Filtering Java Server Pages: Overview Comparing with the other technologies JSP Architecture Implicit Objects Elements of JSP (Comments, Experessions, Scriptlets, Declarations, actions) JSP Directives
Pageilinclude, taglib Scopes JSP & JDBC JSP & Java Beans-The 'use bean' tag Tag Libraries (JSTL) Case Study 1 Convert the previous site from servlets using the JSPs Case Study 2 Develop a full-fledged shopping (art web applications) to Distributed computing
Frameworks : SPRINGS CHAPTER 1: INTRODUCTION TO SPRING What is Spring? Overview of the Spring Framework Spring Philosophies Spring Documentation Java 5 Language Features CHAPTER 2: A FIRST LOOK AT SPRING A Simple Example Wiring Beans Configuring a Properties File Schema-Based Configuration CHAPTER 3: BEANS AND CONTAINERS Spring Containers Spring Configuration File Spring Beans Using the Container The BeanFactory Interface Singleton vs. Prototype Bean Naming Dependency Injection Setter Injection Constructor Injection CHAPTER 4: THE APPLICATION CONTEXT The ApplicationContext Interface Accessing Application Components Accessing Resources Internationalization with MessageSource Application Events
CHAPTER 5: DATA VALIDATION AND CONVERSION The Validator Interface The Errors Interface The ValidationUtils Class Validator Example Testing the Validator Property Editors Custom Property Editors CHAPTER 6: ASPECT-ORIENTED PROGRAMMING Aspect-Oriented Programming AOP Concepts AOP Proxies The AOP Alliance Types of Advice AOP Example s CHAPTER 7: USING JDBC WITH SPRING A Simpler Approach The JdbcTemplate Class Exception Translation Updating with the JdbcTemplate Queries using the JdbcTemplate Mapping Results to Java Objects CHAPTER 8: USING HIBERNATE WITH SPRING What is Hibernate? Hibernate Sessions The HibernateTemplate Sample Class and Mapping File Creating and Saving a New Entity Locating an Existing Entity Updating an Existing Entity Hibernate Query Language Executing Queries
CHAPTER 9: SPRING WEB MVC - PART 1 Spring Web MVC The DispatcherServlet Writing a Controller A Simple View Page Configuring the Controller Adding a View Resolver Adding a Message Bundle Adding Business Classes Adding Test Data Accessing a Database Adding a Form Updating the Database Integrating Hibernate CHAPTER 10: SPRING WEB MVC - PART 2 Handler Mappings View Resolution Chaining View Resolvers Controllers AbstractWizardFormController Hibernate CHAPTER 1: GETTING STARTED WITH HIBERNATE What is Hibernate? Preparing to Use Hibernate Configuring Hibernate JDBC and Datasource Properties Other Configuration Properties Hibernate Sessions Writing Classes for Hibernate Applications Sample Class and Database Table Sample Class and Mapping Diagram Creating and Saving a New Entity Locating an Existing Entity Updating an Existing Entity Deleting an Entity Executing an HQL Query Schema Generation Programmatic Configuration
CHAPTER 2: MAPPING PERSISTENT CLASSES Class Annotations Access Type Property Annotations Hibernate Types Entities and Values Mapping Embeddable Types Compound Keys Generated Keys CHAPTER 3: INHERITANCE Mapping Class Inheritance Table Per Class Hierarchy Table Per Subclass Table Per Concrete Class CHAPTER 4: COLLECTIONS AND ASSOCIATIONS Mapping Collections Initializing Collections Sample Application - UML Diagram Sample Application - Database Schema Implementing Associations Mapping Associations CHAPTER 5: HIBERNATE QUERY LANGUAGE HQL Basics HQL Expressions HQL Functions Polymorphic Queries Executing Queries Scrollable Results Named Queries Associations and Joins Inner Joins Outer Joins Sample Queries
APPENDIX A: WORKING WITH THE LAB FILES Importing the Eclipse Project Working with MySQL Creating Tables for the Training Application Hibernate Console Configuration Design Patterns Overview Types of patterns Factory pattern Signleton Pattern Front Controller Session Facade Message Facade DAO DTO Intercepting filter
SOAP Web Services CHAPTER 1. OVERVIEW OF WEB SERVICES Why Web Services? Service-Oriented Architecture HTTP and XML Simple Object Access Protocol (SOAP) Web Service Description Language (WSDL) Universal Description, Discovery and Integration (UDDI) The WS-I Basic and Related Profiles REST CHAPTER 2. WEB SERVICES FOR JAVA EE Hosting Web Services: Scenarios Invoking Web Services: Scenarios Web Services for Java EE (WS4JEE) The Automated Approach: JAX-WS and JAXB Manual Options: SAAJ and JAXP Portable Web-Services Metadata Service Registries: JAXR CHAPTER 3. THE SIMPLE OBJECT ACCESS PROTOCOL Messaging Model Namespaces SOAP over HTTP The SOAP Envelope The Message Header The Message Body SOAP Faults Attachments CHAPTER 4. THE JAVA API FOR XML BINDING The Need for Data Binding XML Schema Two Paths JAXB Compilation Mapping Schema Types to Java Java-to-XML Mapping Using Annotations Marshaling and Unmarshaling Working with JAXB Object Models In-Memory Validation CHAPTER 5. WEB SERVICES DESCRIPTION LANGUAGE Web Services as Component-Based Software The Need for an IDL Web Services Description Language WSDL Information Model
The Abstract Model -- Service Semantics Message Description Messaging Styles The Concrete Model -- Ports, Services, Locations Extending WSDL -- Bindings Service Description CHAPTER 6. THE JAVA API FOR XML-BASED WEB SERVICES Two Paths How It Works: Build Time and Runtime The Service Endpoint Interface Working from WSDL Working from Java RPC and Document Styles One-Way Messaging Binary Protocols CHAPTER 7. WSDL-TO-JAVA DEVELOPMENT The @WebService Annotation Generated Code Compilation and Assembly Deployment Runtime Behavior Scope of Code Generation More JAXB: Mapping Collections More JAXB: Mapping Enumerations CHAPTER 8. CLIENT-SIDE DEVELOPMENT Stubs and Proxies Generated Code Locating a Service Invoking a Service CHAPTER 9. JAVA-TO-WSDL DEVELOPMENT The @WebMethod, @XmlParam, and Related Annotations Scope of Code Generation More JAXB: Mapping Inheritance Controlling the XML Model Controlling the WSDL Description CHAPTER 10. JAX-WS BEST PRACTICES Which Way to Go? Interoperability Impact Portability Impact Polymorphism in Web Services Web Services as Java EE Components Lifecycle Annotations Context Interfaces
The @WebServiceRef Annotation CHAPTER 11. PROVIDER AND DISPATCH APIS Stepping Down The Provider<T> Interface Implementing a Provider JAXB Without WSDL Integrating JAXP The Dispatch<T> Interface Building Clients CHAPTER 12. THE SOAP WITH ATTACHMENTS API FOR JAVA The SAAJ Object Model Parsing a SOAP Message Reading Message Content Working with Namespaces Creating a Message Setting Message Content CHAPTER 13. MESSAGE HANDLERS Handling SOAP Headers Servlet Endpoint Context MessageContext and SOAPMessageContext Message Handlers and Handler Chains Processing Model and Patterns Client-Side Handlers CHAPTER 14. EJBS AS WEB SERVICES Enterprise JavaBeans Three Tiers for Java EE EJB3 and JAX-WS Session Beans as Web Service Endpoints The Bean's Service Endpoint Interface SOAP as an EJB Protocol Pitfalls CHAPTER 15. HANDLING BINARY CONTENT The WS-I Attachments Profile Using base64binary MIME Attachments JAX-WS Support MTOM and XOP SAAJ Support APPENDIX A. LEARNING RESOURCES APPENDIX B. COMPATIBILITY AND MIGRATION JAX-RPC Comparing JAX-RPC and JAX-WS Using JAX-RPC and JAX-WS Together, SOAP
OVERVIEW OF WEB SERVICES Why Web Services? Service-Oriented Architecture HTTP and XML SOAP WSDL REST UDDI The WS-I Basic Profile Security WEB SERVICES FOR JAVA EE Restful Web Services Hosting Web Services: Scenarios Web Services for Java EE JAX-WS and JAXB Web-Services Metadata WSDL-to-Java and Java-to-WSDL Paths Provider and Dispatch APIs SAAJ and JAXP JAX-RS for RESTful Services JAXR THE JAVA API FOR XML BINDING The Need for Data Binding XML Schema Two Paths JAXB Compilation Mapping Schema Types to Java Java-to-XML Mapping Using Annotations Marshaling and Unmarshaling Working with JAXB Object Models THE JAVA API FOR RESTFUL SERVICES Applications Resources Sub-Resources Providers Scanning and @ApplicationPath DISPATCHING REQUESTS TO METHODS The Application Path The @Path Annotation The HTTP Method Annotations Sub-Resource Locators Annotation Inheritance and overriding
PARAMETER AND RETURN TYPES Simple Parameter Types @Consumes and @Produces Annotations @XXXParam Annotations The @DefaultValue Annotation Return Types Binary Content Delivering a File ENTITIES AND COMPLEX CONTENT Entity Providers Built-In Entity Providers Working with XML Driving XML Representations from Schema CONTEXT AND LIFECYCLE Reading Web Resources Finding Java EE Components Finding Databases Security Contexts APPENDIX A. COURSE TOOLS AND UTILITIES APPENDIX B. HANDY GUIDE TO WEB-SERVICES ACRONYMS SERVERS IDES TOMCAT 5.5/6.0 Web logic 10.X Web sphere 6.X JBOSS 4.X Eclipse 3.X, My Eclipse Net beans 5.5/6.X RAD 6.X EXTRA TOOLS Log4I ANT JUNIT Jquery HTML Java Script Maven