标签: entity

从现有数据库生成JPA 2实体

如何从现有数据库生成符合JPA2的@Entity?

我发现了这个:问题

仍然不清楚JBoss是否会生成兼容的JPA2,而且我想知道是否有独立于供应商的方式来做到这一点.

java persistence entity code-generation jpa-2.0

33
推荐指数
5
解决办法
9万
查看次数

实体等于(),hashCode()和toString().如何正确实施它们?

我执行equals(),hashCode()toString()通过在Bean所有可用字段我的实体.

当我尝试比较相等或者打印obj状态时,我在前端得到了一些Lazy init Exception.那是因为实体中的某些列表可以延迟初始化.

我想知道实现equals()toString()实体对象的正确方法是什么.

java orm entity hibernate

32
推荐指数
3
解决办法
3万
查看次数

实体框架4.1 InverseProperty属性和ForeignKey

我将使用外键在Employee和Team实体之间创建两个引用.所以我定义了两个实体如下

public class Employee
{
    public int EmployeeId { get; set; }
    public string Name { get; set; }

    [ForeignKey("FirstTeam")]
    public int FirstTeamId { get; set; }

    [InverseProperty("FirstEmployees")]
    public virtual Team FirstTeam { get; set; }

    [ForeignKey("SecondTeam")]
    public int SecondTeamId { get; set; }

    [InverseProperty("SecondEmployees")]
    public virtual Team SecondTeam { get; set; }
}

public class Team
{
    public int Id { get; set; }
    public string TeamName { get; set; }

    [InverseProperty("FirstTeam")]
    public virtual ICollection<Employee> FirstEmployees { get; set; …
Run Code Online (Sandbox Code Playgroud)

c# mapping entity cascading-deletes entity-framework-4.1

31
推荐指数
1
解决办法
2万
查看次数

XML解析器错误:未定义实体

我已经在这个问题上搜索了stackoverflow,并找到了一些主题,但我觉得在这方面我没有真正的答案.

我有一个用户提交的表单,字段的值存储在XML文件中.XML设置为使用UTF-8编码.

用户将不时地从某处复制/粘贴文本,当我得到"实体未定义错误"时.

我意识到XML只支持少数几个实体,除此之外的任何东西都无法识别 - 因此解析器错误.

从我收集的内容中,我看到了一些选项:

  1. 我可以找到并替换所有&nbsp;并将它们与&#32;实际空间交换出来.
  2. 我可以将代码放在CDATA部分中.
  3. 我可以在XML文件中包含这些实体.

我正在对XML文件做的是,用户可以将内容输入到表单中,将其存储在XML文件中,然后该内容在Web页面上显示为XHTML(使用SimpleXML解析).

在我不了解的三个选项或任何其他选项中,处理这些实体的最佳方法是什么?

谢谢,瑞恩

UPDATE

我要感谢大家的好评.我确实确定了导致我的实体错误的原因.所有的建议让我更深入地研究它!

一些文本框中有普通的旧文本框,但我的textareas使用TinyMCE进行了增强.事实证明,在仔细观察的同时,PHP警告总是引用来自TinyMCE增强型textareas的数据.后来我注意到在PC上所有角色都被取出了(因为它无法读取它们),但是在MAC上你可以看到引用该角色的unicode号的小方框.它首先出现在MAC上的正方形中的原因是因为我使用utf8_encode来编码不是UTF的数据以防止其他解析错误(这在某种程度上也与TinyMCE有关).

所有这些的解决方案非常简单:

entity_encoding : "utf-8"在tinyMCE.init中添加了这一行.现在,所有角色都以他们应该的方式出现.

我想我唯一不理解的是为什么当放置在文本框中时字符仍然显示,因为没有任何东西将它们转换为UTF,但是使用TinyMCE这是一个问题.

php xml entity tinymce simplexml

30
推荐指数
3
解决办法
8万
查看次数

Java实体 - 为什么我需要一个空的构造函数?

这可能听起来很愚蠢,但为什么我需要在我的@Entitys中定义一个空构造函数?

我看到的每个教程都说:每个实体都需要一个空的构造函数.

但Java总是给你一个默认的不可见的空构造函数(如果你不重新定义一个).

谢谢.

编辑

我认为存在语义问题.我对"需要"所理解的是写作.

含义:始终在实体中编写一个空构造函数.

例:

@Entity
public class MyEntity implements Serializable {

   @Id
   private String str;

   public MyEntity(){}

   //here getter and setter
}
Run Code Online (Sandbox Code Playgroud)

但是当你不重新定义它时,Java总是给你这个空的构造函数(用参数写另一个).

在这种情况下,编写这个空构造函数似乎没用.

java entity jpa

30
推荐指数
4
解决办法
6万
查看次数

如何使Entity Framework缓存一些对象

我正在使用实体框架.

在我的数据库中存储了人员和他们的国家.当我加载一个人物时,我不知道每个人的起源是什么.有没有办法缓存国家/地区列表,以便不会有不必要的请求.

.net entity entity-framework

29
推荐指数
2
解决办法
3万
查看次数

如何在运行时检索JPA中的实体的映射表名称?

是否可以确定实体的本机表名称?

如果存在Table注释,则很容易:

entityClass.getAnnotation(Table.class).name()
Run Code Online (Sandbox Code Playgroud)

但是如果没有Table注释呢?

Hibernate通过Configuration类提供此信息:

configuration.getClassMapping(entityClass.getSimpleName()).getTable().getName()
Run Code Online (Sandbox Code Playgroud)

JPA中有类似的东西吗?

java entity jpa

29
推荐指数
2
解决办法
3万
查看次数

Symfony2:获取持久化对象的id

我有两个实体:用户和人.

在实体用户中,我需要关联人员的id:user_id.

当我创建一个新用户时,我必须首先创建一个人,然后创建用户.在用户中,我必须输入相应人员的id,为此我需要获取持久对象人员的id,这是一个自动增量.

是否有可能获得对象的id后:

$em->persist($person);
$em->flush();
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做?

另一种方法是在表Person中搜索最大的id并取这个,但我认为应该有一个更好更容易的方法来获取持久化对象的id.

以php为例,当我执行时

$articleID = $_DB->queryRaw((....);
Run Code Online (Sandbox Code Playgroud)

我得到了那样的id.

database persistence entity symfony

29
推荐指数
1
解决办法
3万
查看次数

企业Java实体应该是愚蠢的吗?

在我们的遗留Java EE应用程序中,有许多值对象(VO)类,它们通常只包含getter和setter,也许equals()hashCode().这些(通常)是要在持久性存储中保存的实体.(为了记录,我们的应用程序没有EJB - 尽管未来可能会发生变化 - 我们使用Hibernate来持久保存我们的实体.)操作VO中数据的所有业务逻辑都在不同的类中(不是EJB,只是POJO) ).我的OO心态讨厌这个,因为我确实认为给定类的操作应该驻留在同一个类中.所以我强烈要求重构将逻辑转移到相关的VO中.

我刚刚与一位在Java EE方面比我更有经验的同事进行了讨论,并且他证实了愚蠢的实体至少曾经是推荐的方式.不过,他最近也阅读了有关这一立场有效性的意见.

我知道有些问题至少限制了实体类中的内容:

  • 它不应该直接依赖于数据层(例如,查询代码应该进入单独的DAO)
  • 如果它直接暴露于更高层或客户端(例如通过SOAP),则可能需要限制其接口

有没有更合理的理由将逻辑移入我的实体?还是要考虑其他任何问题?

java oop entity java-ee

28
推荐指数
2
解决办法
4926
查看次数

如何使用JPA获取最后一个持久化实体的Id

我正在寻找一种智能且易于阅读的方式来获取持久化实体的id JPA.id是一个Integer.

人们可以想到以下解决方案:

  1. 不使用GeneratedValue策略.这需要在持久化之前寻找一个免费的id,然后将它放入要保留的实体中:繁琐,但有效.
  2. GeneratedValue策略.持久性提供程序将负责id生成.这看起来更聪明,但如何获得身份证?

请参阅下面的解决方案2

MyEntity en = new MyEntity();
en.setName("My name");
em.persist(en);
System.out.println(en.getId());
Run Code Online (Sandbox Code Playgroud)

这打印出一个空id!

有什么建议?我正在使用MySql,EclipseLink,但需要一个可移植的解决方案.

java entity jpa

27
推荐指数
1
解决办法
3万
查看次数