假设系统中有两个用户在使用,假设同一时间对同一数据进行修改,当点保存时,会提示错误.但首次修改的人完成操作. 
    如何实现其方法?  在线等....想了一上午了.

解决方案 »

  1.   

    把正在修改数据的那一项数据加锁~~这样就能保证了。加锁和解锁的方法自己实现。最简单的你放个静态的线程安全的HashTable就可以了。1.加锁
    2.修改  //如果有第二个人在给数据加锁,就提示错误
    3.解锁
      

  2.   

    或者在执行修改sql语句之前先给数据库数据库加锁。设置数据访问锁的级别和粒度,让数据库去实现该功能。
      

  3.   

    纯java解法:确保对数据的所有修改都使用access_control类的一个仅有的实例对象,该类定义如下:public class access_control { 
      private boolean acessing = false ;
      
      public void access(...) { 
        synchronized(this) { 
           if (accessing) {
              //出错
              return ;
           }
           accessing = true ;
        }
        // 执行数据更新,如JDBC写数据库、调用service等
        synchronized(this) {
           accessing = false ;
        }
      }
    }