日期:2014-05-18  浏览次数:20585 次

浏览器修改数据后服务器的数据已经被修改了,但在服务器打印数据则显示跟没修改前的一样?
通过网页修改服务器的数据,然后再服务器那边打印修改后的数据,结果发现打印出来的结果跟没修改的之前的一样,但打开数据存储的文件后发现已经被修改了。检查了好几遍,代码没有问题,请问这是怎么回事?

代码如下:
        //得到所有存储在xml文件中的Person类
List<Person> persons = personDaoImpl.getAllPersons();
        //打印结果,假定这边显示n条信息
for(Person person : persons){
System.out.println(person);
}
        //删除掉xml文件中的第一个元素(此时,xml中的第一个元素已经被删除掉了)  
personDaoImpl.deleteOnePerson(1);
        //然后再得到所有存储在xml文件中的Person类
persons = personDaoImpl.getAllPersons();
        //打印结果,显示n条信息
for(Person person : persons){
System.out.println(person);
}

两个打印的结果都一样,但xml文件确实已经被修改了,然后下一次在读取xml文件时发现打印出来的信息就变成n-1条了!请问这是什么原因造成的呢?求解救啊!

------解决方案--------------------
你的持久层执行两次同样的查询时直接走缓存。