0. เขียนด้านหน้า
เคล็ดลับที่เป็นมิตร: ที่อยู่ดาวน์โหลดอยู่ด้านล่าง
โครงการเสร็จสมบูรณ์แล้ว ด้วยบทสรุปนี้ฉันได้เขียนบล็อก 30 บล็อกที่เกี่ยวข้องกับโครงการนี้ซึ่งมีการสะสมมาก กระบวนการเขียนบล็อกเป็นกระบวนการของความคิดที่ทำให้แข็งตัว มันมีประโยชน์มากสำหรับตัวเองและยังสามารถช่วยเหลือผู้อื่นได้ โดยวิธีการจะมีข้อยกเว้นมากมายในกระบวนการเรียนรู้ สิ่งแรกที่เราต้องทำคือค้นหาข้อยกเว้นนี้ โดยทั่วไปหนึ่งหรือมากกว่าที่เกิดจาก: xxx ตามด้วยข้อยกเว้น นี่คือสาเหตุของข้อยกเว้น โดยทั่วไปเรามองหาสิ่งที่เกิดจากด้านล่างซึ่งมักจะเป็นรากของปัญหา หากคุณไม่สามารถแก้ปัญหาได้ด้วยตัวเองคุณสามารถค้นหาบน Google หรือ Baidu (อย่าโพสต์ความผิดปกติมากเมื่อค้นหาให้ใส่ใจกับส่วนสำคัญ!) โดยทั่วไปแล้ว 99.9% ของปัญหาที่เราพบพบได้พบโดยรุ่นก่อนของเราและโดยทั่วไปทั้งหมดสามารถแก้ไขได้ โดยทั่วไปฉันทำสิ่งนี้เมื่อฉันพบปัญหาที่ไม่สามารถแก้ไขได้ ถ้าฉันแก้ปัญหาตัวเองมากขึ้นฉันจะรู้สึกว่า ~ ในที่สุดฉันหวังว่าทุกคนจะได้รับบางสิ่งบางอย่างเมื่ออ่านบล็อกของฉัน!
ฉันจะไม่พูดเรื่องไร้สาระ มาสรุปโครงการของห้างสรรพสินค้าออนไลน์ด้านล่าง ฉันจะไม่ครอบคลุมทุกอย่าง ส่วนใหญ่จะแบ่งออกเป็นหลายโมดูลเพื่อสรุปรวมถึงเทคโนโลยีที่ใช้ ฯลฯ ฉันจะแนบลิงค์ด่วนกับรายละเอียดเฉพาะในบทความ คุณสามารถตรวจสอบบทความเฉพาะ
การระลึกถึงโครงการนี้สามารถแบ่งออกเป็นโมดูลหลักเหล่านี้:
--- การสร้างสภาพแวดล้อมโครงการ
--- สร้างระบบการจัดการแบ็กเอนด์
--- สร้างหน้าจอแสดงผลแผนกต้อนรับส่วนหน้า
--- ฟังก์ชั่นที่เกี่ยวข้องกับตะกร้าสินค้า
--- ฟังก์ชั่นการชำระเงินออนไลน์
--- ส่งอีเมลและข้อความ
--- แอปพลิเคชันชื่อโดเมนและการปรับใช้โครงการ
--- การตรวจสอบแบบฟอร์มและการแสดงรายงาน
ต่อไปนี้เป็นการวิเคราะห์เฉพาะสำหรับแต่ละโมดูล
1. การก่อสร้างสภาพแวดล้อมของโครงการ
นี่เป็นลิงค์ที่ขาดไม่ได้ในทุกโครงการและจะมีปัญหามากมาย เมื่อฉันเริ่มเรียนรู้ SSH ครั้งแรกฉันพยายามดิ้นรนเพื่อสร้างสภาพแวดล้อมเสมอเพราะฉันไม่ค่อยมีทักษะ แต่ฉันแค่อยากจะสร้างมัน "เป็นจังหวะ" กล่าวคือการสร้างโครงการด้านสิ่งแวดล้อมต้องใช้ทีละขั้นตอนทีละบิต หลายคนจะนำเข้าแพ็คเกจ JAR ทั้งหมดเข้าไปในนั้นจากนั้นเขียนไฟล์การกำหนดค่าทั้งหมดหรือวางไว้จากที่อื่นแล้วเรียกใช้แล้วแขวนไว้ ... จากนั้นหาปัญหาต่าง ๆ ทำไมต้องกังวล? ด้วยวิธีนี้แม้ว่าคุณจะสร้างมัน 10 ครั้งคุณจะไม่สามารถทำได้อย่างง่ายดาย คุณต้องกินข้าวในหนึ่งกัดและคุณต้องเดินทีละขั้นตอน
กระบวนการที่ฉันติดตามการก่อสร้างสภาพแวดล้อม SSH เป็นการส่วนตัวคือ:
ฤดูใบไม้ผลิ> ไฮเบอร์เนต> การรวมสปริงไฮเบอร์เนต> struts2> สปริงบูรณาการ struts2
หลังจากแต่ละขั้นตอนให้เขียนแบบทดสอบ สิ่งนี้สำคัญมากเพราะถ้าคุณไปทีละขั้นตอนคุณจะรู้ว่าจะไปที่ไหนถ้าคุณทำผิดพลาดและหาปัญหาได้ที่ไหน สิ่งที่สำคัญที่สุดคือถ้าคุณมีความเชี่ยวชาญในกระบวนการนี้มันจะง่ายที่จะได้รับสภาพแวดล้อมในครั้งต่อไป สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการก่อสร้างสภาพแวดล้อม SSH โปรดดูบทความต่อไปนี้:
รวม struts2, hibernate4.3 และ spring4.2
การเพิ่มพื้นฐานการลบการค้นหาและการดัดแปลงการสกัดบริการและการดำเนินการและการแทนที่ XML ด้วยคำอธิบายประกอบ
2. สร้างระบบการจัดการแบ็กเอนด์
ฉันใช้ EasyUI เพื่อสร้างระบบการจัดการแบ็กเอนด์ พูดตามตรงฉันมีความเข้าใจเพียงเล็กน้อยเกี่ยวกับ Easyui ฉันไม่รู้เกี่ยวกับสิ่งต่าง ๆ มากนัก แต่ฉันเข้าใจนิดหน่อย ฉันตรวจสอบพวกเขาทั้งหมดเมื่อฉันใช้พวกเขา ฉันไม่ได้เรียนรู้พวกเขาอย่างเป็นระบบดังนั้นฉันจึงไม่มีระบบความรู้ที่ดี แต่มันไม่ส่งผลกระทบต่อการเล่น โปรแกรมเมอร์ชอบที่จะบอกว่าพวกเขากำลังเล่นเทคโนโลยีและพวกเขาฟังดูค่อนข้างสูง ฉันค่อยๆได้รับผลกระทบและฉันชอบที่จะพูดอย่างนั้น แต่ฉันเล่นกับส่วนหน้า ...
JQuery Easyui เป็นคอลเลกชันของปลั๊กอิน UI ที่อิงกับ jQuery และเป้าหมายของ JQuery Easyui คือการช่วยให้นักพัฒนาเว็บสร้างอินเทอร์เฟซ UI ที่อุดมไปด้วยคุณสมบัติและสวยงาม นักพัฒนาไม่จำเป็นต้องเขียนจาวาสคริปต์ที่ซับซ้อนและไม่จำเป็นต้องมีความเข้าใจในเชิงลึกเกี่ยวกับสไตล์ CSS นักพัฒนาทุกคนต้องรู้คือแท็ก HTML ง่ายๆ
คำขอ EasyUI เป็นคำขอ AJAX ทั้งหมดและจะไม่มีหน้าใหม่ปรากฏขึ้นพวกเขาทั้งหมดอยู่ในแท็บแท็บหรือหน้าต่างปรากฏขึ้น ระบบการจัดการแบ็กเอนด์ส่วนใหญ่แบ่งออกเป็นสามส่วน: การจัดการหมวดหมู่ผลิตภัณฑ์การจัดการผลิตภัณฑ์และการจัดการการขาย การจัดการการขายเป็นครั้งสุดท้าย
2.1 การจัดการหมวดหมู่ผลิตภัณฑ์
ส่วนนี้ส่วนใหญ่เกี่ยวข้องกับการสร้างสภาพแวดล้อมแบบง่าย ๆ และกรอบพื้นหลังการสืบค้นแบบเรียงซ้อนและการแบ่งหน้าของฐานข้อมูลการแสดงข้อมูล DataGrid การรวม struts2 การรวม JSON และหมวดหมู่ผลิตภัณฑ์เพิ่มเติมการลบอัปเดตและการค้นหา นอกจากนี้ยังเป็นไปตามลำดับความสำเร็จในส่วนนี้
DataGrid แสดงข้อมูลในรูปแบบของตารางและนักพัฒนาไม่จำเป็นต้องมีความรู้เฉพาะในการใช้งาน มีเอกสารช่วยเหลือที่ดีและมีรายละเอียดมากขึ้น ในโครงการนี้ฉันได้แนะนำหลายวิธีในการสร้าง DataGrid และยังแนะนำคุณสมบัติบางอย่างของ DataGrid มันเป็นจุดเริ่มต้น ฉันยังเป็นเครื่องมือเบื้องต้น โดยการพัฒนามากขึ้นฉันสามารถเชี่ยวชาญเทคโนโลยีนี้ได้หรือไม่
การเพิ่มหมวดหมู่การลบอัปเดตและฟังก์ชั่นการค้นหาส่วนใหญ่ใช้ฟังก์ชั่นการตรวจสอบที่มาพร้อมกับ EasyUI เมื่อเพิ่มหมวดหมู่ผลิตภัณฑ์ให้ตรวจสอบว่าอินพุตในกล่องอินพุตถูกต้องไม่ว่าจะจำเป็นหรือไม่ ฯลฯ ; ไม่ว่าจะเป็นบรรทัดที่แน่นอนหรือหลายบรรทัดก่อนเมื่อลบ เมื่ออัปเดตสามารถอัปเดตได้ทีละบรรทัดเท่านั้น ฯลฯ ซึ่งทั้งหมดเป็นคำขอ AJAX
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับส่วนนี้ฉันได้จัดประเภทไว้แล้วโปรดดูบทความเหล่านี้:
ใช้ EasyUI เพื่อสร้างเฟรมเวิร์กหน้าแบ็กเอนด์ เมนู EasyUI เพื่อใช้การสืบค้นแบบเรียงซ้อนและการแบ่งหน้าของฐานข้อมูล DataGrid Data Display Function Struts2 และ JSON Integrated DataGrid เพื่อใช้การสืบค้นและลบฟังก์ชั่น DataGrid เพื่อใช้งานการเพิ่มและอัปเดตฟังก์ชัน DataGrid เพื่อใช้ฟังก์ชั่นการเพิ่มและอัปเดตฟังก์ชั่น
นี่คือปัญหาที่ฉันพบ:
ปัญหาข้อยกเว้นการโหลดขี้เกียจใน struts2 และ JSON Integration Hibernate4 Execution Save () หรือ Update () ไม่ถูกต้อง
2.2 การจัดการผลิตภัณฑ์
การจัดการผลิตภัณฑ์ยังรวมถึงการดำเนินงานเช่นการเพิ่มและการลบซึ่งเหมือนกับการจัดการหมวดหมู่ มีสิ่งหนึ่งที่เพิ่มผลิตภัณฑ์และจำเป็นต้องอัปโหลดรูปภาพของผลิตภัณฑ์ สิ่งนี้เกี่ยวข้องกับฟังก์ชั่นของ struts2 เพื่อใช้การอัปโหลดไฟล์ เราจำเป็นต้องสร้างโฟลเดอร์ทางฝั่งเซิร์ฟเวอร์เพื่อจัดเก็บไฟล์ที่อัปโหลดแล้วเขียนโมเดลเพื่อรับไฟล์ เกี่ยวกับการอัปโหลดไฟล์เราต้องเขียนคลาสเครื่องมือโดยเฉพาะ นี่คือวิธีการพัฒนาในโครงการ ต้องสกัดรหัสทั่วไปแม้ว่าจะมีรหัสเพียงหนึ่งประโยค แต่ก็ต้องสกัด! นี่คือนิสัยและต้องทำ สำหรับรายละเอียดเฉพาะโปรดดูบทความที่ระบุไว้ด้านล่าง:
โมดูลพื้นฐานของหมวดหมู่ผลิตภัณฑ์ถูกสร้างขึ้นและใช้การสืบค้นและลบฟังก์ชั่นผลิตภัณฑ์ การใช้งานฟังก์ชั่นผลิตภัณฑ์ถูกนำมาใช้ การใช้งานฟังก์ชั่นการอัปโหลดไฟล์ถูกนำมาใช้
3. สร้างหน้าจอแสดงผลแผนกต้อนรับส่วนหน้า
แน่นอนหน้าส่วนหน้าไม่ได้ออกแบบโดยฉัน ฉันสรุปเทคโนโลยีแบ็คเอนด์บางอย่างที่เกี่ยวข้องกับการแสดงผลส่วนหน้าเช่น: ผู้ฟังได้รับข้อมูลโฮมเพจตัวจับเวลาซิงโครไนซ์ข้อมูลโฮมเพจและแคชการประมวลผลแคชระดับสูงของไฮเบอร์เนต 2 แคชของผลิตภัณฑ์ยอดนิยม
เมื่อฉันเรียนรู้ servlet นี่คือวิธีที่ฉันทำข้อมูลการแสดงหน้าแรก ฉันใช้เฟรมและแสดงข้อมูลทางด้านขวา จากนั้นฉันก็กระโดดไปที่เซิร์ฟเล็ตในส่วนที่ถูกต้องใน index.jsp จากนั้นไปที่ servlet เพื่อนำผลิตภัณฑ์ทั้งหมดออกจากฐานข้อมูลวางไว้ในฟิลด์คำขอและนำหน้า JSP ใหม่มาแสดง แม้ว่าสิ่งนี้สามารถทำได้ แต่มันก็โง่มาก ที่นี่ฉันใช้ผู้ฟังทำสิ่งนี้ ก่อนอื่นฉันกำหนดผู้ฟังด้วยตัวเองและเมื่อโครงการเริ่มต้นฉันนำข้อมูลผลิตภัณฑ์ทั้งหมดในฐานข้อมูลใส่ไว้ในโดเมนแอปพลิเคชันแล้วใช้ EL Expression โดยตรงเพื่อดึงข้อมูลจากโดเมนแอปพลิเคชันในหน้าแรก
มีปัญหาอื่น เมื่อฉันเพิ่มผลิตภัณฑ์ใหม่ลงในระบบการจัดการฉันต้องรีสตาร์ท Tomcat เพื่อเพิ่มผลิตภัณฑ์ใหม่ลงในโดเมนแอปพลิเคชัน เนื่องจากมันอยู่ในโดเมนแอปพลิเคชันหลังจากครั้งแรกที่ฉันนำมันออกมาจึงมุ่งมั่นที่จะตาย การเพิ่มใหม่ในภายหลังไม่ได้อยู่ในโดเมนแอปพลิเคชัน เพื่อแก้ปัญหานี้ฉันใช้ตัวจับเวลาเพื่อซิงโครไนซ์ข้อมูลหน้าแรก ดังนั้นฉันจึงเขียนผู้ฟังที่ฉันเขียนไว้ก่อนหน้านี้ตั้งเวลาในผู้ฟังใส่รหัสเพื่อรับข้อมูลของผลิตภัณฑ์ในฐานข้อมูลลงในงานจับเวลาและดำเนินการทันทีเป็นครั้งแรกแล้วดำเนินการทุก ๆ 6 ชั่วโมง นี่คือสิ่งที่เว็บไซต์ทั่วไปทำเช่นหน้าแรกบล็อกส่วนตัวของ CSDN การจัดอันดับได้รับการปรับปรุงทุกวันอาจประมาณ 22.00 น. ฉันลืมเวลาที่กำหนด ในเวลานั้นการรีเฟรชจะเห็นการอัปเดตข้อมูลซึ่งจะลดแรงกดดันบนเซิร์ฟเวอร์
สำหรับรายละเอียดทางเทคนิคเฉพาะในส่วนนี้โปรดดูบทความต่อไปนี้:
ใช้ผู้ฟังเพื่อรับข้อมูลที่แสดงในหน้าแรก วิธีรับเธรดไฟล์การกำหนดค่าสปริงการจับเวลาการจับเวลาของตัวจับเวลาโฮมเพจข้อมูลไฮเบอร์เนตแคชทุติยภูมิการประมวลผลโฮมเพจยอดนิยมแสดงผลยอดนิยมแสดงผล
4. ฟังก์ชั่นที่เกี่ยวข้องกับตะกร้าสินค้า
เทคโนโลยีหลักที่เกี่ยวข้องกับตะกร้าสินค้า ได้แก่ : การประมวลผลพื้นหลังของตรรกะของตะกร้าสินค้าและรายการช้อปปิ้งการเข้าสู่ระบบการตัดสินตัวกรองคำสั่งซื้อเรียงซ้อนลงในฐานข้อมูลและการแคชหน้า
สำหรับตะกร้าสินค้าส่วนใหญ่จะมีตรรกะการใช้งานบางอย่างในแบ็กเอนด์ มีรายการช้อปปิ้งในตะกร้าสินค้า หมายความว่าอย่างไร? เราทุกคนรู้ว่าเมื่อเราซื้อของใน TMALL เราสามารถใส่ผลิตภัณฑ์ที่แตกต่างกันในตะกร้าสินค้าและจากนั้นมีผลิตภัณฑ์มากมายในตะกร้าสินค้าและแต่ละผลิตภัณฑ์สามารถมีได้หลายปริมาณ แต่ละผลิตภัณฑ์และข้อมูลที่เกี่ยวข้องคือรายการช้อปปิ้ง ดังนั้นเมื่อเพิ่มตะกร้าสินค้าเราต้องทำรายการช้อปปิ้งให้เสร็จก่อนจากนั้นเพิ่มรายการช้อปปิ้งนี้ลงในตะกร้าสินค้า
เมื่อผู้ใช้ต้องการชำระเราต้องพิจารณาก่อนว่าผู้ใช้ได้ลงชื่อเข้าใช้สิ่งนี้ใช้เทคโนโลยีตัวกรองซึ่งกรอง URL บางประเภทโดยเฉพาะและกำหนดว่ามีวัตถุผู้ใช้ในเซสชันปัจจุบันในตัวกรองหรือไม่ หากมีข้อบ่งชี้ใด ๆ ว่าการเข้าสู่ระบบได้เข้าสู่ระบบเพียงแค่ปล่อยมันโดยตรง ถ้าไม่ข้ามไปที่หน้าเข้าสู่ระบบเพื่อให้ผู้ใช้เข้าสู่ระบบ หลังจากเข้าสู่ระบบแล้วข้ามไปที่หน้าเว็บที่ผู้ใช้ต้องการเดิม มันเหมือนคนเฝ้าประตู ~ มองไปที่ประตู ~
ดังที่ได้กล่าวไว้ในขณะนี้ข้อมูลการสั่งซื้อรวมถึงตะกร้าสินค้าและรายการช้อปปิ้ง เมื่อเราเข้าสู่คำสั่งซื้อเราต้องพิจารณาปัญหาการเรียงซ้อนของพวกเขา เราสามารถตั้งค่าแอตทริบิวต์คำอธิบายประกอบที่สอดคล้องกันใน pojos ของทั้งสอง อย่างไรก็ตามมีข้อกำหนดเบื้องต้น ตัวอย่างเช่นหากมีความสัมพันธ์ของคีย์ต่างประเทศฟิลด์ในส่วนสำคัญของต่างประเทศของ pojo ที่เกี่ยวข้องจะต้องได้รับค่าที่ดีก่อนเข้า Pojo ตัวอย่างเช่นการสั่งซื้อจะต้องเพิ่มลงในรายการโฆษณาและแอตทริบิวต์การสั่งซื้อในรายการโฆษณาจะต้องได้รับการกำหนดค่าที่ดีก่อนที่จะส่งมอบให้กับไฮเบอร์เนต ไฮเบอร์เนตลดลงในไลบรารีตามคำอธิบายประกอบที่กำหนดค่า (หรือไฟล์ XML)
ปัญหาเกี่ยวกับการแคชหน้าหมายถึงเมื่อผู้ใช้ยืนยันคำสั่งซื้อหากเขาคลิกกลับเขาจะกลับไปที่หน้าการยืนยันคำสั่งซื้อ หน้าการยืนยันคำสั่งซื้อตอนนี้ออกมาอีกครั้งและเซสชันยังคงอยู่ที่นั่นและข้อมูลยังคงเป็นข้อมูลในขณะนี้ เห็นได้ชัดว่านี่ไม่ใช่ผลลัพธ์ที่เราต้องการ เราจำเป็นต้องประมวลผลในแผนกต้อนรับและแบ็กเอนด์ในเวลาเดียวกัน
โปรดดูบทความต่อไปนี้สำหรับรายละเอียดทางเทคนิคเฉพาะในส่วนนี้:
การใช้งานฟังก์ชั่นพื้นฐานของตัวกรองตะกร้าสินค้าเพื่อรับรู้ฟังก์ชั่นการเข้าสู่ระบบเพื่อตรวจสอบการจัดเก็บแบบเรียงซ้อนและปัญหาการแคชหน้าของข้อมูลการสั่งซื้อ
5. ฟังก์ชั่นการชำระเงินออนไลน์
ส่วนนี้ส่วนใหญ่แนะนำบางสิ่งเกี่ยวกับอินเทอร์เฟซการชำระเงินของ Yibao ในความเป็นจริงฟังก์ชั่นการชำระเงินออนไลน์นั้นแตกต่างกันสำหรับบุคคลที่สามที่แตกต่างกัน วัตถุประสงค์หลักคือการเข้าใจกระบวนการพัฒนาฟังก์ชั่นการชำระเงินออนไลน์ รายละเอียดทางเทคนิคเฉพาะขึ้นอยู่กับข้อมูลที่จัดทำโดยบุคคลที่สามเฉพาะ แต่กระบวนการทั่วไปคือ: เรียกอินเทอร์เฟซของบุคคลที่สาม> เรียกอินเทอร์เฟซธนาคาร> การชำระเงินให้เสร็จสิ้น> บุคคลที่สามกระโดดกลับไปที่หน้าเว็บที่เราระบุ
ส่วนนี้ยังเกี่ยวข้องกับเทคโนโลยีที่สำคัญซึ่งเป็นวิธีที่ Struts2 จัดการคำขอหลายรุ่น โดยทั่วไปแล้ว struts2 สามารถใช้แบบจำลองในการดำเนินการหลังจากใช้งาน Modedriven <Model> แต่ถ้ามีสองรุ่นตอนนี้ล่ะ? มีอินเทอร์เฟซอื่นที่เรียกว่า Parametersaware ใน struts2 ตราบใดที่อินเทอร์เฟซนี้ถูกนำไปใช้และแผนที่ที่เก็บพารามิเตอร์ที่เก็บไว้ก็สามารถรับพารามิเตอร์ทั้งหมดในคำขอคำขอได้ เราสามารถตัดสินว่าโมเดลใดที่จะใช้ตามพารามิเตอร์ที่แตกต่างกัน วิธีนี้สามารถแก้ปัญหาของ Struts2 ที่จัดการคำขอหลายรุ่นได้
สำหรับรายละเอียดทางเทคนิคในส่วนนี้โปรดดูโพสต์บล็อกต่อไปนี้:
บทนำสู่แพลตฟอร์มการชำระเงินออนไลน์ซึ่งเป็นตัวอย่างของกระบวนการชำระเงิน Yibao
รับการแสดงไอคอนธนาคารและหน้าชำระเงินเพื่อให้ตรรกะของฟังก์ชั่นการชำระเงินออนไลน์เสร็จสิ้นวิธีจัดการคำขอหลายรุ่นใน struts2
6. อีเมลและ SMS ส่งฟังก์ชั่น
การส่งอีเมลและการส่งข้อความค่อนข้างง่าย พวกเขาทั้งสองได้รับการแก้ไข API เพียงแค่รู้วิธีใช้ เพียงตรวจสอบพวกเขาและฉันก็จำไม่ได้เช่นกัน ฟังก์ชั่นการส่งอีเมลจำเป็นต้องนำเข้าแพ็คเกจ Mail.jar จากนั้นส่งอีเมลตามกระบวนการ ฟังก์ชั่น SMS ต้องสมัครก่อนสำหรับฟังก์ชั่นการส่ง SMS หลังจากแอปพลิเคชันเสร็จสิ้นบุคคลที่สามจะให้อินเทอร์เฟซ API บางส่วนแก่เรา เราสามารถพัฒนาฟังก์ชั่นการส่ง SMS ตราบใดที่เราอ้างถึง มันค่อนข้างคล้ายกับฟังก์ชั่นการชำระเงินและพวกเขาทั้งหมดพึ่งพาแพลตฟอร์มของบุคคลที่สาม
ไม่มีปัญหาทางเทคนิคในส่วนนี้ส่วนใหญ่กระบวนการบทความที่เกี่ยวข้องมีดังนี้:
ส่งฟังก์ชั่น SMS หลังจากการชำระคำสั่งซื้อสำเร็จแล้วเสร็จโดยใช้อีเมล Java ไปยังผู้ใช้
7. แอปพลิเคชันสำหรับเนมสเปซโดเมนและการปรับใช้และการเปิดตัวโครงการ
ส่วนนี้ส่วนใหญ่แนะนำวิธีการสมัครสำหรับพื้นที่ชื่อโดเมนฟรี (ฟรีสำหรับ 15 วันเท่านั้น ~ แต่สำหรับการเรียนรู้เพียงพอ ~) แม้ว่าจะไม่ได้ฟรีทั้งหมด แต่เราจำเป็นต้องคิดกระบวนการนี้เป็นหลัก จะดีกว่าที่จะผ่านมันเอง ไม่จำเป็นต้องอัปโหลดโครงการที่สมบูรณ์ หน้า JSP หรือหน้าคงที่ HTML นั้นใช้ได้
มีสองวิธีหลักในการปรับใช้และเผยแพร่โครงการ: หนึ่งคือการอัปโหลดโดยใช้ FTP แต่นี่ช้าและอาจสูญเสียข้อมูล ประสบการณ์ส่วนตัวคือการออกทีละนิด อีกวิธีหนึ่งคือการสมัครพื้นที่ชื่อโดเมนเพื่อให้สภาพแวดล้อมการปรับใช้ เราเพียงแค่ต้องส่งออกโครงการเป็นแพ็คเกจสงครามแล้วปรับใช้แพ็คเกจสงคราม
มีรายละเอียดมากมายที่จะให้ความสนใจก่อนการปรับใช้โครงการเช่นการปรับเปลี่ยนเส้นทางการแก้ไขข้อมูลบางอย่าง ฯลฯ รายละเอียดเหล่านี้จะอธิบายรายละเอียดในบล็อกของฉัน ส่วนนี้มีบทความหนึ่งบทความดังนี้:
แอปพลิเคชันสำหรับพื้นที่ชื่อโดเมนและการปรับใช้และการเปิดตัวโครงการ
8. การตรวจสอบแบบฟอร์มและการแสดงรายงาน
บางสิ่งจะถูกเพิ่มในภายหลังซึ่งเป็น Ajax อัพเดทปริมาณผลิตภัณฑ์ในตะกร้าสินค้าการตรวจสอบรูปแบบและการแสดงรายงาน
จำนวนผลิตภัณฑ์ในการอัปเดตแบบไดนามิกของตะกร้าสินค้าคือเทคโนโลยี Ajax ที่บริสุทธิ์ ฉันเพิ่งเรียนรู้ การตรวจสอบของแบบฟอร์มส่วนใหญ่เป็นแบบฟอร์มการเข้าสู่ระบบ ฉันไม่ได้เข้าสู่ระบบในโครงการนี้ แต่ฉันได้ทำแบบฟอร์มการเข้าสู่ระบบและฟังก์ชั่นการตรวจสอบก็เสร็จสิ้นเช่นกัน การใช้งานหลักคือปลั๊กอินการตรวจสอบการตรวจสอบของ jQuery ปลั๊กอินนี้ยังคงทรงพลังมาก คุณสามารถเพิ่มแบบฟอร์มการเข้าสู่ระบบโดยตรงไปยังโครงการและตั้งค่าการกระโดดที่สอดคล้องกัน การใช้งานหลักของ JSChart สำหรับการแสดงรายงานคือ JSChart เครื่องมือนี้มีประโยชน์มากและสามารถสร้างรหัสการตอบกลับ JS สิ่งที่เราต้องทำคือส่งคำขอ AJAX ไปยังแบ็กเอนด์ดึงข้อมูลจากแบ็กเอนด์ตามความต้องการที่แท้จริงและส่งผ่านไปยังส่วนหน้าเพื่อแสดงด้วยแผนภูมิ JSChart
ฉันจะแสดงรายการบล็อกโพสต์ในส่วนนี้ด้านล่าง:
ใช้เทคโนโลยี AJAX เพื่ออัปเดตปริมาณผลิตภัณฑ์บางส่วนและราคารวม jQuery-validate ปลั๊กอินการตรวจสอบเพื่อแสดงรายงานการขายผลิตภัณฑ์ในพื้นหลังโดยใช้เทคโนโลยี JSChart
นี่คือโครงการห้างสรรพสินค้าออนไลน์ที่เขียนไว้มากมาย ซอร์สโค้ดในช่องดาวน์โหลด CSDN ถูกซิงโครไนซ์กับบล็อกของฉัน หากคุณต้องการคุณสามารถดาวน์โหลดซอร์สโค้ดที่ฉันอัปโหลดใน CSDN (ฟรี ~ ทรัพยากรทั้งหมดของฉันฟรี) หากฉันต้องการปรับปรุงต่อไปในภายหลังฉันจะใส่ไว้ใน GitHub ของฉัน ทุกคนยินดีที่จะติดตาม GitHub ของฉัน (แม้ว่าจะเป็นค่าเฉลี่ย ~) โครงการดาวที่ฉันอัปโหลด ~ ต่อไปนี้เป็นที่อยู่ดาวน์โหลดเฉพาะ:
ดาวน์โหลดที่อยู่ (ซิงโครไนซ์กับเนื้อหาบล็อก)
ที่อยู่ดาวน์โหลด GitHub (หากมีการอัปเดตในภายหลังจะวางไว้ที่นี่)
ที่อยู่ดั้งเดิม: http://blog.csdn.net/eson_15/article/details/51479994#download
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น