当使用SpringRoo从数据库模式生成JPA实体时,ActiveRecord和Repository之间的差异



作为Spring Roo在模式上执行DBRE的指南,我们有以下命令来生成实体及其相关文件。

我们可以在接受参数--activerecord或--repository之间进行选择;选择后一个将忽略第一个。

我的问题是两者之间有什么区别?

roo>数据库反向工程--schema DbSchemaName--package~.domain--activeRecord--存储库--service--testAutomatically--enableViews--includeTables--excludeTables--包含不可移植的属性--disableVersionFields--disableGeneratedIdentifiers

使用--activeRecord选项创建"活动记录"实体(如果未指定,则为默认值)。

使用--repository选项为每个实体。如果指定为true,那么--activeRecord选项为已忽略。

Roo在http://docs.spring.io/spring-roo/docs/1.3.1.RC1/reference/html/base-layers.html#d4e1932

活动记录模式

  • 活动记录模式是访问数据库数据库表或视图被封装到一个类中。因此对象实例绑定到表中的一行。

  • 示例:持久化新实例(创建新行):

    Part part = new Part();
    part.name = "Sample part";
    part.price = 123.45;
    part.save();
    

存储库模式

  • Repository在域和数据映射层之间进行中介,其作用类似于内存中的域对象集合。从概念上讲,Repository封装了数据存储中持久化的一组对象以及对它们执行的操作,从而提供了持久化层的更面向对象的视图。Repository还支持实现域和数据映射层之间的干净分离和单向依赖的目标。

  • 示例:持久化新实例(创建新行):

    Part part = new Part(); 
    part.name = "Sample part"; 
    part.price = 123.45; 
    //RepositoryFactorySupport ;
    factory = ...; // Instantiate factory here or similar PartRepository 
    repository = factory.getRepository(PartRepository.class); 
    repository.save(part);
    

相关内容

  • 没有找到相关文章

最新更新