สอบถามหลักสูตรเลือกช่องทางที่สะดวก ทีมงานตอบเองทุกช่อง
LINE @itgeniusตอบเร็วที่สุด · จ–ศ 9:00–17:00 น.
โทรศัพท์
02-570-8449สำนักงาน088-807-9770มือถือ
อีเมลและโซเชียล
contact@itgenius.co.thสำหรับใบเสนอราคาและเอกสารFacebookitgeniusonlineYouTubeitgeniusengขอคำปรึกษาจัดอบรมให้ทีม
ภาษาโปรแกรมมิ่ง · ADC-03-21

Java JSP and Servlet with Jakarta EE and Hibernate

หลักสูตร Java JSP and Servlet with Jakarta EE and Hibernate เป็นการอบรมแบบ Workshop พัฒนา Web Application ด้วย Servlet และ JSP บน Jakarta EE 11 ร่วมกับ Hibernate ORM 7 ตั้งแต่ MVC และความปลอดภัยจนถึงการ Deploy เหมาะกับผู้ที่อยากเป็น Java Developer นักศึกษา และนักพัฒนาที่ดูแลระบบ Java รุ่นเก่า

อัปเดตล่าสุด
ราคาเริ่มต้น 9,810 บาท / ท่าน 10,900 −10% ยังไม่รวม VAT 7% · มีราคาหมู่คณะ
PDFดาวน์โหลด Course Outline
  • ระยะเวลา24 ชั่วโมง · 4 วัน
  • รูปแบบออนไซต์ / ออนไลน์สด
  • รอบถัดไปเปิดตามคำขอ
  • ใบรับรองมี Certificate

ภาพรวมหลักสูตร

ระบบเว็บภาษา Java จำนวนมากในองค์กรยังทำงานบน Servlet และ JSP ร่วมกับ Hibernate และทีมไอทีต้องดูแลหรือย้ายระบบเหล่านี้ให้ทันสมัย ตั้งแต่ Jakarta EE 9 เป็นต้นมา แพ็กเกจ javax ถูกเปลี่ยนเป็น jakarta ทั้งหมด และ Hibernate รุ่นใหม่ใช้ Annotation กับ Jakarta Persistence แทนไฟล์ XML Mapping แบบเดิม ตัวอย่างและตำราเก่าจึงนำมาใช้กับ Tomcat และ Hibernate รุ่นปัจจุบันไม่ได้โดยตรง และนักพัฒนาที่เพิ่งเริ่มมักไม่เข้าใจว่าแต่ละชั้นของ Web Application ทำงานร่วมกันอย่างไร

หลักสูตรนี้เป็นฉบับปรับปรุงใหม่สำหรับ Java 25 LTS, Jakarta EE 11, Apache Tomcat 11 และ Hibernate ORM 7 เน้น Workshop ตลอดหลักสูตร พาผู้เรียนสร้าง Web Application ตามแนวคิด MVC โดยใช้ Servlet เป็น Controller และ JSP กับ EL และ JSTL เป็น View เชื่อมฐานข้อมูลด้วย JDBC และ Connection Pool จัดการ Filter, Session และความปลอดภัย แล้วยกระดับชั้นข้อมูลด้วย Hibernate ทั้ง Mapping, HQL, Transaction และ Repository แบบ Jakarta Data เรียกข้อมูลแบบ Ajax ด้วย JSON และ Build เป็น WAR เพื่อ Deploy บน Tomcat หรือ Docker (อบรม 4 วัน วันละ 6 ชั่วโมง รวม 24 ชั่วโมง ระดับ Intermediate)

สิ่งที่คุณจะได้รับ

  • เข้าใจสถาปัตยกรรม Java Web ตามแนวคิด MVC และการเปลี่ยนจาก javax เป็น jakarta
  • พัฒนา Controller ด้วย Jakarta Servlet และ View ด้วย JSP, EL และ JSTL ได้
  • เชื่อมฐานข้อมูลด้วย JDBC และ Connection Pool อย่างปลอดภัยได้
  • ใช้ Filter, Session และกลไกความปลอดภัยของ Web Container ทำระบบ Login ได้
  • Mapping คลาสกับตารางด้วย Hibernate ORM 7 แบบ Annotation และจัดการความสัมพันธ์ได้
  • ดึงข้อมูลด้วย HQL และ Criteria จัดการ Transaction และใช้ Repository แบบ Jakarta Data ได้
  • รับส่งข้อมูลแบบ Ajax ด้วย Fetch API และ JSON ได้
  • Build Web Application เป็น WAR และ Deploy บน Tomcat หรือ Docker ได้

หลักสูตรนี้เหมาะสำหรับ

  • ผู้ที่ต้องการเป็น Java Developer สายเว็บ
  • นักศึกษาที่ต้องทำโปรเจกต์ Web Application ด้วย Java
  • นักพัฒนาและผู้ดูแลระบบที่ต้องดูแลหรือย้ายระบบ Servlet, JSP และ Hibernate รุ่นเก่า
  • นักพัฒนาที่ต้องการเข้าใจพื้นฐานก่อนไปใช้ Framework อย่าง Spring Boot

พื้นฐานของผู้เข้าอบรม

  • มีพื้นฐานการเขียนโปรแกรมภาษา Java เช่น Class, Collection และ Exception หรือผ่านหลักสูตร Basic Java Programming
  • เข้าใจ HTML และ SQL เบื้องต้น
  • ไม่จำเป็นต้องเคยเขียน Servlet, JSP หรือ Hibernate มาก่อน
  • โน้ตบุ๊กที่ติดตั้งโปรแกรมและ Docker Desktop ได้

หัวข้อการฝึกอบรม

รายละเอียดหลักสูตร

หลักสูตรนี้เป็นฉบับปรับปรุงใหม่ปี 2026 ที่มาแทนหลักสูตร Java JSP & Servlet with Hibernate Framework รุ่นเดิม เนื้อหาเขียนใหม่ให้ตรงกับ Java 25 LTS, Jakarta EE 11, Apache Tomcat 11 และ Hibernate ORM 7 อบรม 4 วัน วันละ 6 ชั่วโมง รวม 24 ชั่วโมง (09:00-16:00 น.) รูปแบบบรรยายสลับ Lab และ Workshop ตลอดหลักสูตร ระดับ Intermediate

ต่อยอดจากหลักสูตร Basic Java Programming ผู้เรียนจะได้สร้าง Web Application ตามแนวคิด MVC ด้วย Servlet และ JSP เชื่อมฐานข้อมูลด้วย JDBC และ Hibernate ทำระบบสมาชิกที่ปลอดภัย ใช้ Repository แบบ Jakarta Data เรียกข้อมูลแบบ Ajax ด้วย JSON และ Deploy บน Tomcat หรือ Docker พร้อมรับ Lab Guide ซอร์สโค้ด และโปรเจกต์ตั้งต้นกลับไปใช้งานต่อ

Day 1 Jakarta EE, Servlet และ JSP

Section 1: ภาพรวม Java Web และ Jakarta EE 11

  • การทำงานของ Web Application: HTTP Request, Response และ Web Container
  • จาก Java EE สู่ Jakarta EE และการเปลี่ยนแพ็กเกจจาก javax เป็น jakarta
  • Jakarta Servlet, Jakarta Pages (JSP), EL, JSTL และ Jakarta Persistence ทำหน้าที่อะไร
  • Tomcat กับ Application Server เต็มรูปแบบต่างกันอย่างไร
  • แนวคิด MVC และโครงสร้างระบบที่จะสร้างตลอดหลักสูตร

Section 2: Lab: ติดตั้งเครื่องมือและโปรเจกต์แรก

  • ติดตั้ง Java 25 LTS, Maven และ IntelliJ IDEA หรือ VS Code
  • ติดตั้ง Apache Tomcat 11 และเชื่อมกับ IDE
  • รันฐานข้อมูล MySQL หรือ PostgreSQL บน Docker
  • โครงสร้างโปรเจกต์ WAR ด้วย Maven และ Dependency ของ Jakarta EE
  • Lab: Servlet และ JSP ตัวแรก แล้ว Deploy ขึ้น Tomcat

Section 3: Lab: Servlet เป็น Controller

  • สร้าง Servlet ด้วย @WebServlet และจัดการ doGet กับ doPost
  • รับค่าจาก HTML Form และ Query String พร้อมตั้งค่า UTF-8 ให้รองรับภาษาไทย
  • forward กับ redirect ต่างกันอย่างไร และรูปแบบ Post/Redirect/Get
  • ส่งข้อมูลจาก Controller ไปยัง View ผ่าน Request Attribute
  • Lab: ฟอร์มลงทะเบียนที่ตรวจข้อมูลก่อนบันทึก

Section 4: Lab: JSP เป็น View ด้วย EL และ JSTL

  • โครงสร้างหน้า JSP และเหตุผลที่ควรเลิกใช้ Scriptlet
  • Expression Language สำหรับแสดงข้อมูลจาก Model
  • JSTL Core และ Formatting สำหรับเงื่อนไข ลูป วันที่ และตัวเลข
  • แยกส่วน Header, Footer และ Layout ที่ใช้ซ้ำด้วย include และ Tag File
  • Lab: หน้ารายการสินค้าแบบ MVC ครบทั้ง Controller และ View
Day 2 ฐานข้อมูล, Session และความปลอดภัย

Section 5: Lab: Model และ DAO ด้วย JDBC

  • ออกแบบตารางฐานข้อมูลและ Model Class หรือ Record
  • เขียน DAO ด้วย JDBC และ PreparedStatement เพื่อป้องกัน SQL Injection
  • ตั้งค่า Connection Pool ผ่าน DataSource ของ Tomcat
  • แยกชั้น Service ออกจาก Controller
  • Lab: เพิ่ม ค้นหา แก้ไข และลบข้อมูลสินค้าผ่านหน้าเว็บ

Section 6: Lab: Servlet ขั้นสูง

  • วงจรชีวิตของ Servlet: init, service และ destroy
  • ServletContext และ Listener สำหรับเตรียมทรัพยากรตอนเริ่มระบบ
  • Multi-threading ใน Servlet และการเขียนโค้ดให้ Thread-safe
  • อัปโหลดไฟล์ด้วย @MultipartConfig และตรวจชนิดไฟล์
  • ภาพรวม Async Servlet สำหรับงานที่ใช้เวลานาน

Section 7: Lab: Filter และ Session Management

  • Filter คืออะไร และการใช้กับ Encoding, Logging และการตรวจสิทธิ์
  • HttpSession, Cookie และอายุของ Session
  • ทำระบบ Login และ Logout ด้วย Session และ invalidate
  • ใช้ Filter บังคับให้ Login ก่อนเข้าหน้าที่ต้องยืนยันตัวตน
  • Lab: ระบบสมาชิกพร้อมหน้าสำหรับผู้ดูแลระบบ

Section 8: Lab: ความปลอดภัยของ Web Application

  • Security ของ Web Container: FORM Authentication และการกำหนด Role
  • เก็บรหัสผ่านแบบ Hash ที่ปลอดภัย ไม่เก็บเป็นข้อความธรรมดา
  • ป้องกัน XSS ด้วยการ Escape ใน JSP และป้องกัน CSRF ด้วย Token
  • ตั้งค่า Cookie แบบ HttpOnly และ Secure และใช้ HTTPS
  • Lab: ตรวจและแก้ช่องโหว่ในแอปตัวอย่าง
Day 3 Hibernate ORM 7

Section 9: Lab: เริ่มต้น Hibernate ORM 7

  • ORM คืออะไร ช่วยลดงาน JDBC อย่างไร และข้อควรระวัง
  • Hibernate ORM 7 กับ Jakarta Persistence 3.2 และสิ่งที่เปลี่ยนจาก Hibernate รุ่นเก่า
  • ประกาศ Entity ด้วย Annotation แทนไฟล์ hbm.xml
  • ตั้งค่าด้วย persistence.xml หรือ HibernatePersistenceConfiguration
  • สร้าง EntityManagerFactory ครั้งเดียวต่อแอปด้วย Listener และให้ Hibernate สร้างตาราง

Section 10: Lab: Mapping ตารางและความสัมพันธ์

  • Primary Key และการสร้างค่าอัตโนมัติ
  • Mapping ชนิดข้อมูล Enum, วันที่ และ Embeddable
  • ความสัมพันธ์ ManyToOne, OneToMany และ ManyToMany
  • Lazy และ Eager Loading และการตั้งค่าเริ่มต้นที่แนะนำ
  • Lab: Mapping ตารางสินค้า หมวดหมู่ ลูกค้า และคำสั่งซื้อ

Section 11: Lab: Query ด้วย HQL และ Criteria

  • HQL สำหรับ Query ในมุมของคลาส พร้อม Parameter
  • Criteria API และ Static Metamodel จาก Hibernate Processor
  • แบ่งหน้าข้อมูลและเรียงลำดับ
  • ปัญหา N+1 และแก้ด้วย join fetch
  • Lab: หน้าค้นหาสินค้าหลายเงื่อนไขพร้อมแบ่งหน้า

Section 12: Lab: Transaction และ Validation

  • จัดการ Transaction ด้วย runInTransaction และ inTransaction
  • วาง Service Layer ที่เรียก Hibernate อย่างถูกต้องในเว็บ
  • ตรวจข้อมูลด้วย Jakarta Validation และ Hibernate Validator
  • Optimistic Locking ด้วย @Version เมื่อมีผู้ใช้แก้ข้อมูลพร้อมกัน
  • Lab: บันทึกคำสั่งซื้อพร้อมรายการสินค้าใน Transaction เดียว

Section 13: Lab: Repository แบบ Jakarta Data

  • Jakarta Data คืออะไร และ Hibernate Data Repositories
  • ประกาศ Repository ด้วย @Repository, @Find, @Insert และ @Query
  • Query ถูกตรวจตั้งแต่ตอนคอมไพล์ด้วย Hibernate Processor
  • เปรียบเทียบ DAO แบบเดิม Repository แบบใหม่ และ Spring Data
  • Lab: เปลี่ยน DAO ของระบบสินค้าเป็น Repository
Day 4 Workshop, Ajax และการ Deploy

Section 14: Workshop: ระบบจัดการข้อมูลพื้นฐาน

  • ออกแบบระบบจัดการสินค้า หมวดหมู่ และลูกค้าตามแนวคิด MVC
  • Servlet เป็น Controller, JSP เป็น View และ Hibernate เป็นชั้นข้อมูล
  • ฟอร์มเพิ่มและแก้ไขข้อมูลพร้อม Validation และข้อความแจ้งผล
  • Workshop: ทำระบบให้ครบ CRUD พร้อมสิทธิ์ผู้ใช้

Section 15: Lab: Ajax ด้วย Fetch API และ JSON

  • Servlet ที่ส่งข้อมูลกลับเป็น JSON ด้วย Jackson
  • เรียกข้อมูลจากหน้า JSP ด้วย Fetch API และ async/await
  • ค้นหาแบบพิมพ์แล้วแสดงผลทันทีและแบ่งหน้าโดยไม่โหลดหน้าใหม่
  • ส่งข้อมูลแบบ JSON กลับไปบันทึกพร้อม CSRF Token
  • Lab: ตารางสินค้าที่ค้นหาและแก้ไขได้โดยไม่รีโหลดหน้า

Section 16: Lab: Build และ Deploy

  • Build เป็นไฟล์ WAR ด้วย Maven และแยกค่าตั้งค่าตามสภาพแวดล้อม
  • Deploy บน Tomcat และตั้งค่า Logging
  • รันแอปและฐานข้อมูลด้วย Docker Compose
  • แนวทางย้ายโปรเจกต์ javax เดิมมาเป็น jakarta ด้วยเครื่องมือ Migration
  • Lab: Deploy ระบบที่สร้างขึ้น Container

Section 17: Workshop: Capstone ระบบงานจริง

  • เลือกโจทย์ เช่น ระบบสต็อกสินค้าหรือระบบจองห้องประชุม
  • รวม Servlet, JSP, Hibernate, Session, Security และ Ajax
  • ทดสอบ แก้บั๊ก และ Deploy บน Docker
  • นำเสนอผลงานและแนะนำเส้นทางต่อยอดสู่ Jakarta REST และ Spring Boot

รอบอบรมและรูปแบบการอบรม

สำหรับบุคคล — รอบอบรมทั่วไป

ขณะนี้ยังไม่มีรอบอบรมเปิดรับสมัคร ลงชื่อจองไว้ได้เลย ทีมงานจะติดต่อกลับเป็นกลุ่มแรกเมื่อเปิดรอบถัดไป หรือสอบถามทางไลน์ หรือโทร 02-570-8449 หรือ 088-807-9770

สำหรับองค์กร — In-house / Private Training

  • ปรับเนื้อหาให้ตรงกับเครื่องมือและงานจริงของทีม
  • เลือกวันเอง อบรมที่บริษัทหรือออนไลน์สด
  • ออกใบเสนอราคาในนามนิติบุคคลให้ฝ่ายจัดซื้อ
ขอใบเสนอราคาอบรมองค์กร

วิทยากรผู้สอน

คำถามที่พบบ่อย

Servlet กับ JSP ต่างกันอย่างไร ใช้ร่วมกันแบบ MVC อย่างไร

Servlet คือคลาส Java ที่รับ HTTP Request และส่ง Response กลับ เหมาะกับการเขียนตรรกะและควบคุมลำดับการทำงาน ส่วน JSP หรือ Jakarta Pages คือหน้า HTML ที่แสดงข้อมูลด้วย EL และแท็ก JSTL เหมาะกับการแสดงผล ในรูปแบบ MVC จึงให้ Servlet เป็น Controller รับคำขอและเรียก Service กับ Repository ที่เป็น Model เพื่อดึงข้อมูล แล้วส่งต่อให้ JSP ซึ่งเป็น View แสดงผลผ่าน RequestDispatcher ใน Jakarta EE รุ่นปัจจุบันทั้งหมดอยู่ในแพ็กเกจ jakarta แทน javax

Hibernate คืออะไร รุ่นปัจจุบันต่างจากรุ่นเก่าอย่างไร

Hibernate คือ ORM Framework ที่แมปคลาส Java กับตารางในฐานข้อมูล ทำให้บันทึก แก้ไข และดึงข้อมูลในรูปออบเจกต์ได้โดยไม่ต้องเขียน JDBC และ SQL ซ้ำ ๆ เอง Hibernate ORM 7 ใช้ Annotation กับ Jakarta Persistence 3.2 แทนไฟล์ XML Mapping แบบเดิม มี HQL และ Criteria สำหรับ Query ช่วยจัดการ Transaction และรองรับ Repository แบบ Jakarta Data ที่ตรวจ Query ตั้งแต่ตอนคอมไพล์ ทำให้โค้ดสั้นลงและพบข้อผิดพลาดได้เร็วขึ้น

ทำระบบ Login ด้วย Session ใน Java Web มีขั้นตอนอย่างไร

เริ่มจากสร้างฟอร์ม Login ที่ส่งข้อมูลไปยัง Servlet จากนั้นให้ Servlet ตรวจชื่อผู้ใช้กับฐานข้อมูลและเทียบรหัสผ่านกับค่า Hash ที่เก็บไว้ ถ้าถูกต้องให้เรียก request.getSession() เปลี่ยน Session ID ใหม่ แล้วเก็บข้อมูลผู้ใช้ด้วย setAttribute ก่อน Redirect ไปหน้าหลัก ใช้ Filter ตรวจว่า Session มีข้อมูลผู้ใช้ก่อนเข้าหน้าที่ต้องล็อกอิน ตั้ง Cookie เป็น HttpOnly และ Secure และเมื่อออกจากระบบให้เรียก session.invalidate()

ระบบเดิมที่ใช้ javax ย้ายมาเป็น Jakarta EE ได้อย่างไร

ตั้งแต่ Jakarta EE 9 แพ็กเกจ javax.servlet, javax.persistence และอื่น ๆ ถูกเปลี่ยนเป็น jakarta ทำให้ระบบเดิมรันบน Tomcat 10 ขึ้นไปไม่ได้ทันที ขั้นตอนหลักคือปรับ Dependency ใน Maven เป็นรุ่น Jakarta เปลี่ยน import ในโค้ด อัปเดต URI ของ JSTL และไฟล์ web.xml และอัปเกรด Hibernate พร้อมย้ายไฟล์ XML Mapping เป็น Annotation มีเครื่องมือ Migration ช่วยแปลงแพ็กเกจให้อัตโนมัติ แต่ควรทดสอบระบบทุกส่วนก่อนขึ้นใช้งานจริง หลักสูตรนี้มีหัวข้ออธิบายแนวทางนี้

หลักสูตร Java JSP and Servlet with Jakarta EE and Hibernate เหมาะกับใคร ต้องมีพื้นฐานอะไรมาก่อน

เหมาะกับผู้ที่อยากเป็น Java Developer สายเว็บ นักศึกษาที่ต้องทำโปรเจกต์ Web Application ด้วย Java และนักพัฒนาหรือผู้ดูแลระบบที่ต้องดูแลหรือย้ายระบบ Servlet, JSP และ Hibernate รุ่นเก่า ผู้เรียนต้องมีพื้นฐานภาษา Java มาก่อน เช่น Class, Collection และ Exception หรือผ่านหลักสูตร Basic Java Programming และเข้าใจ HTML กับ SQL เบื้องต้น

เรียนจบหลักสูตร Java JSP and Servlet with Jakarta EE and Hibernate แล้วทำอะไรได้บ้าง

พัฒนา Web Application ด้วย Java ตามแนวคิด MVC บน Jakarta EE 11 โดยใช้ Servlet เป็น Controller และ JSP กับ EL และ JSTL เป็น View เชื่อมฐานข้อมูลผ่าน JDBC และ Connection Pool ใช้ Filter จัดการ Session และความปลอดภัย ใช้ Hibernate ORM 7 Mapping ตาราง Query ด้วย HQL และ Criteria จัดการ Transaction ใช้ Repository แบบ Jakarta Data เรียกข้อมูลแบบ Ajax ด้วย JSON และ Deploy บน Tomcat หรือ Docker ได้ ผู้ผ่านการอบรมได้รับใบประกาศนียบัตร (Certificate of Completion) ที่มีเลขที่ของตัวเองและตรวจสอบออนไลน์ได้

บทความที่เกี่ยวข้อง