คำถามติดแท็ก jpa

Java Persistence API (JPA) เป็นข้อกำหนดคุณสมบัติ Java สำหรับการเข้าถึงการคงอยู่และการจัดการข้อมูลระหว่างวัตถุ / คลาส Java และฐานข้อมูลเชิงสัมพันธ์ เป็นส่วนหนึ่งของข้อกำหนด EJB 3.0 และเป็นแนวทางมาตรฐานอุตสาหกรรมสำหรับ Object to Relational Mapping (ORM)

12
วิธีการจัดเก็บวันที่และเวลา Java Date เป็น Mysql ด้วย JPA
มีเนื้อหาใดบ้างที่สามารถบอกฉันได้ว่าฉันจะจัดเก็บ Java Date ถึง Mysql datetime ได้อย่างไร ... เมื่อฉันพยายามทำเช่นนั้น ... จะมีการจัดเก็บเฉพาะวันที่และเวลายังคงเป็น 00:00:00 ในร้านค้าวันที่ Mysql เช่นนี้ ... 2009-09-22 00:00:00 ฉันต้องการไม่เพียง แต่วันที่ แต่ยังรวมถึงเวลา ... 2009-09-22 08:08:11 ฉันใช้ JPA (Hibernate) กับคลาส Spring mydomain ใช้ java.util.Date แต่ฉันได้สร้างตารางโดยใช้แบบสอบถามที่เขียนด้วยลายมือ ... นี่คือคำสั่งสร้างของฉัน CREATE TABLE ContactUs (id BIGINT auto_increment, userName VARCHAR(30), email VARCHAR(50), subject VARCHAR(100), message VARCHAR(1024), messageType …
104 java  mysql  datetime  jpa 

4
ประเภทการดึงข้อมูลเริ่มต้นสำหรับหนึ่งต่อหนึ่งหลายต่อหนึ่งและหนึ่งต่อหลายในไฮเบอร์เนต
ประเภทการดึงข้อมูลเริ่มต้นในการแมปไฮเบอร์เนตคืออะไร สิ่งที่ฉันต้องรู้หลังจากสำรวจคือ: อย่างใดอย่างหนึ่งต่อหนึ่งมันเป็นความกระตือรือร้น อย่างใดอย่างหนึ่งต่อหลายคนมันเป็นขี้เกียจ แต่หลังจากทดสอบใน Eclipse แล้วก็มีความกระตือรือร้นอย่างมาก ขึ้นอยู่กับว่าฉันใช้ JPA หรือ Hibernate หรือไม่
104 java  hibernate  jpa 

2
การจัดเก็บแผนที่ <String, String> โดยใช้ JPA
ฉันสงสัยว่าเป็นไปได้หรือไม่โดยใช้คำอธิบายประกอบเพื่อคงattributesแผนที่ในชั้นเรียนต่อไปนี้โดยใช้ JPA2 public class Example { long id; // .... Map&lt;String, String&gt; attributes = new HashMap&lt;String, String&gt;(); // .... } เนื่องจากเรามีฐานข้อมูลการผลิตที่มีอยู่แล้วดังนั้นค่าของattributes สามารถจับคู่กับตารางที่มีอยู่ต่อไปนี้: create table example_attributes { example_id bigint, name varchar(100), value varchar(100));
103 java  jpa  orm  jpa-2.0 

5
เมื่อใดควรใช้ EntityManager.find () เทียบกับ EntityManager.getReference () กับ JPA
ฉันเจอสถานการณ์ (ซึ่งฉันคิดว่ามันแปลก แต่อาจจะค่อนข้างปกติ) ที่ฉันใช้ EntityManager.getReference (LObj.getClass (), LObj.getId ()) เพื่อรับเอนทิตีฐานข้อมูลแล้วส่งคืนวัตถุไปที่ คงอยู่ในตารางอื่น โดยพื้นฐานแล้วการไหลเป็นเช่นนี้: คลาส TFacade { createT (FObj, AObj) { T TObj = ใหม่ T (); TObj.setF (FObj); TObj.setA (AObj); ... EntityManager.persist (TObj); ... L LObj = A.getL (); FObj.setL (LObj); FFacade.editF (FObj); } } @ TransactionAttributeType.REQUIRES_NEW class FFacade { editF …


4
วิธีเลือกกลยุทธ์การสร้างรหัสเมื่อใช้ JPA และ Hibernate
ฉันกำลังอ่านหัวข้อการสร้างรหัสของคู่มืออ้างอิง Hibernate และ "java persistence with Hibernate" มีตัวเลือกมากมายสำหรับ Hibernate และ JPA รวมกัน ฉันกำลังมองหาเอกสารเพิ่มเติมเกี่ยวกับวิธีเลือกกลยุทธ์การสร้างรหัสเฉพาะ ฉันยังมองหาจุดให้ทิป ตัวอย่างเช่นกลยุทธ์ไฮโลคาดว่าจะลดการทะเลาะวิวาท ฉันสมมติว่าต้องมีการแลกเปลี่ยนที่เกี่ยวข้องกับตัวเลือกนี้ ฉันต้องการได้รับการศึกษาเกี่ยวกับการแลกเปลี่ยน มีวรรณกรรมหรือไม่

2
JPA: วิธีการมีความสัมพันธ์แบบหนึ่งต่อกลุ่มของเอนทิตีประเภทเดียวกัน
มีคลาสเอนทิตี "A" คลาส A อาจมีลูกประเภทเดียวกัน "A" นอกจากนี้ "A" ควรถือเป็นผู้ปกครองหากเป็นเด็ก เป็นไปได้หรือไม่ ถ้าเป็นเช่นนั้นฉันจะแมปความสัมพันธ์ในคลาสเอนทิตีได้อย่างไร ["A" มีคอลัมน์รหัส]
102 java  orm  jpa  hierarchy  one-to-many 

11
การระบุดัชนี (คีย์ที่ไม่ซ้ำกัน) โดยใช้ JPA
คุณกำหนดเขตข้อมูลได้อย่างไรเช่นemailการมีดัชนีโดยใช้คำอธิบายประกอบ JPA เราต้องการคีย์ที่ไม่ซ้ำกันemailเนื่องจากมีข้อความค้นหาหลายล้านรายการในฟิลด์นี้ต่อวันและค่อนข้างช้าหากไม่มีคีย์ @Entity @Table(name="person", uniqueConstraints=@UniqueConstraint(columnNames={"code", "uid"})) public class Person { // Unique on code and uid public String code; public String uid; public String username; public String name; public String email; } ฉันเคยเห็นคำอธิบายประกอบเฉพาะที่จำศีล แต่ฉันพยายามหลีกเลี่ยงวิธีแก้ปัญหาเฉพาะของผู้ขายเนื่องจากเรายังคงตัดสินใจระหว่างไฮเบอร์เนตกับนิวเคลียสของดาต้า อัพเดท: ใน JPA 2.1 คุณสามารถทำได้ ดู: คำอธิบายประกอบ @Index ไม่ได้รับอนุญาตสำหรับตำแหน่งนี้
102 java  hibernate  orm  jpa  datanucleus 

4
Spring Data JPA ค้นหาโดยคุณสมบัติวัตถุฝังตัว
ฉันต้องการเขียนลายเซ็นเมธอดอินเทอร์เฟซ Spring Data JPA ที่จะช่วยให้ฉันค้นหาเอนทิตีที่มีคุณสมบัติของอ็อบเจ็กต์ฝังตัวในเอนทิตีนั้น ไม่มีใครรู้ว่าเป็นไปได้หรือไม่และถ้าเป็นเช่นนั้นได้อย่างไร นี่คือรหัสของฉัน: @Entity @Table(name = "BOOK_UPDATE_QUEUE", indexes = { uniqueConstraints = @UniqueConstraint(columnNames = { "bookId", "region" }, name = "UK01_BOOK_UPDATE_QUEUE")) public class QueuedBook implements Serializable { @Embedded @NotNull private BookId bookId; ... } @Embeddable public class BookId implements Serializable { @NotNull @Size(min=1, max=40) private String …

7
ไฮเบอร์เนต: สร้าง / อัปเดตตารางฐานข้อมูลโดยอัตโนมัติตามคลาสเอนทิตี
ฉันมีคลาสเอนทิตีต่อไปนี้ (ใน Groovy): import javax.persistence.Entity import javax.persistence.Id import javax.persistence.GeneratedValue import javax.persistence.GenerationType @Entity public class ServerNode { @Id @GeneratedValue(strategy = GenerationType.AUTO) Long id String firstName String lastName } และ persistence.xml ของฉัน: &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0"&gt; &lt;persistence-unit name="NewPersistenceUnit"&gt; &lt;provider&gt;org.hibernate.ejb.HibernatePersistence&lt;/provider&gt; &lt;properties&gt; &lt;property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/Icarus"/&gt; &lt;property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/&gt; &lt;property name="hibernate.connection.username" value="root"/&gt; &lt;property …
101 java  mysql  hibernate  jpa  groovy 

7
JPA: การลบแบบหลายทิศทางแบบหลายทิศทางและแบบเรียงซ้อน
สมมติว่าฉันมีความสัมพันธ์แบบทิศทางเดียว @ManyToOneดังต่อไปนี้: @Entity public class Parent implements Serializable { @Id @GeneratedValue private long id; } @Entity public class Child implements Serializable { @Id @GeneratedValue private long id; @ManyToOne @JoinColumn private Parent parent; } ถ้าฉันมีพ่อแม่ P และลูก C 1 ... C nอ้างอิงกลับไปที่ P มีวิธีที่สะอาดและสวยงามใน JPA เพื่อเอาเด็กออกโดยอัตโนมัติ C 1 ... C nเมื่อ …

2
@OneToMany List <> vs Set <> ความแตกต่าง
มีความแตกต่างหรือไม่ถ้าฉันใช้ @OneToMany public Set&lt;Rating&gt; ratings; หรือถ้าฉันใช้ @OneToMany public List&lt;Rating&gt; ratings; ทั้งคู่ทำงานได้ดีฉันรู้ความแตกต่างระหว่างรายการและชุด แต่ฉันไม่รู้ว่าสิ่งนี้สร้างความแตกต่างหรือไม่ว่าไฮเบอร์เนต (หรือค่อนข้าง JPA 2.0) จัดการกับมันอย่างไร
98 java  jpa 

7
จะสร้าง Metamodel เอนทิตี JPA ได้อย่างไร
ในจิตวิญญาณของประเภทความปลอดภัยที่เกี่ยวข้องกับCriteriaQuery JPA 2.0 ยังมี API เพื่อรองรับการแสดงMetamodelของเอนทิตี มีใครทราบถึงการใช้งาน API นี้อย่างสมบูรณ์ (เพื่อสร้าง Metamodel ซึ่งต่างจากการสร้างคลาส metamodel ด้วยตนเอง) จะดีมากถ้ามีคนรู้ขั้นตอนในการตั้งค่านี้ใน Eclipse (ฉันคิดว่ามันง่ายเหมือนการตั้งค่าตัวประมวลผลคำอธิบายประกอบ แต่คุณไม่มีทางรู้) แก้ไข: เพียงแค่สะดุดHibernate JPA 2 Metamodel ปั่นไฟ แต่ปัญหายังคงอยู่เนื่องจากฉันไม่พบลิงค์ดาวน์โหลดสำหรับ jar แก้ไข 2: ในขณะที่ฉันถามคำถามนี้ แต่ฉันคิดว่าฉันจะกลับมาและเพิ่มลิงก์ไปยังโครงการHibernate JPA Model Generator บน SourceForge

6
ไม่สามารถใช้การสร้างคีย์คอลัมน์เอกลักษณ์กับ <union-subclass> (TABLE_PER_CLASS)
com.something.SuperClass: @Entity @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) public abstract class SuperClass implements Serializable { private static final long serialVersionUID = -695503064509648117L; long confirmationCode; @Id @GeneratedValue(strategy = GenerationType.AUTO) // Causes exception!!! public long getConfirmationCode() { return confirmationCode; } public void setConfirmationCode(long confirmationCode) { this.confirmationCode = confirmationCode; } } com.something.SubClass: @Entity public abstract class …

18
วิธีการเรียกเก็บโพรซีเดอร์จาก Java และ JPA
ฉันกำลังเขียนเว็บแอปพลิเคชันง่ายๆเพื่อเรียกขั้นตอนการจัดเก็บและดึงข้อมูลบางอย่าง มันเป็นแอปพลิเคชั่นที่ง่ายมากซึ่งโต้ตอบกับฐานข้อมูลของลูกค้า เราส่งรหัสพนักงานและรหัส บริษัท และขั้นตอนที่จัดเก็บจะส่งกลับรายละเอียดพนักงาน เว็บแอปพลิเคชันไม่สามารถอัปเดต / ลบข้อมูลและกำลังใช้ SQL Server ฉันกำลังปรับใช้เว็บแอปพลิเคชันของฉันใน Jboss AS ฉันควรใช้ JPA เพื่อเข้าถึงโพรซีเดอร์ที่เก็บไว้หรือCallableStatement. ข้อได้เปรียบของการใช้ JPA ในกรณีนี้ นอกจากนี้คำสั่ง sql จะเรียกโพรซีเดอร์ที่เก็บไว้นี้คืออะไร ฉันไม่เคยใช้ขั้นตอนการจัดเก็บมาก่อนและฉันกำลังดิ้นรนกับขั้นตอนนี้ Google ไม่ได้ให้ความช่วยเหลือมากนัก นี่คือขั้นตอนการจัดเก็บ: CREATE procedure getEmployeeDetails (@employeeId int, @companyId int) as begin select firstName, lastName, gender, address from employee et where et.employeeId = @employeeId and et.companyId = …

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