เต็มรูปแบบ javaee-app
แอปพลิเคชัน Java EE ที่สมบูรณ์พร้อม servlets, jpa ที่มีฟังก์ชั่นที่สำคัญ
แพลตฟอร์ม Workamerica เวอร์ชันก่อนหน้านี้
เยี่ยมชมเราได้ที่ www.workamerica.co
codebase นี้เป็นหนึ่งในแนวทางก่อนหน้าของเราในการพัฒนาแอปพลิเคชันเต็มรูปแบบ (MVP แปลก ๆ ) เมื่อตระหนักว่ามันกำลังนั่งอยู่รอบ ๆ การรวบรวมฝุ่นเราตัดสินใจที่จะเผยแพร่รหัสโดยหวังว่ามันอาจจะใช้กับใครบางคนที่นั่น
เทคโนโลยีบางอย่างที่ใช้นั้นค่อนข้างโบราณ (อย่างน้อยก็ในการดำเนินการ) ในขณะที่บางอย่างสามารถพบได้ในแอปพลิเคชันที่ทันสมัยในปัจจุบัน แอปพลิเคชันถูกสร้างขึ้นใน Java EE 7 โดยให้บริการเนื้อหาบนหน้าเซิร์ฟเวอร์ Java (JSPS) มันใช้ EclipSelink 2.0 เป็น ORM ที่สื่อสารกับฐานข้อมูล MySQL ส่วนหน้าถูกสร้างขึ้นบน bootstrap 3 ด้วยหัวโรยของจาวาสคริปต์บริสุทธิ์ (และบางครั้งมีหมัด) และ jquery ที่นี่และที่นั่น
แอปพลิเคชันเป็นฐานข้อมูลของผู้สมัครในการซื้อขายที่มีทักษะ (พร้อมโปรไฟล์และการเข้าสู่ระบบ) ที่สามารถค้นหาได้ตามเกณฑ์เฉพาะเช่นข้อมูลรับรองการค้าหรือสถานที่ ช่วยให้ผู้สมัครสามารถเข้าสู่ระบบและกรอกโปรไฟล์ของพวกเขาและอนุญาตให้นายจ้างเข้าสู่ระบบค้นหาและกรองผู้สมัครให้จ้าง มันมีฟังก์ชั่นทั้งหมดที่จะทำทั้งหมดข้างต้นบวกอีกมาก
ในอีกไม่กี่เดือนข้างหน้าฉันจะรวบรวมตัวอย่างที่นี่เกี่ยวกับสิ่งที่ฉันคิดว่าอาจเป็นรหัสที่มีประโยชน์ใน codebase นี้ ซึ่งอาจรวมถึงการโทร API เกี่ยวกับบริการยอดนิยมเช่น Twilio หรือ SendGrid หรือสถานการณ์ที่ซับซ้อนมากขึ้นเช่นการใช้การค้นหาตามรัศมีของผู้คนที่ใช้สูตร Haversine เนื่องจากแกนหลักของผลิตภัณฑ์คือการแลกเปลี่ยนข้อมูลและการใช้งานผ่าน Pure Servlets เทคโนโลยีเกือบมรดก (IMO) เกร็ดความรู้ที่มีประโยชน์ส่วนใหญ่จะพบได้ในชั้นเรียนผู้ช่วยที่ฉันเขียน
นี่คือ codebase "ตาย" ดังนั้นข้อบกพร่องที่มีอยู่/รหัสที่ไม่ชัดเจนหรือล้าสมัยจะไม่ได้รับการแก้ไข แต่คำถามสามารถโพสต์ด้วยฉลากช่วยเหลือ มันถูกอัปโหลดที่นี่เกือบจะ "ตามที่เป็นอยู่", ถอดฟังก์ชั่นที่เป็นกรรมสิทธิ์และกุญแจ/ความลับ
อย่าลังเลที่จะขุดและใช้สิ่งที่คุณอาจพบหรือติดต่อฉันเพื่อชี้แจงสิ่งต่าง ๆ ใน codebase
ไชโย
ตัวอย่างที่มีประโยชน์:
APIs ภายนอก:
- เพิ่มสมาชิกใหม่ลงในรายการโดยใช้ MailChimp API v3.0
- ลงทะเบียนผู้ใช้โดยใช้การรับรองความถูกต้องของ Facebook
- ส่งอีเมลผ่าน SendGrid
- เพิ่มผู้ติดต่อ SendGrid ใหม่
- ตั้งค่า webhook สำหรับกิจกรรมการจัดส่ง SendGrid ผ่านทางโพสต์
- ใช้ geocode API ของ Google
- ส่งข้อความโดยใช้ห้องสมุด Twilio Helper อย่างเป็นทางการ v3.4.5
- ซื้อหมายเลข Twilio โดยใช้ห้องสมุด Twilio Helper อย่างเป็นทางการ v3.4.5
- ตั้งค่า webhook สำหรับกิจกรรมการจัดส่งแบบ twilio ผ่านโพสต์
- ตั้งค่า webhook เพื่อรับข้อความ twilio ผ่านโพสต์
- อัปโหลดไฟล์ไปยังถัง AWS S3 โดยใช้ AWS SDK v1.9.6
JPA ที่เกี่ยวข้อง:
- รับ JPA EntityManagerFactory พร้อมการกำหนดค่าที่ได้จากตัวแปรสภาพแวดล้อม
- ดึงไฟล์จาก MySQL ผ่านเอนทิตี JPA และใช้ Apache Tika เพื่อกำหนดประเภทไฟล์
- อัปโหลดไฟล์ผ่านโพสต์ใน servlet และคงอยู่กับ MySQL ในเอนทิตี JPA
- ฟังก์ชั่น JPA ต่างๆ
Java EE ที่เกี่ยวข้อง:
- อัปโหลดไฟล์ผ่านโพสต์ใน servlet
- ใช้ 'เข้าสู่ระบบ' ผ่านทางเซิร์ฟเล็ต
- ใช้ 'ออกจากระบบ' ผ่าน servlet หากใช้เซสชัน
- ฟังก์ชั่น Java EE ต่างๆ
- ตัวอย่างของไฟล์ JSP
- การนำเข้าไฟล์โดยใช้ JSTL (ค้นหา C: นำเข้า)
- ใช้ JSTL สำหรับลูป (มองหา C: foreach)
- ใช้ jstl if/else | คำสั่งสวิตช์ (ค้นหา c: เลือก)
- ใช้คำสั่ง JSTL (ค้นหา C: IF)
- การใช้ภาษานิพจน์ (EL) ใน JSP (ค้นหาแท็ก $ {})
Utilities/Misc/External Libraries
- คำนวณระยะห่างระหว่างคู่ของการประสานละติจูด/ลองจิจูด (ใช้สูตร Haversine)
- ใช้ Apache Tika เพื่อกำหนดประเภทไฟล์ของหยดจากฐานข้อมูล MySQL
- แปลงการประทับเวลา UNIX (เป็น MS) เป็นวัตถุวันที่
- สร้างสตริงแบบสุ่มที่มีความยาว n
- ใช้ตัวอักษรตัวแรกของสตริง
- รับการตอบกลับของคำขอรับเป็นสตริง
- รับ IP ไคลเอนต์จากคำขอ servlet
- อ่านไฟล์. xlsx โดยใช้ Apache Poi
- กินโพสต์หรือรับคำขอโดยใช้เสื้อ