Core Java Fundamentals
Understanding environment set up for Java and its features
Overview of Eclipse IDE, setting up a project and running a Java application
Data types, variables, keywords
Primitive data types v/s class/object types
Conditional statements: if, if-else, if-else-if, switch
Looping statements: for, while, do-while
Branching statements: break, continue
Understanding enumerated data types
Understanding arrays
Object-Oriented Programming
Procedural Programming v/s OOPS
Classes and objects with code demo
Encapsulation with code demo
Access Levels: public, private, protected, default
Packages and import statements
Inheritance with code demo
Abstraction with code demo
Polymorphism with code demo, method overriding and overloading
Constructors and their rules : default v/s parameterized constructor
The “this” keyword
Exception Handling and I/O
Understand the why and what of Exceptions
Types of Exception: Checked, Unchecked and Errors
Exception API hierarchy in Java
Try, catch, finally, throw and throw keywords in exception handling and significance of each of them
Understand need for I/O
I/O hierarchy in Java
File Reading/Writing in Java
Serialization in Java
Collections and Generics
Understand need for collections
Collections framework hierarchy in Java
List interface and its implementation classes
Set interface and its implementation classes
Map interface and its implementation classes
Queue interface and its implementation classes
Concept of generics with collection classes
Sorting list collections in Java – comparable and comparator
Mutithreading and Inner Classes
Process based multitasking v/s thread based multitasking
To create and process a thread job in Java
Thread class and runnable interface
States of a thread
Some important thread APIs: sleep, join
Synchronization with the help of an example
Inter-thread communication: wait, notify, notifyAll
Need of Inner classes
Types of inner classes
Need for JDBC
JDBC architecture
Driver and Application API of JDBC
Types of drivers
To set up an a project for JDBC usage
Setting up a connection using JDBC
Executing queries with JDBC API
Transaction management using JDBC
Servlets Fundamentals
Introduction to J2EE
Client Server architecture
URL, Port Number, Request, Response
HTTP Protocol, overview of HTML
Types of Requests
Web server v/s Application server
Need for servlets
Servlet fundamentals
Setting up a web project in Eclipse
Configuring and running the web app with servlets
GET and POST request in web application with demo
Servlet lifecycle
Forwarding and redirection
Idempotent requests
Initialization parameters and attributes
Need for conversational state between client and server
Session management basics
Cookies to exchange session information
URL Rewriting to exchange session information
Session object APIs
Listeners in J2EE
Filters in J2EE
Need of JSP
Creating a JSP and running in a web application
JSP lifecycle
JSP elements: Scriptlets, expressions, declaration
JSP standard actions
JSP directives
JSTL overview and usage
Introduction to Hibernate
Paradigm mismatch problem
Introduction to ORM
ORM features
Hibernate as an ORM framework
Hibernate features
Setting up a project with Hibernate framework
Basic APIs needed to do CRUD operations with Hibernate
Hibernate Queries and Relationships
Criteria queries
Native SQL queries
Mapping relationships with Hibernate
One to One relationship
One to Many relationships
Many to Many relationships
Caching overview in Hibernate
Introduction to Spring
Introduction to Spring Framework
Spring Dependency Injection/Bean Wiring
Types of Dependency Injection: Setter and Constructor Injection
Collections mapping wiring
Bean scopes in Spring
Bean life cycle in Spring
Overview of Spring Expression Language
Spring AOP
AOP introduction
AOP nomenclature
To configure AOP in a Java application – classic approach
To configure AOP in a Java application – Annotations – AspectJ approach
Spring JDBC and Transaction Management
JDBC and Transaction Management Fundamentals overview
Spring JDBC implementation in an application
Spring Transaction Management APIs in an application
SOA and Web Services
Understand SOA architecture
Understand web services and its types
Understand WSDL, XSD, top-down and bottom-up approach to web service implementation
Create a SOAP based web service
Create a RESTful web service