草庐IT

eclipseLink

全部标签

mysql - 无法在 eclipse 中创建 jpa 表

我在eclipse中有一个工作项目,它创建了一个从实体到mysql数据库的JPA表(仍在学习)。不幸的是,它在错误的数据库中创建了表,因为我希望有“测试”和“生产”数据库。它以某种方式获得了“生产”数据库的详细信息,甚至看起来所选的数据库连接是用于测试的。我对项目做了一些改动,让它连接到正确的连接对象(测试)。我可以pingeclipse中的数据库(两个数据库)并在数据源资源管理器中查看数据库。但是现在我无法通过右键单击它并选择“JPA‘工具’>‘从实体生成表’来为项目创建表。创建开始和结束都没有错误,就像一切正常一样,但我在任何一个数据库中都看不到任何表。(在Eclipse数据库资源

mysql - 使用Java Configuration配置eclipselink + Spring MVC + MySql(无XML配置)

我正在尝试将eclipselinkJPA集成到我的SpringWeb应用程序中。是否有任何好的指南哦,如何仅使用基于Java的配置在SpringMVC中为MySql数据库配置eclipseLink?。没有dispatcher-servlet.xml。我熟悉基于Java的Spring配置。(使用@Configuration、@EnableWebMvc、@ComponentScan、@EnableTransactionManagement等)。但不熟悉SpringMVC中基于eclipseLinkjava的配置。以下是pom.xml4.0.0roster3roster3war1.0-SNA

java - 带有 JPA 的 MySQL 中的 Precision Java Float (EclipseLink)

我在通过jpa(EclipseLink)在mysql中存储浮点值时遇到精度问题。在我的代码中,我用注释了该字段@Column(precision=15,scale=7)privatefloatx;但是当我存储像322,249878这样的值时,数据库返回322.25。那里发生了什么:)? 最佳答案 precision和scale设置仅适用于精确数字类型(即Java中的BigDecimal和decimalMySQL)。浮点类型(float和double)本质上是近似值,因此这些设置对它们没有意义。另请注意,如果您将此字段的类型更改为Bi

java - 用于一对多关系的 JPQL

我正在尝试为一对多关系创建一个JPQL,即用户和设备,因为1个用户可以拥有一对多设备。如果设备归用户所有且设备名称正确,我想找到设备的整个对象。如果它是一个SQL查询,那么我可以只对设备进行如下查询:select*fromDEVICEwhereUSER_ID=2andDEVICENAME="mypc";其中USER_ID是DEVICE表中的外键。但是我怎样才能对用户和设备表进行JPQL查询呢?以下是用户和设备类的一些信息@EntitypublicclassUser{@Id@GeneratedValue(strategy=GenerationType.TABLE)publicintid;

java - JPA 持久性.xml

有没有办法让persistence.xml上的数据动态化?我正在考虑在我的属性文件中添加一个数据库名称属性,然后创建表(如果不存在的话)。这可能吗?我正在使用EclipseLink(JPA2.0)和MySQL。 最佳答案 如果您在独立环境中使用JPA,则可以将其他属性传递给Persistence.createEntityManagerFactory()。在应用服务器环境中,您可以使用从JNDI获得的数据源。 关于java-JPA持久性.xml,我们在StackOverflow上找到一个类

JPA:如何使字段自动递增

我使用Eclipselink作为我的JPA提供程序,我如何使字段自动递增? 最佳答案 Ijustwantanauto-incrementfieldfor1entity.是的,我明白了,这就是您在问题中所写的内容。但它可以有多种解释方式,重复同样的事情而不加澄清也无济于事:)SodoesPascal'swayworkorIhavetodowhatBytecodesuggest,queryselect(max)counter+1fromMyEntity,togetthenextvalue,thensetittothedesignfiel

mysql - com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException : Unknown column 'CONTACTID' in 'field list'

我使用EclipseLink从MySQL生成我的所有对象,我有一个名为CONTACT_ID的字段。当我尝试em.persist(contact)时,我收到一条错误消息“Unknowncolumn'CONTACTID'”。我搜索了我的项目和数据库,没有任何名为CONTACTID的列。JPA以某种方式删除了此列名称中的“_”。我确定这真的很愚蠢,我只是找不到原因。这是我的数据库设计:用户.java:@EmbeddedIdprivateUserPKid;privateintscore;//bi-directionalmany-to-oneassociationtoCmnContact@Man

java - Mysql maven jpa框架

是否有使用mysql的项目的框架,一些以RESOURCE_LOCAL作为连接类型的eclipse/top链接?最好使用maven。我正在搜索它几个小时,但即使是最简单的例子也无法运行。因此,如果您已准备好并运行它,请发布:-)。即使像这两个类这样简单的东西。@EntitypublicclassMessageimplementsSerializable{publicMessage(){}publicMessage(Strings){this.s=s;}@IdStrings;publicStringgetS(){returns;}}publicclassApp{staticprivateE

java - EclipseLink 批量插入非常非常慢

我正在尝试使用EclipseLink优化我的JPA实现。我已经添加了批处理操作。但它仍然需要大量时间来进行50000次插入。使用带JDBC的原始SQL执行完全相同的插入所花费的时间是其10倍以上。为了确保批处理操作确实有效,我使用Wireshark检查我的数据包,它没有使用批处理插入。这是插入数据包之一:它没有做:INSERTINTOENTITYCLASSTEST(LASTNAME,NAME)VALUES('sfirosijfhgdoi0','dsufius0'),('sfirosijfhgdoi0','dsufius0'),('sfirosijfhgdoi0','dsufius0')

java - JPA EclipseLink 数据库异常 : 'table foo.SEQUENCE doesn' t exist'

我已经更新了问题,以便两个表现在都使用自动递增。持久化到MESSAGES表的问题可能是数据库架构的问题吗?在尝试这样持久化MessageBean时:privatevoidpersist(MessageBeanmessageBean)throwsException{LOG.info("loading.."+messageBean);Messagesmessage=newMessages(messageBean);emf=Persistence.createEntityManagerFactory("USENETPU");em=emf.createEntityManager();em.ge