Java 获取JPA中的单列值
我想从JPA中的特定列中获取所有值,并将所有值存储到一个列表中。目前,我正在使用以下方法,但我正在以其他格式获取记录。有人能帮我吗Java 获取JPA中的单列值,java,mysql,hibernate,jpa,Java,Mysql,Hibernate,Jpa,我想从JPA中的特定列中获取所有值,并将所有值存储到一个列表中。目前,我正在使用以下方法,但我正在以其他格式获取记录。有人能帮我吗 Query q1 = factory.createNativeQuery("select * from booking_attendee where booking_id="+id); List<String> em1=q1.getResultList(); return em1; query otput em=[[Ljava.lang.Object;@
Query q1 = factory.createNativeQuery("select * from booking_attendee where booking_id="+id);
List<String> em1=q1.getResultList();
return em1;
query otput
em=[[Ljava.lang.Object;@68606667, [Ljava.lang.Object;@2cd7f99a, [Ljava.lang.Object;@137a5a5, [Ljava.lang.Object;@a45cc1c, [Ljava.lang.Object;@61fdc06d, [Ljava.lang.Object;@72f5eee1, [Ljava.lang.Object;@4e536797]
Query q1=factory.createNativeQuery(“从预订参与者中选择*,其中预订id=“+id”);
List em1=q1.getResultList();
返回em1;
查询otput
em=[[Ljava.lang.Object;@68606667[Ljava.lang.Object;@2cd7f99a[Ljava.lang.Object;@137A5A55[Ljava.lang.Object;@a45cc1c[Ljava.lang.Object;@61fdc06d[Ljava.lang.Object;@72F5EE1[Ljava.lang.Object;@4e536797]
如果要为此创建本机查询,更多的是关于如何在SQL中解决此问题。您不会说选择*
,这意味着所有列。您必须说选择您的列名称
以仅选择特定列
Query q1 = factory.createNativeQuery("SELECT your_column FROM booking_attendee");
List<String> em1 = q1.getResultList();
本机查询提供了使用原始SQL的可能性。这样,一些特定于您的数据库的功能可以与此一起使用。但是,如果您没有非常特定的SQL代码,您还应该查看JPQL,JPA的特定查询语言,以及JPA Criteria API,这些API在您想要引用时提供了优势执行您的代码,在编译时显示错误,并使查询的动态创建更容易。您要从
booking\u attendee
表中选择哪一列?
Query q1 = factory.createNativeQuery("SELECT your_column FROM booking_attendee b WHERE b.booking_id = ?");
q1.setParameter(1, id);
List<String> em1 = q1.getResultList();