在EJB3(JPA)和Hibernate中获取@Id注解的字段,可以通过以下步骤来实现:
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
// 其他字段和getter、setter方法
}
import java.lang.reflect.Field;
import javax.persistence.Id;
public static String getIdFieldName(Class<?> entityClass) {
Field[] fields = entityClass.getDeclaredFields();
for (Field field : fields) {
if (field.isAnnotationPresent(Id.class)) {
return field.getName();
}
}
return null;
}
String idFieldName = getIdFieldName(User.class);
System.out.println("主键字段名称:" + idFieldName);
这样,你就可以在EJB3(JPA)和Hibernate中获取@Id注解的字段了。
推荐的腾讯云相关产品:
推荐的腾讯云相关产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云