แอปพลิเคชันเว็บการจัดการลูกค้าสัมพันธ์
| คุณสมบัติ | ภาษาและเทคโนโลยี | การตั้งค่าสภาพแวดล้อม | กระบวนการหลัก | กระบวนการเพิ่มเติม | JSP | หมายเหตุ |
|---|


เกี่ยวกับ
เว็บแอปพลิเคชันง่าย ๆ ในการจัดการความสัมพันธ์กับลูกค้าโดยใช้ Spring MVC และ Hibernate ซึ่งกำหนดค่าโดย XML
คุณสมบัติ
- ดูลูกค้า
- เพิ่มลูกค้าใหม่
- อัปเดตลูกค้า
- ลบลูกค้า
- การสนับสนุนการบันทึก AOP
ภาษาและเทคโนโลยี
- ชวา
- XML
- mysql
- ฤดูใบไม้ผลิ MVC
- ฤดูใบไม้ผลิ AOP
- โภชนาการ
- jstl
- JSP
- CSS/JavaScript
กระบวนการพัฒนา
การตั้งค่าสภาพแวดล้อม
สร้างโครงการเว็บแบบไดนามิกใหม่ใน Eclipse
สร้างฐานข้อมูล MySQL ใน Workbench [create-database.sql]
นำเข้าขวดไปยังห้องสมุด: web-inf/lib
- ตัวเชื่อมต่อ mysql [url]
- JSTL API (สำหรับ JSP) [URL]
- กรอบฤดูใบไม้ผลิ [URL]
- ไฮเบอร์เนต (โฟลเดอร์ที่จำเป็น) และ C3P0 (โฟลเดอร์เสริม) [URL]
- ASPECTJ (สำหรับ AOP) [URL]
สำหรับ Java 9+ ให้รวมขวดต่อไปนี้ใน web-inf/lib
- javax.activation-1.2.0.jar
- Jaxb-Api-2.3.0.jar
- jaxb--2.3.0.jar
- jaxb-impl-2.3.0.jar
ทดสอบการเชื่อมต่อฐานข้อมูล (Project Facets/Runtimes/Tomcat): สร้าง servlet [TestDatabaseServlet]
รวมไฟล์ configuaration XML (Spring MVC และ Web) ใน Web-Inf
กำหนดค่า Spring + Hibernate ในไฟล์ XML [Spring-MVC-crud-demo-servlet.xml]
- กำหนดเนมสเปซ XML และตำแหน่งสคีมา
- กำหนดฐานข้อมูลฐานข้อมูล / พูลการเชื่อมต่อ
- การตั้งค่าโรงงานเซสชันไฮเบอร์เนต
- การตั้งค่าผู้จัดการธุรกรรมไฮเบอร์เนต
- เปิดใช้งานการกำหนดค่าของคำอธิบายประกอบการเคลื่อนไหว
- เพิ่มการสนับสนุนสำหรับการอ่านทรัพยากรเว็บ: CSS, รูปภาพ, js ฯลฯ
- เปิดใช้งาน Proxy Auto Auto
ทดสอบสปริงคอนโทรลเลอร์: สร้างคลาสคอนโทรลเลอร์ด้วยวิธีการกลับไปที่ไฟล์ JSP ใหม่ในโฟลเดอร์ 'View'
หลัก
- สร้างคลาสลูกค้าและแผนที่ไปยังตารางฐานข้อมูลโดยใช้ Hibernate
- สร้างอินเทอร์เฟซ CustomerDao
- สร้างคลาส customerdaoimpl ด้วย @repository
- ฉีดโรงงานเซสชันด้วย @autowired
- ใช้วิธีการ
- รับเซสชันไฮเบอร์เนตปัจจุบัน
- สร้างแบบสอบถาม [org.hibernate.query.query]
- ดำเนินการค้นหาและรับรายการผลลัพธ์
- ผลตอบแทน
- สร้างอินเทอร์เฟซบริการ
- สร้างการใช้งานบริการด้วย @Service
- ฉีด dao ด้วย @autowired
- ใช้วิธีการด้วย @Transactional
- มอบหมายให้โทรหา DAO
- สร้าง/อัปเดต CustomerController
- ฉีดลูกค้าบริการโดยใช้ @autowired
- สร้างวิธีการร้องขอด้วย @requestmapping
- รับผลลัพธ์จากบริการจาก DAO หรือสร้างแอตทริบิวต์โมเดลเพื่อผูกข้อมูลฟอร์ม [CustomerController]
- เพิ่มผลลัพธ์/แอตทริบิวต์ให้กับโมเดล
- ส่งคืนหน้า JSP
- สร้าง/อัปเดตหน้า JSP
- เพิ่มการสนับสนุนสำหรับ JSTL Core Tags:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
- สร้างคลาส ASSICE ด้วย @ASPECT และ @Component [LoggingAspect] [อ้างอิง]
- เพิ่ม logger
- การตั้งค่าการตั้งค่า PointCut
- เพิ่มคำแนะนำ
เพิ่มเติม
- หน้า prettify jsp กับ CSS
- วาง CSS ไว้ในโฟลเดอร์ 'ทรัพยากร' ในเว็บค็อก
- กำหนดค่าสปริงเพื่อให้บริการโฟลเดอร์ 'ทรัพยากร'
- อ้างอิง CSS ใน JSP
- กำหนดค่าไฟล์ต้อนรับใน Spring XML เพื่อเปลี่ยนเส้นทางจากโฮมเพจ
- สร้าง jsp ภายในเว็บคอนท์เตอร์จับคู่กับชื่อของไฟล์ต้อนรับใน XML [index.jsp]
- เปลี่ยนเส้นทางไปยังที่อยู่ที่ต้องการ:
<% response.sendRedirect("address"); %>
- วิธีการขอ Refactor ในคอนโทรลเลอร์โดยใช้ @getMapping , @PostMapping
JSP
- รองรับแท็กฟอร์มสปริง MVC:
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> -
${pageContext.request.contextPath} ส่งคืนชื่อแอพที่เหมาะสมใน JSP
หมายเหตุ
- แพ็คเกจสำหรับการสแกนต้องตรงกันในไฟล์ XML การกำหนดค่าฤดูใบไม้ผลิ
- โฟลเดอร์ 'ดู' ประกอบด้วยไฟล์ JSP ต้องตรงกันในไฟล์ XML การกำหนดค่าสปริง
- เรียกใช้โครงการ: เลือก Project Root -> Run as -> Run บนเซิร์ฟเวอร์
- ใช้ SessionFactory.saveorupdate (): รวมบันทึก () และ update () [customerdaoimpl]
- @RequestMapping (Hanlde ทุกวิธี), @getMapping , @PostMapping
-
@RequestMapping(path="...", method=RequestMethod.GET) <=> @GetMapping(path="...") - ใช้ "เปลี่ยนเส้นทาง: mapped_method" เพื่อเปลี่ยนเส้นทางไปยังวิธีที่กำหนดในคอนโทรลเลอร์แทนหน้า JSP [CustomerController]
- ใช้ @transactional [org.springframework] เพื่อเริ่มต้นและปิดธุรกรรมสำหรับวิธีการ [customerdao]
- ใช้ @Repository กับการใช้งาน DAO เพื่อจัดการการแปลข้อยกเว้น
- ใช้ @Service สำหรับการใช้งานบริการ
- รูปแบบการออกแบบเลเยอร์บริการ
- กำหนด @Transactional ที่ชั้นบริการแทน DAO
- ฉีดบริการแทน DAO ในคอนโทรลเลอร์
- คอนโทรลเลอร์ <-> เลเยอร์บริการ <-> dao
ไปด้านบน