标签: identity-map

Rails 3.1 Identity Map问题?

有谁知道Rails 3.1 IdentityMap功能的主要问题是强制默认禁用该功能?我确信存在一些小问题,但在为已经构建的Rails 3.1应用程序启用它之前,是否有任何人应该注意的重大问题?

ruby-on-rails identity-map ruby-on-rails-3

10
推荐指数
2
解决办法
2374
查看次数

如何使实体框架4内部缓存无效

据我所知,Entity Framework实现了Identity Map Pattern,因此EF会在内存中缓存一些实体.

我举个例子吧.

var context = new StudentContext();

var student = context.Students.Where(st => st.Id == 34).FirstOrDefault();

// any way of changing student in DB
var anotherContext = new StudentContext();
var anotherStudent = anotherContext.Students.Where(st => st.Id == 34).FirstOrDefault();
anotherStudent.Name = "John Smith";
anotherContext.SaveChanges();

student = context.Students.Where(st => st.Id == 34).FirstOrDefault();
// student.Name contains old value   
Run Code Online (Sandbox Code Playgroud)

有没有办法使第一个上下文的缓存无效并检索新student实体而无需重新创建上下文?

感谢帮助.

.net caching entity-framework identity-map entity-framework-4

8
推荐指数
2
解决办法
8181
查看次数

如何将UnitOfWork模式与IdentityMap模式一起使用?

在 Martin Fowler 的书中,我读到了有关UnitOfWorkIdentityMap 模式的内容。

作者提到将 IdentityMap 放入 UnitOfWork 中是一个好主意。但怎么办呢?

据我了解IdentityMap,受会话限制,但作者没有提到这一点UnitOfWork

  1. 实例是否UnitOfWork受会话限制?

  2. 假设我们有客户和订单实体。

    public clas Client{
    
         List<Order> orders;
        ...
    }
    
    Run Code Online (Sandbox Code Playgroud)

我们收到更新客户信息(电话号码)并添加新订单的请求:

这里需要多少个unitOfWork实例?每个会话?我们应该为客户和订单提供单独的实例吗?

我们这里需要多少个 IdentityMap 实例?对于每个实例?我们应该为客户和订单提供单独的实例吗?

每个unitOfWork 实例需要多少个IdentityMap 实例?

如果我们有 2 个并发请求怎么办?

java enterprise unit-of-work identity-map

5
推荐指数
1
解决办法
1891
查看次数

实现身份地图的最佳结构是什么?

虽然DataTable是一个内存耗尽,但是如果对象集非常大,那么DataTable不是实现和IdentityMap的最佳选择,因为检索时间是O(1)吗?

更新

如果我决定使用IDictionary,那么在检索我的对象时是否会牺牲速度?

c# identity-map data-structures

4
推荐指数
1
解决办法
1250
查看次数

sqlalchemy身份地图问题

身份图和工作单元模式是sqlalchemy比django.db更具吸引力的部分原因.但是,我不确定身份映射如何工作,或者当应用程序配置为wsgi并且直接通过api调用而不是共享服务访问orm时它是否有效.我想,apache会为每个请求创建一个带有自己的python实例的新线程.因此,每个实例都有自己的sqlalchemy类实例,并且无法使用标识映射.它是否正确?

python sqlalchemy identity-map

4
推荐指数
1
解决办法
1605
查看次数

SQLAlchemy 不仅通过主键从身份映射中获取项目

是否可以使用不是来自主键的几个字段来从身份映射中检索项目(之前已获取)?例如,我经常按对查询表(external_id, platform_id),这是唯一键,但不是主键。在这种情况下我想省略不必要的 SQL 查询。

python orm sqlalchemy identity-map

4
推荐指数
2
解决办法
7165
查看次数

IdentitySet / IdentityHashSet(使用IdentityHashMap)

我知道IdentityHashMap,但是我需要使用“ identitySet ”之类的东西(它使用等于-> o1 == o2)。当我用“ extractor”(JavaFX)收听Observable列表时,我将使用一个:

 List<Person> deleteList = new ArrayList<>();
 List<Person> addList = new ArrayList<>();

 ObservableList<Person> list = FXCollections.observableArrayList(Person.extractor());
    list.add(new Person("a",1));
    list.add(new Person("b",2));
    list.add(new Person("c",3));

    list.addListener((ListChangeListener<Person>) observable -> {
        if(observable.next()) {
            if (observable.wasAdded()) {
                addList.addAll(observable.getAddedSubList());
            }
            if (observable.wasUpdated()) {
                deleteList.add(list.get(observable.getFrom()));
            }
            if (observable.wasRemoved()) {
                deleteList.addAll(observable.getRemoved());
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

人类:

public class Person {
private final StringProperty s;
private final DoubleProperty d;

//Getters and Setters
// ...

@Override
public int hashCode() {
    int result = …
Run Code Online (Sandbox Code Playgroud)

java set identity-map observable javafx-8

4
推荐指数
2
解决办法
2554
查看次数