将更新发布到“a”墙

时间:2011-02-09 01:48:15

标签: java mysql facebook facebook-wall

我有一个类似于Facebook的应用程序 - 一个用于多个'团队'的虚拟白板,他们共享该项目共有的“墙”。我捕获数据的大约有9-12个实体。我试图让用户的主页显示自上次登录以来发生的活动更新 - 比如facebook发布通知的方式:

“[USER]在[某个实体]上完成了[某些活动] - 20分钟前”

其中[...]是可点击链接,活动主要(仅限于)CRUD。

我必须坚持这些更新。我正在使用MySQL作为后端数据库,并且想到每个项目都有一个可以存储活动的更新表。但似乎每个表需要一个触发器,这只是多余的。因此,很难确定该更新表的表格模式,因为有许多不同的实体。

约束是使用MySQL,但我对“如何”实现此功能的其他选项持开放态度。

有什么想法吗?

PS:使用jQuery + REST + Restlet + Glassfish + MySQL + Java

1 个答案:

答案 0 :(得分:0)

不必在数据库级别处理。您可以拥有在每个操作中调用的事务日志记录服务。每个事务都获得一个(唯一的,顺序的)密钥。

存储该人看到的最后一项的密钥,并显示密钥较高的任何更新,更新上次显示的密钥。

定期例程可以通过用户帐户查看所有用户中看到的最低事务日志密钥(即所有用户已经看到的最新日志条目),并使用密钥&lt删除/归档任何条目; =那一个。