tomcat服务器,打开一个网页,一会能显示,刷新一下,就无法找到

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat服务器,打开一个网页,一会能显示,刷新一下,就无法找到相关的知识,希望对你有一定的参考价值。

tomcat服务器本地测试,打开一个网页,一会能显示,刷新一下,就无法找到,或者刷新一下,图片和文字的位置都错乱了(失去了CSS的控制),或者有的图片就显示不出来。什么原因呢?
静态页面都是这样,比如*.html,也出现上边的问题,

你如果直接用jdbc,每次数据库操作都是open connection, close connection,是很消耗资源的。默认的连接池不知道你指的是什么,tomcat自带的那个?速度非常的慢的话,你可以写个测试的jsp,里面不要加访问数据库的操作,然后看下访问速度。如果这个测试的jsp速度也慢,那么就不是数据库问题,是线路问题了。 参考技术A jsp内容有错误

解决web网页改变起引用的图片,刷新页面仍然显示之前的图片

主要是tomcat服务器上的缓存引起的,只要在更新图片的时候同时给缓存更新即可

我项目存放图片的文件夹路径 C:\Users\miaoz\workspace\book\WebContent\images

然后再tomcat服务器上有个缓存空间C:\Users\miaoz\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\book\images

当刷新页面时图片还是从缓存空间中取,所以才会导致更新图片还是显示之前的,这里应该同时给两个路径的图片进行更新

例如在我的项目中

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
        // TODO Auto-generated method stub
        doGet(request, response);
        String bookinfo[] = "","","","","","","","";
        String imagid=new Connect(1).getimag_seq();
        int count=0;
        request.setCharacterEncoding("utf-8");
        DiskFileItemFactory factory = new DiskFileItemFactory();
        String path = request.getRealPath("/images");//这是缓存中图片的路径
        factory.setRepository(new File(path));
        //设置 缓存的大小,当上传文件的容量超过该缓存时,直接放到 暂时存储室
        factory.setSizeThreshold(1024*1024) ;
        ServletFileUpload upload = new ServletFileUpload(factory);
        try 
            List<FileItem> list = (List<FileItem>)upload.parseRequest(request);
            for(FileItem item : list)
                String name = item.getFieldName();
                if(item.isFormField())
                    String value = item.getString() ;
                    bookinfo[count++]=value;
                    System.out.println(name+"-->"+value);
                else
                    String value = item.getName() ;
                    int start = value.lastIndexOf("\\");
                    String filename = value.substring(start+1);
                    request.setAttribute(name, filename);
                    String path1=path.substring(0,path.length()-75)+"\\book\\WebContent\\images";//这是真实项目的图片路径
                    System.out.println(path);
                    OutputStream out = new FileOutputStream(new File(path,imagid+".jpg"));
                    OutputStream out1 = new FileOutputStream(new File(path1,imagid+".jpg"));//这里同时打开两个stream,分别是缓存与真实路径
                    InputStream in = item.getInputStream() ;
                    int length = 0 ;
                    byte [] buf = new byte[1024] ;
                    while( (length = in.read(buf) ) != -1)
                        //同时将图像写入两个路径中
                        out.write(buf, 0, length);
                        out1.write(buf, 0, length);
                    
                    in.close();
                    out.close();
                    out1.close();
                
            
        catch (FileUploadException e) 
            e.printStackTrace();
        catch (Exception e) 
            e.printStackTrace();
        
       

 

以上是关于tomcat服务器,打开一个网页,一会能显示,刷新一下,就无法找到的主要内容,如果未能解决你的问题,请参考以下文章

解决web网页改变起引用的图片,刷新页面仍然显示之前的图片

IE8怎么设置才能让每次打开的网页不再是单个窗口跳出显示

TIME_WAIT状态全是3306解决办法

oppo手机浏览器怎么调自动刷新

为啥换了电信网络后打开网页都要刷新一下才能完全显示?

基于Tomcat服务器,通过JQuery的Ajax方法访问Servlet实现前后端数据同步/异步交流(不必跳转或者刷新网页实现JSP前后端交互)