ActiveJPA

针对 JPA 的活动记录模式
授权协议 Apache
开发语言 Java
所属分类 程序开发、 ORM/持久层框架
软件类型 开源软件
地区 不详
投 递 者 富钧
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

ActiveJPA基于JPA,提供了Martin Fowler所提出的活动记录模式(Active Record pattern)的Java实现。借助于ActiveJPA,模型本身会作为DAO并与数据库交互,这样就不需要额外的代码作为数据访问层了。

ActiveJPA使用到了JPA规范,因此所有JPA的ORM实现(Hibernate、EclipseLink、OpenJPA等)都可以与ActiveJPA协同使用。

示例代码:

// Get order by id
Order order = Order.findById(12345L);

// Get all orders for a customer that are shipped
List<Order> orders = Order.where("customer_email", "dummyemail@dummy.com", "status", "shipped");

// Get all orders for the product category 'books' and paginate it
Filter filter = new Filter();
filter.setPageNo(1);
filter.setPerPage(25);
filter.addCondition(new Condition("orderItems.product.category", Operator.eq, "books");
List<Order> orders = Order.where(filter);

// Count of orders matching the filter
Long count = Order.count(filter);

// Get the first order matching the filter
Long count = Order.first("customer_email", "dummyemail@dummy.com", "status", "shipped");

// Get the unique order matching the conditions
Long count = Order.one("customer_email", "dummyemail@dummy.com", "status", "shipped");

// Dump everything
List<Order> orders = Order.all();

// Delete all orders matching the filter
Long count = Order.deleteAll(filter);

// Check if order exists with the given identifier
boolean exists = Order.exists(1234L);

// Save order
order.setBillingAmount(1000.0);
order.persist();

// Delete order
order.delete();

// Update attributes
Map<String, Object> attributes = new HashMap<String, Object>();
attributes.put("billingAmount", 1000.0);
order.updateAttributes(attributes);

// Find order item by id within an order
order.collections("order_items").findById(123L);

// Search order items by filter with an order
order.collections("order_items").findById(filter);

....
....
  • ActiveRecord是Ruby on Rails的ORM层,大体上类似于Java中的Hibernate。ActiveRecord基于约定优于配置的原则,所以它使用起来比Hibernate更容易。在简化基本的数据操作方面,如创建、读取、更新和删除,它确实是非常棒的。\ 借助于ActiveRecord,你的模型类也会作为数据访问对象(Data Access Object,DAO)来执行CRUD操作

  • jpa 删除记录 ActiveRecord是Ruby on Rails的ORM层,与Java中的Hibernate大致相当。 ActiveRecord基于约定而不是配置,因此与Hibernate一起使用更容易。 在简化用于创建,读取,更新和删除数据的基本操作时,它确实令人眼前一亮。 使用ActiveRecord,您的模型类可以兼作数据访问对象(DAO)来执行CRUD操作。 经过早期调查,Activ

 相关资料
  • 问题内容: 我们正在使用Kubernetes 1.1.3及其默认的fluentd-elasticsearch日志记录。 我们还在容器上使用LivenessProbes来确保它们按预期运行。 我们的问题是,我们从LivenessProbe发送到STDOUT的行似乎没有到达Elastic Search。 有没有办法像吊舱中的常规容器一样使流利的船LivenessProbes输出? 问题答案: 探针的输

  • Active Record 提供了一个面向对象的接口, 用以访问和操作数据库中的数据。Active Record 类与数据库表关联, Active Record 实例对应于该表的一行, Active Record 实例的属性表示该行中特定列的值。 您可以访问 Active Record 属性并调用 Active Record 方法来访问和操作存储在数据库表中的数据, 而不用编写原始 SQL 语句。

  • 问题内容: 如何使用PHP CodeIgniter框架的活动记录查询格式进行UNION查询? 问题答案: CodeIgniter的ActiveRecord不支持UNION,因此您只需编写查询并使用ActiveRecord的查询方法即可。

  • 我已经两天没有解决AR协会的问题了。我知道有一个简单的解决办法,但我想不出来。 我有两个模型,产品和用户,应该联系在一起。一个产品应该属于一个用户,一个用户应该有很多产品。我没有在控制器中设置用户变量,所以我选择了habtm关联。以下是模型: User.rb Product.rb products\u控制器。rb型 _形式。html。erb公司 架构。rb型 所以,即使我知道,用户和产品之间应该有

  • 在带有PoolingHttpClientConnectionManager的Apache HttpClient中,Keep-Alive策略是否会更改活动连接在从连接池中删除之前保持活动状态的时间量?还是只会关闭空闲连接? 例如,如果我将Keep Alive策略设置为每个请求返回5秒,并且我使用相同的连接每2秒点击一次URL/路由,那么Keep Alive策略是否会导致该连接离开池?或者它会留在池中

  • 我在类方法中使用active record import gem来导入从csv文件读取的列表数组,如下代码所示: 根据active record导入文档,我正在尝试将列表的标题和VIN字段设置为冲突目标。如果列表的VIN字段发生冲突,我希望进行更新,而不是创建。 但是现在,每次我运行CSV上传时,它都在从isting.import创建一个新的列表,而不检查它是否冲突。 我哪里出错了?