当前位置: 首页 > 面试题库 >

监视mysql的变化

狄子真
2023-03-14
问题内容

我有一个Java应用程序,它通过hibernate使用MySQL数据库。数据库实际上是用作持久层:在程序的初始加载时读取数据库,然后将记录保存在内存中。

但是,我们增加了额外的复杂性,其中另一个进程也可能会更改数据库,并且更改可以反映在Java应用程序上将非常好。但是,我并不特别喜欢每隔几秒钟就查询数据库的拉动机制,尤其是很少更新数据库。

有没有一种方法可以使回调监听数据库的变化?触发器会有所帮助吗?


问题答案:

或更改两个应用程序,以便Java应用程序确实是MySQL数据库的所有者,并将其作为服务公开。您正在按照建议的方式在数据库级别耦合这两个应用程序。

如果您拥有数据的一个所有者,则可以将模式更改等隐藏在服务接口的后面。您还可以使用发布/订阅机制来向感兴趣的各方发出有关数据库更改的警报。如果这些事情对您很重要,那么我将重新考虑让另一个应用程序直接访问MySQL。



 类似资料:
  • 问题内容: 我试图了解一个PHP-MySQL项目。该项目非常复杂,因此很难逐行对其进行探索。 我想做的是,比较一个MySQL数据库的实例。 说, 1)MySQL已启动并正在运行。这是数据库的第一个实例。2)用户从PHP前端登录,然后注销。3)这是数据库的第二个实例。 我需要以友好的方式查看实例一和实例二之间的变化。 关于开源工具或任何其他技术的任何建议? 问题答案: 您可以使用mysqldump拍

  • 问题内容: 我正在写指令,并且需要注意父作用域的更改。不知道我是否正在按照首选方式执行此操作,但是它不能与以下代码一起使用: 它记录了窗口加载,但是即使更改了overlaytype,也不会再次登录。 我怎样看待变化? 编辑:这是整个指令。不确定我为什么要使用儿童镜 问题答案: 您应该在子作用域上具有 data 属性,作用域在父作用域和子作用域之间使用原型继承。 同样, $ watch 方法期望的第

  • 问题内容: 在angularJs中可以观看全局变量吗? 我从旧版代码中设置了一个window.test变量,然后我需要观察该变量以了解它是否存在。 我尝试过类似的东西 问题答案: 有些。您可以包含Angular 服务(如文档所述,比直接访问更安全): 然后使用watch函数作为您的第一个参数,如下所示: 演示小提琴 但是请注意,只有在触发Angular进行$ digest操作后,才会执行。一种可行

  • 本文向大家介绍node.js 如何监视文件变化,包括了node.js 如何监视文件变化的使用技巧和注意事项,需要的朋友参考一下 fs.FSWatcher fs.FSWatcher类 继承了 EventEmitter,用于监视文件变化,调用 fs.watch 后返回一个 fs.FSWatcher 实例,每当指定监视的文件被修改时,实例会触发事件调用回调函数 fs.watch() fs.watch(f

  • 我有一个服务,说: 我想使用foo来控制以HTML呈现的列表: 以便控制器检测何时维修。foo更新了,我拼凑了这个模式,将服务添加到控制器的

  • 问题内容: 例如考虑这个Plnkr。我不知道将事先创建多少个成员。所以我不知道会有多少种模型。 但是我知道它们将成为角度模型,而且我知道它们将在哪里。 我该如何处理这些? 我需要这样做,因为我需要在更改模型时触发行为。仅仅观察fooCollection本身是不够的,更改a时侦听器不会触发。 相关HTML: 相关JS: 问题答案: 创建单独的列表项控制器:Plnkr上的演示 js HTML