- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 JDO 3.1 API 从持久类生成表。
这是我的代码:
class product
@PersistenceCapable
public class Product{
@PrimaryKey
@Persistent(valueStrategy=IdGeneratorStrategy.INCREMENT)
public long id;
public String name = null;
public String description = null;
public double price = 0.0;
public Product(){}
public Product(String name, String desc, double price)
{
this.name = name;
this.description = desc;
this.price = price;
}
这是我的主要内容:
public static void main(String[] args) {
JDOEnhancer enhancer = JDOHelper.getEnhancer();
enhancer.setVerbose(true);
enhancer.addClasses(Product.class.getName());
// enhancer.addPersistenceUnit("OnlineStore");
// add entities to be enhanced to this list...
enhancer.enhance();
Properties properties = new Properties();
properties.setProperty("javax.jdo.PersistenceManagerFactoryClass",
"org.datanucleus.api.jdo.JDOPersistenceManagerFactory");
properties.setProperty("datanucleus.ConnectionDriverName","com.mysql.jdbc.Driver");
properties.setProperty("datanucleus.ConnectionURL","jdbc:mysql://localhost/example");
properties.setProperty("datanucleus.ConnectionUserName","root");
properties.setProperty("datanucleus.ConnectionPassword","root");
PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(properties);
PersistenceManager pm = pmf.getPersistenceManager();
Transaction tx=pm.currentTransaction();
try
{
tx.begin();
Product product = new Product("Sony Discman", "A standard discman from Sony", 49.99);
pm.makePersistent(new Product());
tx.commit();
}
finally
{
if (tx.isActive())
{
tx.rollback();
}
pm.close();
}
}
我有一个错误:
No hay ningun generador de valor para la estrategia "custom" para este base de datos. Por favor, lee en la documentaci�n sobre las estrategias que esta apoyado para este base de datos.
org.datanucleus.exceptions.NucleusUserException: No hay ningun generador de valor para la estrategia "custom" para este base de datos. Por favor, lee en la documentaci�n sobre las estrategias que esta apoyado para este base de datos.
at org.datanucleus.store.AbstractStoreManager.getStrategyValue(AbstractStoreManager.java:1564)
at org.datanucleus.state.JDOStateManager.populateStrategyFields(JDOStateManager.java:690)
at org.datanucleus.state.JDOStateManager.initialiseForPersistentNew(JDOStateManager.java:362)
at org.datanucleus.state.StateManagerFactory.newForPersistentNew(StateManagerFactory.java:187)
at org.datanucleus.state.ObjectProviderFactory.newForPersistentNew(ObjectProviderFactory.java:145)
at org.datanucleus.ObjectManagerImpl.persistObjectInternal(ObjectManagerImpl.java:1895)
at org.datanucleus.ObjectManagerImpl.persistObjectWork(ObjectManagerImpl.java:1745)
at org.datanucleus.ObjectManagerImpl.persistObject(ObjectManagerImpl.java:1593)
at org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:731)
at org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:756)
at com.test.Main.main(Main.java:47)
有人使用 JDO 类和 MySQL 进行映射吗?我在运行时增强类,而不是在构建时。
最佳答案
看不到你在那里尝试的东西会如何工作。你增强了一些类,但这将返回增强类的字节;它不会神奇地更新已经加载到 CLASSPATH 中的已编译类。为此,您必须根据 http://www.datanucleus.org/servlet/wiki/pages/viewpage.action?pageId=6619188 使用自定义类加载器。
关于mysql - 如何使用 mysql 使用 JDO 将类持久保存到数据库,出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12714045/
我想构建一个应用程序,其中由电子邮件地址标识的用户可以拥有多个应用程序帐户。每个帐户可以有一个或多个用户。我正在尝试将 JDO 存储功能与 Google App Engine Java 结合使用。这是
我在 karaf 2.2.10 之上使用带有 datanucleus-mongodb 3.2.3 和 spring 3.0.7 的 JDO。 在新的 OSGi bundle 安装中,我能够在 mong
这些框架(JPOX JDO 和 Cater JDO)是否遵循与 Hibernate 类似的原则?他们是否使用配置数据以及反射和泛型的组合?主要的架构差异有哪些? 最佳答案 Castor JDO 不是“
尝试遵循 DataNucleus HBase tutorial 时出现异常(“必须指定名为 javax.jdo.PersistenceManagerFactoryClass 的属性”) . 我的 da
我正在尝试增强我的 Google App Engine 项目,但我不断收到此错误。在我不得不在我的机器上重新安装操作系统之前它工作得很好,现在它提示这个: [ERROR] Failed to exec
在过去,我们曾经通过存储过程访问数据库。它们被视为管理数据的“更好”方式。我们将数据保存在数据库中,任何语言/平台都可以通过JDBC/ODBC/etc访问。 然而,近年来,基于运行时反射/元数据的存储
在我的 User 类上,我有一个字符串列表字段: @Persistent private List openIds; 当我创建新用户时,我会这样做: User user = new User(); u
我目前正在 GAE 中进行开发,我必须使用 JDO 进行这样的查询: SELECT table1.column1, table2.column2 FROM table1, table2 WHERE t
我有一个 spring 测试用例,注释如下 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"cl
我的 Oracle 数据库中有两个表 请求和批准。每个审批者都有一个请求。受约束保护的外键。 在我使用 kodo jdo 3.4 的 java 代码中,我对部分或全部批准者调用删除持久性。最后,如果没
我最近开始看到 JDO 错误,例如 Class X has been specified with an object-id class javax.jdo.identity.StringIdenti
上课: class Node implements Serializable { private String name; public String getName { return
我有一个我认为是 JDO 中常见的场景。我有一个简单的持久类,比如说 @PersistenceCapable public class Person { @PrimaryKey @Pe
将对象保存到数据库时,我收到 MySQLIntegrityConstraintViolationException 。我知道这个错误意味着什么,但我无法解决它。 错误:引起:com.mysql.jdb
我正在使用 JDO 来查询我的数据库。实体类看起来有点像这样: class Entity { // other members of the class List stuff; // me
我正在使用 JDO 在 Google App Engine 中创建云端点。我有两个实体。用户实体包含组列表。组实体包含作为用户实体的成员列表。 用户实体: @PersistenceCapable(id
我正在试验 Google App Engine 和持久选项 JDO。我想知道是否可以将 transient 对象映射到持久对象?或者使用 transient 对象来更新持久对象? 在编码示例中,我看到
我正在使用连接到 MySQL 数据库的 Spring 和 JDO。当我保留一个对象时,我希望看到由 makePersistent() 方法返回的已创建对象。它确实返回了一个对象,但是这个对象只有新建对
我有两个不同的数据源,我需要两个不同的 PersistenceManagerFactory。这一点我总是可以通过编写一个 persistence.xml 文件来实现。但我希望以编程方式表示它。尽管第二
我正在尝试将 JDBC webapp 移动到 JDO DataNucleus 2.1.1。 假设我有一些看起来像这样的类: 公共(public)类职位{ 私有(private)整数 id; 私有(pr
我是一名优秀的程序员,十分优秀!