问题标签 [persist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
605 浏览

session - Liferay:浏览器间会话

故事是这样的:使用 Liferay,如果用户在一个浏览器上登录并尝试在另一个浏览器(或另一台机器)上登录,那么他应该可以选择继续该会话(即复制所有会话该会话的属性并从第一个浏览器中终止它)或启动一个新的(终止第一台机器上的会话)。

我想知道 Liferay 是否支持这样的事情。我认为将会话属性保存到数据库并将它们返回到第二个浏览器(例如使用 PreLoginAction)可能是一个解决方案。我很好奇是否有提供持久会话的方法,以及当第二个浏览器复制它时使第一个浏览器上的会话无效/终止的方法。

提前致谢。

0 投票
1 回答
695 浏览

oauth - 关于持久化 DotNetOpenAuth 4.0 客户端令牌

我正在使用 DotNetOpenAuth 4.0.0 开发 OAuth2.0 客户端

我对 OAuth 2.0 客户端示例项目下的“SampleWcf2.aspx”页面有疑问。

在此页面中,属性 IAuthorizationState Authorization 注释如下:

如何在使用 CallService 方法之前获取最终用户的用户名?我想如果我想将令牌保存在数据库中,则需要最终用户的用户名作为主键。在我的项目中,我使用 Cassandra 来存储令牌,并且我必须使用 username 作为 RowKey。

你能告诉我有什么办法可以得到用户名吗?

等待您的回复。

BR

0 投票
1 回答
792 浏览

facebook - Facebook 我应该将用户的好友列表保存在我自己的数据库中吗?

我正在开发一个连接到 Facebook 的应用程序 (Flash/AS3)。用户登录后,我需要获取他的朋友列表(仅限 ID),检查其中是否有人是我的应用程序的用户(通过数据库上的注册表),通过向每个用户添加标志来更新列表一个应用程序用户,然后使用更新的列表做一些事情。我的问题是:

  • 我应该在应用程序启动时询问朋友列表,执行检查并将数据检索到 Flash 吗?我将不得不等待 Facebook 的响应以及执行脚本 (php) 的时间;我只会有一张包含应用程序用户信息的表格;

或者

  • 我是否应该将所有用户的朋友保存在我自己的数据库中并有一个 cron 作业自动更新(可能每天一次)我的数据库,即询问我的每个应用程序用户的朋友列表,执行检查,删除重复项等ETC ?在这种情况下,我将有一个包含应用程序用户的表,一个包含所有用户朋友的表(当然可能是数千个)和一个 user_friends 表来关联之前的两个表;

注释: - 我正在使用 PHP/cURL 向 Graph API 发出请求 - MySQl 数据库 - 我可能还会检查每个用户的 Twitter 和 G+ 朋友(因此脚本可能需要更多时间,尽管我可以通过每个网络在不同的步骤中)

你认为最好的方法是什么?我不介意在应用程序中有一个“加载”期。在这一点上,我已经完成了第一种方法,但一位同事建议使用第二种方法,这样应用程序用户就不必等待 Facebook/Twitter/G+/script 响应。但是……这不是浪费资源吗?我的意思是,Facebook 等已经有用户/朋友的连接......我会通过在我自己的数据库中复制它并让 cron 工作对应用程序用户隐藏更新来获得任何东西吗?

希望我说清楚了!谢谢!

0 投票
1 回答
650 浏览

hibernate - JPA,使用 OneToMany 持久化实体,其中一些已经存在

我有一个 A 类与 B 类具有 OneToMany 关系的情况。B 类只包含一些属性,如 id、firstName 和 lastName。id 是通过 UUID 生成的。因为很可能 A 的很多实例将引用具有相同 firstName 和 lastName 值的 B 实例,加上 B 实例中的这些值不太可能永远改变。因此,如果其他参数相同,我决定避免重复并让 A 的实例引用到 B 的相同实例(在数据库中)。

例子:

为了实现这一点,如果将新的 B 添加到 A 中,我总是检查数据库中是否存在具有相同参数的记录。如果是这样,我将用数据库中的那个覆盖 B 实例的 id 并添加之后交给A。

现在我的问题来了。一切正常,但如果我坚持一个 A,我手动更改了 B 的 ID,使其具有与数据库中已经存在的 B 相同的 ID,我将得到一个异常:

所以我的问题是:

  • 如何在不忽略异常的情况下解决此问题?
  • 这是满足我需要的好方法吗?

最好的祝福

0 投票
6 回答
27020 浏览

doctrine-orm - Doctrine2 - 在刷新前获取实体 ID

有没有办法在持久/刷新之前获取实体 ID?我是说:

如果我此时尝试$entity->getId(),它不会返回任何内容。

我可以通过以下方式使其工作:

(假设$em = $this->getDoctrine()->getEntityManager();

我怎样才能做到这一点?

0 投票
1 回答
2663 浏览

jpa - JPA 会尝试级联持久化和已经持久化的实体吗?

JPA 是否会尝试级联持久化已持久化(非分离)的实体?

为了清楚起见,这是我的情况:我想保留一个新用户:

那么,会发生什么?JPA 会尝试(再次)保留 user.getGroups() 中的每个组吗?或者它会检测到这些组已经存在并且只是更新新的关系?

如果“是的,它将再次存在”,我应该如何注释这种关系以使该代码正常工作?

0 投票
1 回答
1163 浏览

asp.net-mvc - 每个浏览器选项卡的 MVC 持久模型

我有一个 MVC 应用程序,但在使用现代多选项卡浏览器时遇到了问题。

我有一个创建模型并将其存储在 this.TempData["MyViewModel"] 中的屏幕

然后我在第二个选项卡中打开同一个屏幕,并在它调用相同的控制器方法时再次设置 this.TempData["MyViewModel"]。

如果我然后返回选项卡 1 并刷新页面,我会看到我在选项卡 2 中输入的数据。

有没有办法在 TempData 每个浏览器选项卡中唯一地存储数据?

我玩弄了创建唯一 TempData 键并使用查询字符串或隐藏字段在请求之间保留它的想法,但这看起来很混乱。

任何想法/建议都将受到欢迎。:o)


到目前为止,我所拥有的是“ProcessID”的概念。

在我的第一个部分视图中,我有一个带有隐藏字段的表单,该字段松散地绑定到我的 Model.ProcessID。发布表单时,此隐藏字段 ProcessID 用作 TempData 键...

例子:

局部视图 1:

在我的第二个局部视图表单中,我再次有一个隐藏字段松散地绑定到同一个 Model.ProcessID。发布此表单后,我可以使用 Model.ProcessID 从 TempData 检索我的视图模型并更新它:

局部视图 2:

0 投票
2 回答
1886 浏览

hibernate - Hibernate 在每次合并时保存一个新对象

我有一个特殊的问题。每次,我在会话上调用合并,Hibernate 都会保留一个全新的对象。我在 Spring MVC 应用程序中使用 Hibernate 3.6。

请在下面找到我的代码:

我的 hibernate.cfg.xml

我的员工.hbm.xml

我的模型课

的employeeDAOImpl.java 的save方法

注意:我已经在 GET 循环中加载了对象,但是为了确保将对象加载到缓存中,我仍然在调用 merge() 之前加载它。理想情况下,根本不需要合并,随着对象变得持久。为什么会发生这种情况?Hibernate 使用更改的属性保存一个新对象并保存它。它不应该通过equals检查中的empId字段检查吗?

0 投票
2 回答
8277 浏览

spring - 保存后休眠不会持久化数据

有人可以解释为什么在此示例中“lastAccessed”日期没有保存到数据库中,以及如何将其保存到数据库中?我的理解是 do 对象是 save() 调用之后的附加对象,因此所有修改都应该自动保留。

注意:“myDate”已正确保留,因此所有其他 spring 配置似乎都是正确的。

在 save() 调用之后,我还尝试了以下一些组合(以及更多组合)。这些都不起作用:

我希望这是一个我没有看到的简单答案。感谢您的帮助!

编辑 #1 05/22/2012

根据要求,这里是该实体的映射,在 src/main/resources/META-INF/dateobject.hbm.xml 中指定。我可以看到列是在 mysql 客户端中使用“SELECT * FROM dateObjects”在数据库中创建的。MY_DATE 已正确填充,但 LAST_ACCESSED 设置为 NULL。

编辑 #2 2012 年 5 月 24 日

我在https://github.com/eschmidt/dateobject有一个有效的 SSCCE 。有趣的是,web 客户端(调用 localhost:8080/view/test)显示 lastAccessed 设置正确,但是当我使用 MySQL 客户端检查数据库时,它显示 lastAccessed 为 NULL。有了这套完整的代码,任何人都可以看到为什么即使方法标记为@Transactional,数据库也不会更新?

0 投票
1 回答
158 浏览

workflow-foundation-4 - 坚持在 IIS 中托管的 NativeActivity

我创建了一个本地活动,该活动使用持久性参与者提升一个或多个属性,并且下次在父工作流中使用持久性活动时,信息将持久化到数据库中。我真正想要的是在我的本机活动中添加一个 AutoPersist 属性,以便我可以选择将数据立即持久化到数据库中,但我似乎无法让它工作。

我已经看到通过调用底层工作流主机来完成它,但是当我在 IIS 中运行我的工作流时,我认为我无法访问它。当我在完成本机活动后尝试安排持久性活动时,出现无法捕获的错误(除非有人能告诉我不同​​的错误),而当我创建包含本机活动和持久性的复合活动时,我会遇到类似的结果。

有什么我想念的吗?我想我无法捕捉到的错误可能会给我更多关于我做错了什么的线索,但我会认为复合活动会起作用。我开始认为坚持只能在工作流线程中完成 - 任何人都可以确认或否认吗?

非常感谢任何帮助...