Java Web Programming (JEE) with Angular

Course Number:



Course Duration:
5 Days


Students should complete an introductory Java class or have at least three months of Java programming experience before taking this course.

Course Objectives:
  • Recognize what technologies are available in JEE
  • Demonstrate understanding of web application file and packaging structure
  • Understand and appreciate the role of Java Servlets in the overall Java Enterprise Edition architecture
  • Use request and response objects provided to a servlet to read parameters and to produce an HTML response
  • Develop interactive web applications using HTML forms and servlets
  • Manage complex conversations with HTTP clients using session attributes
  • Diagram and explain  the differences in MVC and MVVM
  • Create a RESTful web service in Java using JAX-RS
Course Outline:
  • JEE Overview
    • JEE Technologies
    • HTTP Overview
      • Requests (GET/POST)
      • Responses
      • URLs
      • Resource Mappings
      • Request Parameters
    • Web Applications
      • Structure
      • WAR File
      • Context Root
      • Deployment
  • Servlet Basics
    • Overview and API
      • Static versus Dynamic Content
      • Servlets
        • Role in a Web App
        • Servlet Interface
        • GenericServlet Class
        • HttpServlet Class
      • Mapping a URL to a Servlet Class
      • Web Container
    • Requests and Responses
      • HttpServletRequest
        • Reading HTTP Request Headers
        • HTML Forms
        • Reading HTTP Request Parameters
      • HttpServletResponse
        • Setting HTTP Response Headers
      • Monitoring Requests and Responses
  • CDI and JPA
    • CDI fundamentals
      • RequestContext
      • Events
      • Annotation literals
    • JPA
      • CRUD
      • Listeners
      • Validating entities
  • Microservices
    • Core concepts
    • Service components and Granularity
    • Bounded Context
    • Data Exchange
    • Testing
  • JEE and JSON
    • Purpose of JSON
    • JSON Syntax
    • Data Types
    • JSON Objects
    • JSON Arrays
    • Parsing JSON
    • JSON Processing in JEE
    • JSON binding in JEE
  • JavaScript ES6 and TypeScript
    • Variables, data types, template strings
    • Functions and arguments, rest, and spread
    • Destructuring assignments
    • Closures and arrow functions
    • Prototypes
    • Classes
    • Promises, async and await
    • Modules
    • Strongly typed variables and parameters
    • Interfaces
    • Typescript classes
    • Decorators
  • Angular and Components
    • Node Package Manager
    • Angular CLI and project structure
    • Angular Modules and TypeScript Modules
    • Components, templates, and bootstrapping
  • Data and Event Binding
    • String interpolation
    • Property binding
    • Two-way data binding using ngModel
    • Event binding
  • Directives
    • Structural directives: ngFor, ngSwitch, and ngIf
    • Attribute directives: ngStyle, ngClass, and ngModel
    • Custom directives
    • Manipulating the DOM
  • Components
    • Custom property binding: @Input
    • Event emitters: @Output
    • Lifecycle methods: onInIt, onChange, onDestroy
  • Pipes
    • What is a pipe?
    • Using pipes to format information
    • Default/built-in pipes
    • Defining custom pipes
  • Service and Dependency Injection
    • Dependency injection basics
    • What is a service?
    • @Injectable
    • Create a basic service
    • Service injection
  • Unit Tests
    • Testing paradigms
    • Jasmine unit tests and Karma
  • HTTP Requests
    • Basic GET, POST, PUT, DELETE request overview
    • Wrapping HTTP calls into services
    • Using promises to implement HTTP calls
    • Mocking HTTP for unit tests
  • Routing and Navigation
    • RouterModules and routes
    • Default routes
    • Router directives: RouterOutlet, RouterLink, and RouterLinkActive
    • Wildcard routes
    • Redirecting routes
  • Template-Driven forms
    • Preventing default with form submission
    • Field data validation
    • Binding to object variables
    • Data immutability and management
    • Protractor and E2E tests
Share on facebook
Share on twitter
Share on linkedin
Share on email

Related Posts

About Us

IT Training, Agile Ways of Working and High Impact Talent Development Strategies

Let Us Come to You!

Classes recently delivered in: Atlanta, Boston, Chicago, Columbus, Dallas, Detroit, Indianapolis, Jerusalem, London, Milan, New York, Palo Alto, Phoenix, Pittsburgh, Portland, Raleigh, San Antonio, San Diego, San Francisco, San Jose, Seattle, Springfield, Mass., St. Louis, Tampa and more!