如何写一个类似数据库触发器的程序,要求触发JAVA代码当数据库发生某种改变时,要求触发JAVA代码。也就是从底层 触发上层的东西  好像比较难实现  
 这个数据库的改变是数据库 的同步造成的 ,跟上层的操作无关 (如果是上层的操作造成的,那就很好办了) 请教高人?

解决方案 »

  1.   

    做数据库触发器,某个表一有变动就在一张“记录表”中,添加记录,包括表名,字段名等,具体粒度看你实际需求,然后写个java程序,每隔一段时间访问“记录表”。算个折衷办法吧。
    另外,我觉得某些大型数据库会提供这方面的API,不过我确实不知道。
      

  2.   

    不太明白你的意思,不过写个监听器应该可以,不知道是不是你要的,所以懒得写了, 你上GOOGLE搜索Filter吧
      

  3.   

    也就是说我要写一个类似数据库触发器的东西 但我要触发的不是一段SQL语句   而是一断JAVA 代码  也是触发器调用 前台的程序
      

  4.   

    Oracle 数据库支持 java的存储过程。弄一段java代码放到 oracle中,然后triger调用这个存储过程。 仅提供个思路。 mysql 要实现这个机制很困难。 mysql 支持一种自己定义函数的机制(C 实现). 
    可以 mysql.triger -> selfFun -> java    仅提供个思路。
      

  5.   

    直接在dao层做个AOP就OK了啊,都执行update,insert,delete等改变数据的操作时候,应用一个通知
      

  6.   


    LZ的意思  是在数据库里修改数据 例如 oracle 使用 plsql直接修改了 数据 还有触发java代码