This Training includes Java 8 features. Java 8 is a revolutionary release of the world’s #1 development platform. It includes a huge upgrade to the Java programming model and a coordinated evolution of the JVM, Java language, and libraries. Java 8 includes features for productivity, ease of use, improved polyglot programming, security and improved performance.
Lambda Expressions, a new language feature, has been introduced in this release. They enable you to treat functionality as a method argument, or code as data. Lambda expressions let you express instances of single-method interfaces (referred to as functional interfaces) more compactly.
Method references provide easy-to-read lambda expressions for methods that already have a name.
Default methods enable new functionality to be added to the interfaces of libraries and ensure binary compatibility with code written for older versions of those interfaces.
Streams & Collections:
Classes in the new java.util.stream package provide a Stream API to support functional-style operations on streams of elements. The Stream API is integrated into the Collections API, which enables bulk operations on collections, such as sequential or parallel map-reduce transformations.
- Introduction to java platform and setup.
- Object Oriented Programming
- Introduction to Object Oriented Programming.
- Introduction to Classes and Objects.
- Instance & Static variables
- Constructor
- Methods
- Instance & Static methods
- Static & Instance block
-
-
Packages
- Package creation
- Importing packages
- Importing Class
-
-
Inheritance
- Extending classes
- Constructor calling chain
- The “super” keyword
- Method overriding
- Method hiding
- Final Class and Method
- Abstract classes and Interfaces
- Abstract methods
- Abstract classes
- Interfaces
- Implementing interfaces
- Abstract class vs. Interfaces
- Inner classes
- Non-static inner class
- Static inner class
- Local inner class
- Anonymous inner class
- Exception Handling
- Introduction to exceptions
- Effects of exception
- Exception Handling framework
- Exception class Hierarchy
- Try-catch
- Try-with resources
- Finally block, throws, throw
- Custom exception class
- Assertions
- Memory Management
- Different types of memory used in Java
- Garbage Collection
- Memory Leaks
- Collections Framework
- Introduction to collections
- Core Collection Interfaces
- List interface and its implementations
- Set interface and its implementations
- Queue interface and its implementations
- Map interface and its implementations
- Java I/O Stream
- I/O Streams Introduction
- Types of Streams
- Stream class Hierarchy
- Buffered Streams
- Working File Streams
-
-
Lambda Expressions
- Functional interface
- Behaviour parameterization
- Using functional interfaces
- Predicate
- Consumer
- Function
- Supplier
- Method references
- Lambdas and method references into practice
- Streams
- What are Streams?
- Streams and Collections
- Stream operations
- Working with Streams
- Filtering
- Mapping
- Finding and Matching
- Reducing
- Collectors
- Collecting data with Streams
- Grouping
- Partitioning
- Collector interface
- The fork-join framework
- Parallel Streams
- Threads
- Introduction to threads
- Thread states and priorities
- Thread class
- Runnable interface
- Thread Group
- Synchronization
- Dead locks, Handling dead locks
- Inter thread communication
- Introduction to threads
- Generics, Enums, AutoBoxing, Working with Date, Calendar.
- JDBC API
- Understanding the design of JBDC API
- Obtaining JDBC Drivers
- Establish connection with DB Servers.
- Execute SQL Queries using Statement and Prepared Statement.
- Fetch the data
- Reading the records using result set object
- Adding and Updating the records.
- Introduction to SinglePageApplications(SPA’s) and Angular Framework.
- Creating Angular Project and understanding Angular Project structure.
- Introduction to Angular Components, Templates, Directives,Modules.
- Introduction to TypeScript Language.
- TypeScript vs JavaScript.
- Creating Angular Project and understanding Angular Project structure.
- Introduction to Angular Components, Templates, Directives, Modules.
- Introduction to TypeScript Language.
- TypeScript vs JavaScript.
Angular Framework
Understanding TypeScript:
- Data types.
- Defining functions.
- Named functions
- Anonymous functions
- Functions with default initial values and optional parameters
- Functions with return types
- Arrow functions
- Interfaces
- Interfaces for type checking
- Interfaces with optional and read only properties
- Interfaces with function types
- Defining Class Types, constructor, and methods
- Inheritance
- Modules
- Exporting a declaration
- Importing a module declaration
- Understanding the Role of Module and creating Modules
- Component Declaration
- How to create and register our own components
- Component Lifecycle
- Associating Components to the templates
- Two-Way-Databinding
- Understanding property binding and event binding using ngFor, ngIf and ngSwitch directives
- Styling components with ngStyle and ngClass
- Template Driven Forms
- ReactiveForms
- Form Validations
- Creating custom validators
- Structural Directives
- Attribute Directives
- Custom Directives
- Understanding Dependency Injection
- Understanding Injectable,Providers
- Observable pattern
- Understanding Observable and Observer
- Creating Observable for events
- Observable operators
- The HttpModule for making HTTP calls.
- Consuming RESTFull Services
- Routing module
- Router Service
- Defining navigation
- Router outlet
- Router links
- Date pipe
- Currency pipe
- Decimal pipe
- Lowercase pipe
- Uppercase pipe
- JSON pipe
- Slice pipe
- Percent pipe
- Creating Custom pipe
- What is Docker?
- Installing Docker
- Working with Docker Images
- Managing Images
- Docker file and Building Images
- Working with Docker Containers
- Deploying web applications on Tomcat
- Deploying Spring Boot
- Publishing to Docker Hub
- Object Persistence
- Object/Relational Paradigms
- O/R Mismatch
- Object Relational Mapping (ORM)
- Java ORM/Persistent Frameworks
- Hibernate Architecture
- Hibernate Architecture and API
- Hibernate Installation/Setup
- Configuration
- Configuration Properties
- Mapping Files
- Persistent Classes
- POJOs
- JavaBeans
- Basic Mapping
- Class to Table Mappings
- Property Mapping
- Identifiers
- Generators
- Natural Keys
- Identifier Exposure
- Quoting SQL Tables and Columns
- Working with Persistent Objects
- Entity Lifecycle
- Transient State
- Persistent State
- Persistent Object Updates and Automatic Dirty Checking
- Deattached State
- Deleted
- Object Identifiers Revisited
- Merge
- Components
- Domain Model
- Entities and Values
- Components
- Associations
- Many-to-one
- Bidirectional Many-to-one
- Other Collections
- Other Associations
- One-to-one
- Bidirectional One-to-one
- Many-to-many
- Bidirectional Many-to-many
- Value Type Collections
- Collections of Value Types
- Collections of Components
- Sorting Collections
- Inheritance
- Inheritance Mapping Strategies
- Table per concrete class
- Table per subclass
- Table per hierarchy
- Inheritance Mapping Pros/Cons
- Polymorphism
- Table per concrete class with unions
- Choosing an Inheritance Strategy
- Transitive Persistence
- Lazy Loading
- Proxies
- Eager Loading
- What’s a Proxy?
- Detached Objects and Proxies
- Polymorphic Associations Revisited
- HQL
- Hibernate Object Fetching Options
- Hibernate Query
- HQL Parameters
- Named Queries
- Native SQL
- Criteria
- Restrictions
- Query By Example
- Scrolling
- Query Hints
- Query Option Pros/Cons
- Transactions and Concurrency
- The Java Transaction
- Hibernate Transaction Configuration
- Hibernate Transaction API
- Concurrency
- Isolation Levels
- Optimistic Locking
- Versioning
- Pessimistic Locking
- Cache
- Hibernate Caching Architecture
- First Level Cache
- Second Level Cache
- Cache Concurrency
- Configuring Second Level Cache
- What are Microservices?
- Principles of Microservices?
- Microservices Architecture.
- Characteristics of Microservices.
- Developing RESTful microservices using Spring Boot.
- Introduction to Spring Cloud
- Spring cloud config
- Setting up the Config server
- Eureka for registration and discovery
- Understanding dynamic service registration and discovery
- Understanding Eureka
- Setting up the Eureka server
- Logging and Monitoring Microservices
- Using Netflix OSS.
- Understand the advantages of the REST architecture for web services.
- Developing REST Full Web services using JAX-RS.
- Manage XML content using XML Schema and JAXB.
- Understanding Resources
- Using Http Methods to represent CRUD operations
- Dispatching Request to Methods
- The Application Path
- The @Path Annotation
- The HTTP Method Annotations
- Sub-Resource Locators
- Annotation Inheritance and overriding
- Parameters
- Different Types of Parameters
- Response Types
- @Produces
- Working with different response types
- Java Objects
- XML
- JSON
- HTML/Text
- Binary Content
- Understanding RESTFull Web services support in Spring Framework with a sample application
Different types of functions.
DataBinding
Forms
Directives
Services & Dependency Injection
Observables and HTTP Services
Pipes
Unit Testing
Testing Angular applications using Jasmine Framework with Karma.
Routing
Microservices
REST Full Web Services (JAX-RS with Jersey Implementation