วิธีเริ่มเรียนรู้ J2EE โดยเฉพาะ JPA [ปิด]


11

ฉันพยายามที่จะเริ่มต้นการเรียนรู้เป็นส่วนหนึ่งของJ2EE Javaแต่ฉันไม่รู้ว่าจะเริ่มจากตรงไหน ผม Familier ด้วยCore Javaและส่วนใหญ่ผมต้องการที่จะเรียนรู้JPAและพื้นฐานของและHibernate Spring Frameworkเหตุผลหลักสำหรับเรื่องนี้คือฉันกำลังทำงานในโครงการที่ใช้สิ่งเหล่านี้ทั้งหมด และโค้ดส่วนใหญ่นั้นพัฒนาโดยผู้อาวุโสบางคนและฉันต้องทำการแก้ไขบางอย่าง ดังนั้นโดยทั่วไปฉันต้องเข้าใจรหัสของพวกเขา

ใครสามารถให้แผนการทำงานแก่ฉันได้บ้างเช่นสิ่งที่ฉันต้องรู้ล่วงหน้าและฉันควรไปในลำดับใด เอกสารอ้างอิงใด ๆ เช่นลิงก์หนังสือหรือไม่


1
รุ่นพี่เหล่านี้มีเวลาที่จะแนะนำคุณกับสิ่งที่พวกเขาทำมาแล้วหรือยัง?

@ Thorbjørn Ravn Andersen: หากฉันสงสัยบางอย่างเขาจะอธิบายให้ฉัน แต่สิ่งที่เป็นรหัสมีขนาดใหญ่พอสมควร (~ 10,000 บรรทัด) ดังนั้นถ้าฉันต้องทำอะไรฉันต้องผ่านไฟล์ต้นฉบับและโค้ดหลายบรรทัดซึ่งฉันคิดว่าไม่สามารถอธิบายให้ฉันได้อย่างสมบูรณ์ โดยทั่วไปฉันไม่คุ้นเคยกับ JPA และ Spring Framework และโดยทั่วไปแล้ว J2EE ดังนั้นฉันจึงกำลังมองหาบางสิ่งที่จะช่วยให้ฉันเข้าใจว่าสิ่งทั้งหมดทำงานได้อย่างไรและพื้นฐานดังนั้นอย่างน้อยที่สุดฉันก็ไม่ต้องสงสัยอะไรโง่ ๆ
ภูฏาน

คำตอบ:


7

เมื่อใดก็ตามที่ฉันต้องการเรียนรู้กรอบ / ภาษาใหม่ฉันมักจะทำโปรเจคต์เล็ก ๆ ที่ใช้มัน สำหรับเว็บเฟรมเวิร์กฉันมี webapp ทั่วไปที่ฉันเขียนโดยใช้ มันง่ายและไม่ได้ทำอะไรมาก แต่มันมีคุณสมบัติเพียงพอที่ฉันต้องการเพื่อใช้ประโยชน์จากส่วนทั่วไปของเฟรมเวิร์ก (ฐานข้อมูล, งานพื้นหลัง, mvc หรืออะไรทำนองนั้น) ในความเป็นจริงเมื่อไม่นานมานี้ฉันรับภาระในการเรียนรู้ Spring / MVC + Hibernate ฉันไม่รู้ทุกอย่างแน่นอน แต่มันทำให้ฉันมีภูมิหลังที่เพียงพอเมื่อฉันไม่รู้อะไรฉันรู้ว่าจะถามคำถามอะไรและจะขอให้พวกเขารับข้อมูลเพิ่มเติมได้อย่างไร

สำหรับเว็บเฟรมเวิร์กฉันมักจะเริ่มด้วยตัวอย่าง "hello world" แบบง่าย ๆ ที่มีให้สำหรับเฟรมเวิร์กส่วนใหญ่ หากมีตัวอย่าง "สมุดเยี่ยมชม" (เช่นเพื่อแสดงการใช้ฐานข้อมูล) ฉันจะติดตามด้วย จากนั้นฉันเพิ่งเริ่มเพิ่มฟังก์ชั่นที่ฉันต้องการในแอปพลิเคชันการเรียนรู้ของฉันเริ่มต้นด้วยวิธีที่ง่ายที่สุด ความคิดที่ว่าฉันสามารถหาวิธีที่จะถามคำถามที่ถูกต้องสำหรับสิ่งที่เรียบง่าย หลังจากที่ฉันทำสิ่งที่เรียบง่ายฉันสามารถดูสิ่งที่ซับซ้อนมากขึ้นและด้วยข้อมูลที่ฉันได้เรียนรู้ไปแล้วฉันหวังว่าฉันจะสามารถตั้งคำถามที่เหมาะสมเพื่อถามพวกเขาได้

ฉันเพิ่งเริ่มวางโค้ดสำหรับโครงการเรียนรู้เช่นนี้บน sourceforgeหากคุณสนใจ

แก้ไข: ความคิดเห็นของ Donal ทำให้เราต้องการเพิ่ม ... ฉันไม่ได้ใส่ลิงค์ไว้ในตัวอย่างเพื่อให้คุณเรียนรู้จาก ค่อนข้างเป็นเพียงตัวอย่างของฉันใส่รหัสของฉันออกมี หากคุณต้องการเรียนรู้อย่างแท้จริงคุณต้องเขียนรหัสด้วยตัวเองไม่ใช่แค่อ่านของคนอื่น (ในความคิดของฉันอย่างน้อย)


+1: ฉันทำสิ่งเดียวกันมากยกเว้นว่าฉันแทบจะไม่เคยแบ่งปันผลลัพธ์ในบริเวณที่ฉันต้องเรียนรู้ด้วยการทำและไม่เพียงแค่คัดลอกและฉันคิดว่าคนอื่นเหมือนกัน (OTOH บางครั้งหนึ่งในการทดลองของฉันหนีเข้าไปในป่าและพัฒนาเป็นผลิตภัณฑ์จริง)
Donal Fellows

สุจริตฉันเริ่มต้นด้วยเหตุผลสามประการ: 1) เพื่อให้รหัสของฉันจะอยู่ที่ไหนสักแห่งนอกเหนือจากพื้นที่เก็บข้อมูล svn ท้องถิ่นที่ฉันมี 2) เพื่อที่เมื่อผู้คนขอตัวอย่างรหัสของฉันในเทคโนโลยีเฉพาะฉันสามารถเชื่อมโยงพวกเขา (ก่อนหน้านี้ฉันไม่มีรหัสดังกล่าวที่จะแสดงให้พวกเขา), 3) เมื่อผู้คนถามคำถามของฉันเกี่ยวกับวิธีการทำบางสิ่งบางอย่างและฉันทำไปแล้วฉันสามารถแสดงให้พวกเขาเข้าใจได้ง่ายขึ้น
RHSeeger

+1 นั่นเป็นความคิดที่ดีจริงๆ แต่นี่ไม่ได้ตอบคำถามของฉันอย่างเต็มที่ แม้แต่การทำเช่นนี้ฉันต้องเริ่มต้นที่ไหนสักแห่ง แต่ไม่รู้ว่าที่ไหน การสแกนแบบสุ่มใด ๆ ไม่ช่วยฉัน
ภูฏาน

1
เพิ่มคำอธิบายโดยย่อเกี่ยวกับวิธีที่ฉันไปเกี่ยวกับการเรียนรู้เกี่ยวกับกรอบเว็บโดยเฉพาะ เส้นทางที่ฉันไป น่าเสียดายที่ตอนนี้ฉันดีที่สุดแล้ว หวังว่าหากยังไม่พอคนอื่นสามารถให้คำตอบที่เหมาะสมกับสถานการณ์ของคุณ
RHSeeger

2

ฉันอยู่ในสถานการณ์ที่คล้ายคลึงกันมากเมื่อไม่นานมานี้ นี่คือสิ่งที่คร่าวๆฉันพบวิธีที่มีประโยชน์ที่สุดในการเรียนรู้พื้นฐานของเทคโนโลยีใหม่อย่างรวดเร็ว:

วิธีการทั่วไป:

  1. ค้นหาปัญหาที่แก้ไขได้ อ่านแหล่งข้อมูลต่าง ๆ เช่นหน้าแรกของโครงการบทความวิกิพีเดีย
  2. ค้นหาโครงการขนาดเล็กที่มีปัญหาดังกล่าว เช่นในกรณีของคุณ webapp ขนาดเล็กที่จัดการคอลเลกชัน DVD ของคุณด้วยความเป็นไปได้ที่จะให้พวกเขายืมให้เพื่อน
  3. เริ่มคิดเกี่ยวกับสิ่งที่กลไกที่คุณจะคาดหวังที่จะให้โดยเทคโนโลยี เช่นสำหรับการแก้ปัญหาการออม, กลไกที่จะระบุได้ว่าเป็นความสัมพันธ์หรือ1:nn:n
  4. ค้นหากลไกเหล่านี้ในเทคโนโลยีของคุณ : เช่นใน JPA ค้นหา@OneToManyคำอธิบายประกอบ บ่อยครั้งที่นี่เป็นที่ที่คุณทำงานด้วยตนเองผ่านคู่มือเริ่มต้นใช้งานหรือรหัสของนักพัฒนาอาวุโส
  5. การดำเนินการโครงการขนาดเล็กของคุณโดยใช้กลไกเหล่านี้ ในขณะที่ทำเช่นนั้นคุณจะค้นพบข้อ จำกัด และคุณสมบัติอื่น ๆ เช่นใน JPA N + 1 จะเลือกปัญหาหรือคุณสมบัติที่ช่วยให้คุณวาง & สร้างตารางใหม่สำหรับคลาส Java ของคุณโดยอัตโนมัติ
  6. (ถ้าคุณสามารถจ่ายได้เวลา): พยายามเข้าใจว่าคุณจะใช้กลไกอย่างไร การทำเช่นนั้นสามารถช่วยให้คุณเข้าใจว่าทำไมมีข้อ จำกัด บางประการและวิธีที่คุณสามารถแก้ไขได้

หมายเหตุหนึ่งเกี่ยวกับคู่มือเริ่มต้นใช้งาน: อย่าอ่านก่อนหน้าขั้นตอนที่ 4หากคุณยังทำอยู่สิ่งนี้จะกัดคุณหากคุณกำลังเรียนรู้กรอบการทำงานที่ทรงพลังมากเช่นสปริงพร้อมคุณสมบัติที่แปลกใหม่ ในชีวิตของคุณเครื่องมือของคุณมีพลังมากขึ้นและง่ายขึ้นถ้าคุณไม่เข้าใจจริงๆ


-1

ผมขอแนะนำให้หัวหน้า Servlets แรกและ JSP เป็นทรัพยากรที่ยอดเยี่ยมสำหรับการเรียนรู้เกี่ยวกับ Enterprise Java

หนังสือเล่มนี้ถูกเขียนขึ้นสำหรับนักพัฒนาที่สนใจในการผ่านการสอบเพื่อพัฒนา Web Component Developer (SCWCD) Oracle ได้ทำการซื้อกิจการของ Sun มาแล้วและการสอบนี้ถูกแทนที่ด้วย ข้อมูลเพิ่มเติมสามารถพบได้ที่นี่


JSPs ไม่ล้าสมัยหรือยัง พวกมันค่อนข้างไร้ประโยชน์สำหรับแอปพลิเคชัน "Web 2.0" ที่ใช้งาน AJAX อย่างหนัก
วินไคลน์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.