java web 一个小问题!我的jsp页面会有一个及时新闻显示和天气预报的位置。
基本上自动更新我是指望不了啦。因为一点思路都没有。现在想的是手动更新。前面的方案想的是:使用jsp页面跳转servlet调用java类读取txt文件,然后在用servlet传递给下一个jsp页面,结果有高人告诉我这样设计,路径会有问题,不合理,我考虑了下确实如此,一个路径在eclipse环境下,一个在项目下。所以此方案放弃了。现在的新方案是:我将要更新的内容放在jsp页面上,servlet读取,处理传递给下一个页面。
但是我想问的是,我能不能用jsp:include方式包括txt文件,然后我修改txt文件了。求思路,求关键代码。
这是我jsp页面,以@字符进行分隔!
<jsp:forward page="./MyTest"  >
  <jsp:param name="leibie" value="zuixingonggao" /> 
  <jsp:param name="jishixingxi" value= "12454@45545@789@" /> 
  

解决方案 »

  1.   


    ·····不明白,我是菜鸟!
    在+1问
    servlet跳转到jsp页面为什么不能用中文了?response.sendRedirect(“./部门/公告.jsp”);
      

  2.   

    你用的是tomcat吗?如果是的话,有一个方法能够读取tomcat目录下的文件
    FileUtil.class.getClassLoader().getResource("temp").toString()
    这个好像是利用类反射,查找javac的地址。我贴的这个是我以前创建目录的,你查下api,应该有读取目录的
    FileUtil.class.getClassLoader().XXX
      

  3.   

    谁说用servlet去读取text文本不合理?
    我个人觉得那样挺好,这样的话你可以动态更新这个text文本实现动态。
    你可以考虑给工程提供一个配置文件,文件格式可以用proterties方式,即(key=value)的方式指定这个text文本的位置;
    前台有请求来后,servlet去获取这个text里面的信息然后显示给用户,当然你的这个前台jsp可以是定时刷新的。这些完全可以实现的。还有就是跳转的时候可以用中文的,估计是你的字符集编码的问题。
      

  4.   

    public class FileUtil {
    public String CreateFile(String str){//创建文件夹保存档temp目录temp
    String[] url = str.split("\\.");
    String strurl = url[1];
    String s =FileUtil.class.getClassLoader().getResource("temp").toString();
    s=s.replace("/", "\\");
    s = s.replace("file:\\","");
    System.out.println("hello---------"+FileUtil.class.getClassLoader().getResource("temp"));
    String filename = s+"\\"+strurl+"\\";
    File file= new File(filename); 
    file.mkdir();
    System.out.println(filename);
    return filename;
    }
    }
    现在没有环境,这个是我以前写的一个根据网址,然后在服务器的temp目录下创建相应网址的文件夹。
    我想既然能够创建文件夹,那么读取文件也是可以的,所以你按照这个思路来下
      

  5.   


    那这个和我的做法一样啊,考虑到我架构的问题,我用的servlet进行处理的而已。
    但是,直接修改页面,感觉······
    能不能用txt记录。
    页面包括的方式啊。
    我代码试了很久,都没搞定。
    因为我的信息行数不是固定的
      

  6.   

    无语了,那个代码写的也很烂,所以只让你参考一下,学习java要学会用api,那个方法是获取工程运行时的路径的,至于你文件读写,完全可以依靠那个路径来
      

  7.   

    这个需求为嘛不用web service啊??
      

  8.   

    现在的新方案是:我将要更新的内容放在jsp页面上,servlet读取,处理传递给下一个页面。
    但是我想问的是,我能不能用jsp:include方式包括txt文件,然后我修改txt文件了。求思路,求关键代码。
    这是我jsp页面,以@字符进行分隔!
    <jsp:forward page="./MyTest" >
      <jsp:param name="www.cctv40.comleibie" value="zuixingonggao" />  
      <jsp:param name="jishixingxi" value= "12454@45545@789@" />  
      

  9.   

    能不能用refresh头每1秒更新一次页面??
      

  10.   


    因为不懂,可以详细说下嘛?
    我现在是用的jsp页面+servlet+固定的java代码进行实现的。目的是尽量实现mvc,jsp页面我在尽量静态化!如果我理解没错,
    service是jsp页面上写代码是吗?
      

  11.   


    期待方法,我也想要这个效果,但是你说这个配置和调用如何处理啊,我xml还处于,照葫芦画瓢的阶段。不甚感谢。不是读取text不合理,而是我前面写的代码是由servlet调用java类,java类然后获取我text文件的当前路径,这些就形成了生产环境和运行环境两个,这样的话,不利于以后的扩展和移值,但是如果通过xml进行配置路径,那应该是最合理的了,我感觉。
      

  12.   

    我知道你的问题在哪里了,你读取路径什么的用的是绝对路径还是相对路径?如果相对路径的话,只会查找运行环境的文件。你修改文件的话,是通过程序还是通过手工,如果通过程序,那么都设置相对路径就没有问题。如果你是手工修改,还是改为程序修改吧。你所说的两个路径的问题,我估计是路径问题。XML读取什么的是常用方法,四楼说的不错。
      

  13.   

    你的天气信息从哪里读取,如果是外部的,可以做个定时器,后台用webservice调用读取,之后存入内存,前台用定时器和AJAX,隔一定时间去读取。webservice也是定时读取,于前台的工作没有任何关系。
      

  14.   

    4楼方法很好,但是怎么配置啊。我不会用xml配置引用。如果xml可以配置成功的话,路径问题就不是问题了,最多改下xml就好。
    所以,希望指导下,xml如何配置txt文件路径,servlet或者jsp如何引用
      

  15.   

    为什么你死钻xml的配置问题呢?其实就是I/O的问题,xml是保存传输数据用的,也就是你的天气信息可以放到一个xml中,然后写一个读写xml的方法,传到前台,显示时间什么的。
    给你个思路:
    jsp发送请求到web.xml
    web.xml找到对应的servlet方法
    servlet方法使用文件读写方法
    文件读写方法读写文件,注意路径
    然后返回值就可以了。jsp进行页面显示
    别纠结在配置xml了。如果你觉着到时文本不好,把文件读写方法改成xml读写方法就成了。
      

  16.   

    引用 21 楼 lxpandsq 的回复:引用 19 楼 orangecount 的回复:
    引用 18 楼 lxpandsq 的回复:引用 4 楼 abstruct 的回复:
    谁说用servlet去读取text文本不合理?
    我个人觉得那样挺好,这样的话你可以动态更新这个text文本实现动态。
    你可以考虑给工程提供一个配置文件,文件格式可以用proterties方式,即(key=value)的方式指定这个text文本的位置……
      

  17.   

    怎么会不相对呢?../代表的是上级目录,这个在windows和linux中都是通用了,软件也会找到这个路径什么的。祝你早日配置好配置文件,23楼的也是一个比较好的方法,配置文件
      

  18.   

    其实20楼的方法不错,可以用个定时器,ajax,后台向session的某个标示不停的写入,前台不停地读取,这样应该不难,而且后台读取 txt/xml也方便~
      

  19.   

    结贴了,不过我是菜鸟,我还不喜欢用那些现成的包和框架,我在学习,所以27和28楼的方法是不考虑的!本来想的是jsp-xml-servlet-xml-“被读取的txt文件”
              servlet-跳转传参jsp(显示)
             
    这其中的问题就是,servlet-xml-“被读取的txt文件”的时候,如何配置和处理,我不会。
      

  20.   

    再回你一次jsp-xml-servlet-xml-“被读取的txt文件”这个流程其实就是
    jsp-xml-servletAction-FileUtil-'要读取的文件'
    如果你偏要按照你的流程来找,那么你的问题应该是如何解析xml
    第二个xml文件中应该是文件路径吧?
    public class FileUtil {
    public String CreateFile(String str){//创建文件夹保存档temp目录temp
    String[] url = str.split("\\.");
    String strurl = url[1];
    String s =FileUtil.class.getClassLoader().getResource("temp").toString();
    s=s.replace("/", "\\");
    s = s.replace("file:\\","");
    System.out.println("hello---------"+FileUtil.class.getClassLoader().getResource("temp"));
    String filename = s+"\\"+strurl+"\\";
    File file= new File(filename); 
    file.mkdir();
    System.out.println(filename);
    return filename;
    }
    }