Your Future With Time And Technology

Java: Full Stack Development

Course Overview

Java full stack development is a robust and highly sought, after skill set in the tech industry, combining expertise in both front-end and back-end technologies. Java full stack development involves a blend of various technologies, making it a versatile and valuable skill in the development landscape.

Prerequisites: Students should have at least a high school diploma or GED, along with good computer knowledge.

3 Months (192 Hours) of Long Professional Course.

Course Curriculum

Module 1: Introduction to JAVA Programming and concepts
  • HTML5: Need and Benefits of HTML, Setup, Browser, BOM and DOM, DOCTYPE, Character Encoding, , , , HTML5 Document, Comments. Formatting Tags, List, Table, Form & Input Tags, Images, Styles, placeholder, inline and block elements, id vs class attributes
     
  • CSS3: Need and Benefits of CSS, Setup, CSS Syntax, CSS Comments, Including CSS in HTML Documents(Inline styles, Embedded styles, External style sheets), CSS3 Selectors – Universal Selector, Element Type Selector, Id Selectors, Class Selectors, Grouping Selectors, CSS Color, CSS Background, CSS Fonts, CSS Text, CSS Links, CSS Lists, CSS Tables, CSS Box Model, Margin, padding, border, Outline, Visibility vs. Display, Multiple Columns
     
  • Javascript: JavaScript Basics, DOM, Variables, Datatypes, Type Conversions, Operators, Comparisons, Interactions, Loops, Functions, Function expression, Control Flow, Conditionals, Array, String, Date, Math, Number, Boolean, Functions, JSON, Regular Expression, Objects, Arrays and Functions, JSON
Module 2: Bootstrap Fundamentals and Components
  • Bootstrap Fundamentals
     
  • Responsive Web Design (RWD), Disadvantages of sites without RWD, Mobile First design, Bootstrap 4, emulate devices in Chrome Browser; doctype, viewport meta tag and attributes, Bootstrap CDN
     
  • Grid System, 12 columns, devices and corresponding prefix of bootstrap class, container, container-fluid, row, col
     
  • navbar, navbar-expand-lg, navbar-dark, bg-dark, navbar-brand; navbar-nav, nav-item, nav-link; navbar-toggler, navbar-toggler-icon, collapse, navbar-collapse, ml-auto
     
  • Troubleshooting UI issues using Chrome Developer Tools
     
  • Element selection; Applying Styles directly using Developer Tools
     
  • Bootstrap Components
     
  • badge, badge-primary, Google Material Icon, Content Delivery Network (CDN), include icons in web page; list-group, list-group-item; card, card-title, card-body, card-text, change mouse cursor on hovering an icon; Display a list of cards using grid system and thus enabling RWD; Develop form with textbox, password, drop down, date using gijgo, radio button and checkbox form-row, form-group, form-control, form-check, form-check-input, form-check-label, form-check-input
     
  • Bootstrap Styles
     
  • Separate CSS file for customization, overriding the styles of Bootstrap
     
  • Jquery and its features
     
  • Javascript framework, DOM manipulation, event handling, how to use – download js/CDN, basic usage thru $, $(document)
     
  • Basic components
     
  • Selectors – TagId, Tagname, tag class; attributes – text, attr, val, html, addClass, chaining of attributes
     
  • DOM manipulation & events
     
  • content manipulation, DOM element addition and removal, append, clone, Events – click, change, blur, dblclick, load, keyup, mouseover, unload
Module 3: ANSI SQL
  • ANSI SQL
     
  • Introduction to SQL/NoSQL, Advantages and Disadvantages
     
  • Table and Views, DDL, DML, Query and Operations, Clauses, Aggregate Functions, String Functions, GROUP BY, Having, Rank Functions, Joins, Sub queries
Module 4: Core JAVA
  • Core Java
     
  • Principles of OOP, Inheritance, Polymorphism, Classes, Methods, Coupling and Cohesion, Abstraction, Encapsulation, Constructors
     
  • Overloading, Overriding, Abstract Classes, Implementing Interfaces, Access Protection, Using this, super and final, Object Class, Inner Classes, Anonymous Inner Classes, Method-Local Inner Classes, Static Nested Classes
Module 5: Exception and file handling
  • Exception and file handling
     
  • Handling Exceptions, Propagating and Catching Exceptions, Uncaught Exceptions, Subclassing Exceptions, try, catch, throw, throws, finally
     
  • Creating a Thread, Suspending, Resuming and Stopping Threads, Serial and Parallel Sorts in Java
Module 6: String & File I/O
  • String, File I/O
     
  • String, StringBuilder, StringBuffer, StringTokenizer, File Navigation and I/O (java.io), Numbers, Calendar, Locale, Scanner, ResourceBundle and Currency, Parsing, Tokenizing, Formatting, Collection Interfaces, Collection Classes, Iterators, Comparators, Generic and Non-Generic Collections, Primitive Wrappers, Comparable Interface, Math, ClassLoader, System, Process, Runtime
     
  • LocalDate, LocalTime,LocalDateTime, Instant, Duration, Period, TemporalAdjusters
Module 7: JDBC, Connection, Collection, & Lambda expressions
  • JDBC
     
  • Create Connection, Query, Update
     
  • Lambda expressions (with Single parameter, multiple parameters, return type, collections, forEach, Multiple statements, without return type), Reference to a static method, Reference to an instance method, Reference to a constructor, Usage of Functional interfaces and default methods
     
  • Java Stream vs. Collection, Different ways to create streams(Stream.of(), List.stream(), Stream.generate() or Stream.iterate(),String chars or String tokens),Convert streams to collections
Module 8: Servlet and JSP
  • Servlet and JSP
     
  • 3(Three layers architecture)
     
  • Servlet and JSP introduction
     
  • Introduction to Servers (Tomcat)
     
  • Servlet, JSP, JSTL
     
  • servlet life cycle, handle form data, use different scoping, handle sessions
     
  • explain JSP directives, implicit objects, scopes
Module 9: Spring core and Spring MVC
  • Spring core and Spring MVC
     
  • Setter Injection
     
  • Constructor Injection
     
  • Autowiring
     
  • Injecting Collections
     
  • Inner Beans
     
  • Inheritance, Interfaces, Scope
     
  • Aspect Oriented Programming (AOP) using Spring AOP and AspectJ
     
  • Property Placeholder Configurer, Resource Bundle Message Source
     
  • Spring MVC, Form tag library, validation
     
 
 
Module 10: Spring boot , Spring data jpa
  • Spring boot , Spring data jpa
     
  • Spring initializr, https://start.spring.io, @SpringBootApplication, SpringApplication.run()
     
  • JPA (Java Persistence API), JPA is a specification (JSR 338), JPA does not have implementation, Hibernate is one of the implementation for JPA, Hibernate is a ORM tool, Spring Data JPA is an abstraction above Hibernate to remove boiler plate code when persisting data using Hibernate
     
  • Spring Boot CLI and Initializing a Spring Boot Project – Working with Spring Boot Starters
     
  • Overriding auto-configured beans
     
  • “Reducing code with custom auto configurations – @EnableAutoConfiguration – writing own custom auto configuration”
     
  • Configuring with external properties
     
  • Customizing Error Pages
     
  • Spring Boot Dependency Management
Module 11: Spring security, Restful web services
  • Spring security ,Restful web services
     
  • The need to transfer data between heterogenous systems, disadvantages of SOAP, REST stands for REpresentational State Transfer, lightweight, maintainable, scalable, underlying protocol is HTTP; composed of resources, verbs, header, body, response status code, client-server technology
     
  • DispatcherServlet, @RestController, @GetMapping, invoking get request from browser, invoking get request from postman, bean transformation to JSON, APIs for bean to JSON and vice versa, Jersey, Jackson, get method with parameter, return array, @PathVariable
     
  • HTTP method types (GET, POST, PUT, DELETE), REST service URL naming guidelines, @RequestMapping, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, setting POST request payload and invoking the REST service in Postman and curl, JSON to bean mapping, @RequestBody, validating input request using javax.validation and hibernate validators, @Size, @NotNull, @NotBlank, @Min, @Max, @JsonFormat, @Valid, global exception handling, handle number formatting errors, HTTP Caching
     
  • Retrieving LIST in REST, Writing a RESTful Web Services with JSON
     
  • Steps Involved in User Authentication
     
  • Auth Server, Resource Server, JWT tokens
     
  • Configuring Libraries in Maven
     
  • Create Oauth Config Class to define secret keys, public private keys , token validity and scopes
     
  • Write a Spring Boot RESt application, use Auth and Resource Servers
     
  • Try triggering REST requests with and without valid tokens and checking response
Module 12: Microservices Architect and Design
  • Microservices
     
  • Spring RESTful Web Services, server.port definition
     
  • Microservices architecture
     
  • Domain driven design, bounded context, entities, value objects, aggregate root rule, service integration of monolithic applications
     
  • Need for Microservices, components – Load balancing, Circuit breaker, Scaling, independent deployment; What is the difference between Monolithic service and Microservice? What is the advantage of Microservice – Logical grouping of application functionality into Services, Less dependency on functionality development and deployment, Availability of Load balancing and hence improvement in Scalability
     
  • Distributed/versioned configuration
     
  • Service registration and discovery
     
  • Routing
     
  • Service-to-service calls
     
  • Load balancing
     
  • Circuit Breakers
     
  • Distributed messaging
     
  • Using the above concepts: 1. Decompose the monolith application built earlier into microservices. 2. Write the microservices using Spring Boot. Expose each as a REST service. 3. Demonstrate features of spring cloud like API Gateway, Load balancer, Circuit breaker, Service discovery for microservices used to address the challenges of a distributed architecture. 4. Securing Microservices with Security.

About This Course:

Scroll to Top