Java 读取动态填充的txt文件

Java 读取动态填充的txt文件,java,javascript,Java,Javascript,我用java代码读取一个文件txt,然后在html页面中用js显示其内容,但内容会随着时间的推移而变化,因此如果内容发生变化,我无法访问该文件: java代码: 读取文件并返回包含txt文件内容的字符串的方法 public static String getLog() throws IOException{ StringBuilder sb = new StringBuilder(); String path=logging.getRealPath();

我用java代码读取一个文件txt,然后在html页面中用js显示其内容,但内容会随着时间的推移而变化,因此如果内容发生变化,我无法访问该文件: java代码: 读取文件并返回包含txt文件内容的字符串的方法

 public static String getLog() throws IOException{
       StringBuilder sb = new StringBuilder();
       String path=logging.getRealPath();
       InputStream ips;
        try {
            ips = new FileInputStream(path);
            InputStreamReader ipsr=new InputStreamReader(ips);
            BufferedReader br=new BufferedReader(ipsr);
            String ligne;

        while((ligne=br.readLine())!=null){
                sb.append("<br>"+ligne);
                br.close();
            }
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();

    }

    return sb.toString();

}
还有js函数

<script type="text/javascript">
   function getALLLog(){
    var arrayNew = "<%=logging.getLog()%>";
    document.getElementById("log").innerHTML=arrayNew;

    }
</script>
html代码如下所示:

<div style="padding:15px" >
<span id="ALL" style="cursor: pointer;font-weight:bold;" onclick="getALLLog()">ALL</span>
</div>
<div id="log"></div>
因此,内容在填充文件后第一次显示,当服务器生成html时,java getLog函数只计算一次。之后,javascript变量arrayNew保存日志内容。当您单击ALL span时,实际上并没有调用您的java服务器端javascript,所以您只是一遍又一遍地显示相同的内容


如果您希望在单击网页上的某个按钮时调用服务器,则需要使用或刷新整个网页。

我使用dwr,但遇到相同的问题,所以您的问题是它没有刷新?起初它可以工作,但当文件被更新时,html页面没有更新?当文件被更新时,点击不会发生任何事情。我使用dwr解决问题,但我遇到了同样的问题