1.DDD และสปริงข้อมูล
DDD: การออกแบบที่ขับเคลื่อนด้วยโดเมนเป็นวิธีการใช้งานของการพัฒนาซอฟต์แวร์ภายใต้ข้อกำหนดที่ซับซ้อน ฉันจะอธิบาย DDD โดยเฉพาะเมื่อฉันมีเวลา
ข้อมูลฤดูใบไม้ผลิได้รับการออกแบบในหลายสถานที่ตามหลักการ DDD (เช่นที่เก็บ) ที่นี่ข้อมูลฤดูใบไม้ผลิส่วนใหญ่ใช้เหตุการณ์รวมและโดเมนของ DDD:
ด้านล่างเราแสดงให้เห็นถึงจำนวนสถิติของหมายเลขชายและหญิงเมื่อรูทรวมของบุคคลนั้นได้รับการบันทึกอย่างประสบความสำเร็จผ่านคุณลักษณะทางเพศของบุคคล, เอนทิตีทางสถิติ Genderstat ได้รับการปรับปรุง
2. การสาธิต
2.1 คนที่รวมกัน
ในฐานะที่เป็นรากโดยรวมบุคคลมีความสามารถในการเผยแพร่เหตุการณ์โดเมน มีสองวิธีในการใช้งานภายใต้ข้อมูลฤดูใบไม้ผลิ:
ชอบ:
@entity@data@allargsconstructor@noargsconstructor@toString (exclude = "domaineVents") บุคคลชั้นเรียนสาธารณะ {@id @Id @Id @Id @IneratedValue Private Long ID; ชื่อสตริงส่วนตัว; เพศจำนวนเต็มส่วนตัว; // 1: ชาย; 2: คอลเลกชันหญิง @domaineVents <jobch> domaineVents () {รายการ <jobch> events = new ArrayList <OjropLe> (); Events.Add (บุคคลใหม่ ENSONSAVEDEVENT (this.id, this.gender)); เหตุการณ์กลับ; } @afterdomaineVentPublication เป็นโมฆะการเรียกกลับมาใช้ () {//}}}หรือ
@entity@data@allargsconstructor@noargsconstructor@toString (exclude = "domaineVents") บุคคลระดับสาธารณะขยาย AbstractAggregateroot {@id @Id@GeneratedValue Long ID ส่วนตัว; ชื่อสตริงส่วนตัว; เพศจำนวนเต็มส่วนตัว; // 1: ชาย; 2: บุคคลสาธารณะหญิง AfterpersonsavedCompleted () {RegisterEvent (บุคคลใหม่ ExonsavedEvent (this.id, this.gender)); คืนสิ่งนี้; -2.2 การจัดการกิจกรรมการฟัง
@ComponentPublic คลาส GenderStatProcessor {@autoWired GENDERREPOSITION GENDERREPOSITIOR; @async @transactionaleventListener โมฆะสาธารณะ handlemerpersonsavedcomplete (เหตุการณ์บุคคลที่มีการบันทึก) {genderstat genderstat = genderrepository.findone (1l); if (event.getGender () == 1) {genderstat.setMalecount (genderstat.getMalecount ()+1); } else {genderstat.setfemalecount (genderstat.getfemalecount ()+1); } genderRepository.save (genderstat); - 3 ที่อยู่ซอร์สโค้ด : https://github.com/wiselyman/spring-data-domain-event
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น