Web Development · WDC-46

Spring Framework 5 Basic to Advanced Course

30 hours 5 days
Last updated

Spring Framework 5 Basic to Advanced Course is a 30-hour training course by IT Genius Institute. เรียนรู้ Spring Framework 5 ซึ่งนับเป็น framework สมัยใหม่ที่ได้รับความนิยมอย่างสูงในสายงานการพัฒนาเว็บแอพพลิเคชั่นด้วยภาษา Java…

Training schedule

No public rounds are open right now — register your interest and we will contact you when the next round opens, or request an in-house session for your team.

Corporate training quote

Spring Framework 5 Basic to Advanced Course เรียนรู้ Spring Framework 5 ซึ่งนับเป็น framework สมัยใหม่ที่ได้รับความนิยมอย่างสูงในสายงานการพัฒนาเว็บแอพพลิเคชั่นด้วยภาษา Java ในหลักสูตรนี้ผู้เข้าอบรมจะไดเรียนรู้เนื้อหาตั้งแต่พื้นฐานไปจนถึงขั้นนำไปประยุกต์ใช้งานได้จริง โดยมีหัวข้อที่น่าสนใจ อาทิ Spring Framework 5 ,Spring Boot 2, Spring MVC, Spring Data JPA, Spring Data MongoDB, Hibernate เป็นต้น ตลอดจนการเชื่อมต่อกับฐานข้อมูลอื่น ๆ เช่น MongoDB, MySQL,Postgres,Maria DB,DB2 Express,Neo4J,Redis,Cassandra,ActiveMQ,RabbitMQ

เมื่อจบหลักสูตรนี้คาดหวังว่าผู้เข้าอบรมทุกท่านจะได้แนวทาการพัฒนาเว็บแอพพลิเคชั่นด้วย Spring framework 5 อย่างถูกต้อง และสามารถเริ่มนำไปไปพัฒนาโปรเจ็กต์หรือโครงการต่าง ๆ ของตนเองได้

Objectives

  • เรียนรู้แนวทางการพัฒนาเว็บแอพพลิเคชั่นด้วย Java Spring Framework ตั้งแต่พื้นฐานจนถึงขั้นประยุกต์ใช้งานจริง
  • เรียนรู้ขั้นตอนการสร้างโปรเจ็กต์ด้วย Spring Framework 5 ร่วมกับ Spring Boot 2
  • ได้เรียนรู้แนวทางที่ถูกต้องในการใช้งาน Spring Framework ด้วยคุณสมบัติ SOID OOP, TDD และ CI
  • ผู้เรียนจะเข้าใจการเข้าถึงข้อมูลด้วยการใช้ Spring Data JPA และ Hibenate
  • ได้เรียนรู้การใช้ Spring Framework 5 ในการสร้างเว็บแอพร่วมกับฐานข้อมูล MongoDB
  • เรียนรู้การเขียน Reactive Programming with Spring Framework 5
  • เรียนรู้การเขียนเว็บแอพด้วย Spring MVC
  • ได้เรียนรู้แนวทางการรัน Spring Boot ด้วย Docker container

Who this course is for

  • นักเรียนนักศึกษา
  • ครู อาจารย์ วิทยากรที่สนใจ
  • นักวิชาการ นักไอที หรือผู้ดูและระบบ
  • ตลอดจนผู้สนใจใน Java Spring Framework 5 ทุกคน

Prerequisites

  • พื้นฐานการออกแบบเว็บไซต์ด้วยภาษา HTML and CSS
  • พื้นฐานภาษา JavaScript
  • พื้นฐานภาษา Java Programming
  • พื้นฐานภาษา Java JSP & Servlet
  • พื้นฐานการออกแบบและใช้งานฐานข้อมูล เช่น mysql , sql server, oracle เป็นต้น

Curriculum

Module 1 Spring Framework 5 - Course Introduction

  • Instructor Introduction Spring Framework
  • Getting the Most out of Your Spring Framework
  • Setting up your Development Environment for Spring
  • Setup IDE for Spring Framework
  • Free 120 Day IntelliJ IDEA Trial!
  • What's New in Spring Framework 5? 
  • Getting Help with the Spring Framework

Module 2 Building a Spring Boot Web App

  • Introduction to Building a Spring Boot Web App
  • Spring Initialize
  • Open Project in IntelliJ 
  • Using JPA Entities
  • Equality in Hibernate
  • Using GitHub 
  • Code Examples in GitHub 
  • Spring Data JPA Repositories 
  • Initializing Data with Spring Framework Events 
  • Assignment - Add Publisher Entity 
  • Assignment Review of Add Publisher Entity 
  • Introduction to Spring MVC 
  • Configuring Spring MVC Controllers 
  • Thymeleaf Templates 
  • Assignment - Display List of Authors 
  • Assignment Review - Display List of Authors

Module 3 Dependency Injection with the Spring Framework (DI)

  • Introduction to Dependency Injection with Spring
  • SOLID Principles of OOP
  • Create an Spring Framework DI Example Project 
  • The Spring Framework Context 
  • Basics of DI
  • Dependency Injection without the Spring Framework 
  • Dependency Injection using Spring Framework 
  • Using Spring Qualifier Annotations 
  • Primary Annotation for Spring Beans 
  • Spring Profiles 
  • Default Profile Behavior for Spring Context 
  • Spring Bean Life Cycle 
  • Dependency Injection Assignment
  • Dependency Injection Assignment Review
  • Spring Bean Life Cycle Demo
  • Flashcards
  • Single Responsibility Principle
  • Open Closed Principle
  • Liskov Substitution Principle
  • Interface Segregation Principle
  • Dependency Inversion Principle
  • Interface Naming Conventions

Module 4 Spring Framework Configuration

  • Introduction to Spring Framework Configuration
  • Spring Configuration Options
  • Spring Framework Stereotypes
  • Spring Component Scan
  • Java Configuration Example
  • Spring XML Configuration Example
  • Using Spring Factory Beans
  • Spring Boot Configuration
  • Spring Boot Configuration Demo
  • Spring Bean Scope
  • Spring Framework Configuration Flashcards

Module 5 External Properties with Spring Framework

  • Property Source
  • Spring Environment Properties
  • Multiple Property Files
  • Spring Boot Application.properties
  • Introduction to YAML
  • Spring Boot YAML Properties
  • Property Hierarchy Used by Spring Boot
  • Spring Boot Profile Properties

Module 6 Web Development with Spring MVC

  • Introduction to Web Development with Spring MVC
  • Assignment: Create a Recipe Project using Spring Boot
  • Assignment Review - Create Recipe Project
  • Introduction to Thymeleaf
  • Create Index Page
  • HTTP Protocol
  • HTTP Request Methods
  • Chrome Developer Tools
  • Firefox Firebug
  • Firefox Developer Edition
  • Safari Web Inspector
  • Axis TCPMon
  • Spring Boot Development Tools
  • IntelliJ Compiler Configuration for Spring Boot Development Tools

Module 7 Testing Spring Framework Applications

  • Introduction to Testing Spring Framework Applications
  • Using Bootstrap CSS
  • Introduction to Testing Spring Framework Apps
  • Creating a JUnit Test
  • Using Mockito Mock
  • Assignment - Write Test for IndexController
  • Assignment Review
  • Mockito Argument Capture
  • Introduction to Spring MockMVC
  • Spring Integration Test
  • Maven Failsafe Plugin
  • Continuous Integration Testing with Circle CI
  • Introduction to JUnit 5

Module 8  CRUD Operations with Spring MVC

  • Using WebJars with Spring Boot
  • Display a Recipe by ID
  • Assignment - Display remaining recipe properties
  • Assignment Review - Display Remaing Recipe Properties
  • Processing Form Posts with Spring MVC
  • Creating a Command Object and Type Conversions in Spring
  • Create a Recipe
  • Update a Recipe
  • Delete a Recipe
  • View Ingredients
  • Show Ingredient
  • Update Ingredient
  • Create an Ingredient
  • Assignment - Delete an Ingredient
  • Assignment Review - Delete Ingredient
  • Enumeration Dropdowns with Spring MVC and Thymeleaf
  • Using the Debugger
  • Uploading Images with Spring MVC
  • Persisting images to Database
  • Displaying images from Database

Module 9 Validation and Constraints with Spring MVC

  • Introduction to Validation and Constraints with Spring MVC
  • Overview of Exception Handling
  • Using Spring MVC Annotation @ResponseStatus
  • Spring MVC Exception Handler
  • Showing Error Data on 404 Error Page
  • Assignment: Handle Number Format Exception
  • Assignment Review: Handle Number Format Exception
  • Spring MVC Controller Advice
  • Data Validation with JSR-303
  • Data Validation with Spring MVC
  • Displaying Validation Errors with Thymeleaf
  • Customizing Error Messages with Message Source
  • Introduction to Internationalization
  • Internationalization with Spring MVC

Module 10 Using MySQL with Spring Boot

  • Introduction to MySQL
  • Application Code Review
  • Assignment - Configure MySQL
  • Assignment Review - Configuration of MySQL
  • CircleCI Configuration
  • Code Coverage Configuration for CodeCov.io
  • Spring Boot Configuration for MySQL
  • Schema Generation With Hibernate
  • Refactor Database Initialization for MySQL

Module 11 Introduction to RESTFul Web Services

  • Introduction to RESTFul Web Services
  • Beginners Guide to REST
  • Richardson Maturity Model
  • Introduction to Postman
  • Assignment - Create Data Model
  • Assignment Review - Create Data Model
  • Introduction to Spring RestTemplate
  • Using WebFlux to Display API Data
  • URI Components Builder
  • Rest Template Examples
  • Going Reactive with Spring WebClient

Module 12 RESTFul WebServices with Spring MVC

  • Introduction to RESTFul Web Services with Spring MVC
  • New Spring Boot Project
  • Spring Boot Command Line Runner
  • Introduction to MapStruct
  • Using MapStruct
  • MapStruct IntelliJ Plugin
  • Category Service
  • List Categories
  • Testing with Postman
  • Assignment - Create Get API for Customers
  • Assignment Review
  • Create New Customer With Post
  • Update Customer with PUT
  • Integration Testing with DataJPATest
  • Update Customer with PATCH
  • Delete Customer
  • Externalize API URL Value
  • Exception Handling
  • Spring Rest Controller

Frequently asked questions

Who is Spring Framework 5 Basic to Advanced Course for, and what background is needed?

Built for นักเรียนนักศึกษา · ครู อาจารย์ วิทยากรที่สนใจ · นักวิชาการ นักไอที หรือผู้ดูและระบบ Background you should have: พื้นฐานการออกแบบเว็บไซต์ด้วยภาษา HTML and CSS · พื้นฐานภาษา JavaScript Not sure the fit is right? Talk to our team on LINE @itgenius or call 02-570-8449.

How much does Spring Framework 5 Basic to Advanced Course cost and how long does it run?

THB 12,500. The course runs 30 hours. The fee covers course materials, lunch and refreshments throughout. Pay by bank transfer to the company account, confirm it on our payment page, and we can issue the receipt or tax invoice in your company's name.

Do I get a certificate?

Yes. Everyone who completes the course receives a Certificate of Completion from IT Genius Institute. Each certificate carries its own number, and anyone holding that number can verify it online on our certificate page, so you can add it to your portfolio or pass it to HR as evidence of training.

Where does the training take place, and is there an online option?

You can attend onsite at IT Genius Institute or arrange to join online, and we also run it as a private in-house session for your team. Ask about dates and venues on LINE @itgenius or call 02-570-8449.

What if I fall behind or miss a session — can I retake it?

Yes. You may retake the same course free of charge in a later round, under the institute's conditions. Tell our team which course and round you attended, and we will check it and offer you the rounds that still have seats. Ask us on LINE @itgenius or call 02-570-8449.

How do I enrol, or request a quotation for my company?

Enrol online with the registration form on this page. You can register several attendees at once and enter your tax ID and billing address for the tax invoice. Or request a company quotation straight from the quote button. For anything else call 02-570-8449 or reach us on LINE @itgenius.

Instructors

Run this course for your whole team

We run this course in-house, tailored to your stack.

Corporate training quote