servlet上传图片 服务器路径

1.在servlet中上传图片,上传的文件夹是imge在webroot下,主要代码如下

private void saveImage(HttpServletRequest request, HttpServletResponse response) throws IOException  {
        //保存的图片的名称
        fileName =System.currentTimeMillis() + ".jpg";
       //获得imge文件夹在tomcat中的决定路径,basePath的值是C:\Program Files\Apache Software Foundation\Apache Tomcat 6.0.20\webapps\flexTest\imge
        String basePath = request.getSession().getServletContext().getRealPath("/imge/");
        filePath = basePath;
        System.out.println("保存图片的地址为:"+filePath);
        realFilePath = filePath+"\\"+fileName;
        // 获得一个图片文件流,我这里是从flex中传过来的
        BufferedImage bufferedImage = ImageIO.read(request.getInputStream());
       if (bufferedImage != null) {
           //保存图片到指定的目录和文件中
           ImageIO.write(bufferedImage, "jpeg", new File(filePath , fileName));
       }
   }    

2.当要把上面上传图片通过servlet展示到游览器上时,取的路径如下:

    private void printImage(HttpServletRequest request, HttpServletResponse response) throws IOException  {
            response.setContentType("text/html");
            request.setCharacterEncoding("utf-8");
            PrintWriter out = response.getWriter();
            //获得服务器的地址,不能直接获取本机tomcat的绝对路径,不然游览器读取不了指定的图片文件
            // basePath的值是http://localhost:8080/flexTest
            String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/";
            String showFile = basePath+"/imge/"+this.fileName;
            out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
            out.println("<HTML>");
            out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
            out.println("  <BODY>");
            out.print("    This is ");
            out.print(" <img src="+showFile+">");
            out.print("</img>");
            System.out.println("有显示图片的地址是"+showFile);
           //showFile的值是    http://localhost:8080/flexTest//imge/1299470395060.jpg
            out.println(", using the POST method");
            out.println("  </BODY>");
            out.println("</HTML>");
            out.flush();
            out.close();
       }    
时间: 2024-11-16 17:58:14

servlet上传图片 服务器路径的相关文章

Android网络(3):HttpClient作客户端,Tomcat Servlet作服务器的交互示例

前面相继介绍了Android网络编程里的Socket传输图片.HttpURLConnection,今天看HttpClient. 第一部分:JavaEE版的Eclipse配置Tomcat [备注:开发后台服务器用Eclipse的JavaEE版最好的,但单就Tomcat来说(不写jsp之类的),本文下面的服务器方面操作在普通版的Eclipse也是可以的.我这里为了和ADT-bundle分开,特意重新安个JavaEE版的Eclipse.] 1.下载Eclipse的Tomcat插件:http://www

JavaWeb学习之什么是Servlet、如何使用servlet、为什么这样使用、servlet的虚拟路径(2)

1.什么是Servlet? * 服务器端Java程序,servlet需要交给服务器来运行. * 与javax.servlet.Servlet接口有关的java程序 2.如何使用servlet?[必须] * 创建web项目 * 创建一个类,并实现Servlet接口 * 交给服务器运行 /WEB-INF/web.xml <!-- 注册servlet <servlet>标签:进行servlet注册 <servlet-class>标签:确定servlet类所在位置 * 内容:需要注册

JAVA获取服务器路径的方法

1.在JSF环境中获取到ServletContext: ServletContext sc = (ServletContext)FacesContext. getCurrentInstance().getExternalContext().getContext(); 2.servlet中获得项目绝对路径 String filePath=this.getServletConfig(). getServletContext().getRealPath("/"); 根目录所对应的绝对路径 r

JAVA 取得当前目录的路径/Servlet/class/文件路径/web路径/url地址

JAVA 取得当前目录的路径/Servlet/class/文件路径/web路径/url地址 在写java程序时不可避免要获取文件的路径...总结一下,遗漏的随时补上1.可以在servlet的init方法里String path = getServletContext().getRealPath("/");这将获取web项目的全路径例如 :E:\eclipseM9\workspace\tree\tree是我web项目的根目录 2.你也可以随时在任意的class里调用this.getCla

ajax对服务器路径请求

$.post('/aaaa/bbbb/cccc', { "paraName": value}, function (data) {                        Success(data);        }); ajax对服务器路径请求

code-代码平台服务器路径

下面记录的是各个平台的服务器路径(va使用) ("repo init -u ssh://vanzo/platform_89/manifest.git") ("repo init -u ssh://vanzo/platform_72/manifest.git") ("repo init -u ssh://vanzo/platform_82/manifest.git") ("repo init -u ssh://vanzo/platform

Servlet 上传图片

[TOC] Servlet 上传图片 预备 需求包 commons-fileupload -用于上传 jstl -用于jsp页面遍历 servlet-api -使用servlet pom <dependencies> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>

Java Servlet:服务器小程序

servlet:服务器小程序 servlet是一个接口,接口是一种规范,因此servlet是一种规范 一个类声明为抽象类的原因: 不包含抽象方法,不想被实例化 包含抽象方法,子类有对抽象方法的不同实现 什么是Servlet容器? Servlet容器,顾名思义里面存放着Servlet对象.我们为什么能通过Web服务器映射的URL访问资源?肯定需要写程序处理请求,主要3个过程: 接收请求:web服务器 处理请求: servlet 响应请求:web服务器 servlet容器: tomcat Jetty

为CKEDITOR内容中图片加上 图片服务器路径

做网站的时候,前台和后台是分开的, 用了CKEDITOR上传图片,但是发现内容带图片的时候,前台Web浏览的时候是一个红X,一看路径不对,上传的到数据库中的是相对的虚拟路径,例如:<img src="/uploadFile/images/Penguins.jpg" style="height:600px; width:800px" />,需要加上图片服务器.或者是后台服务器的域名. 想了各种方法都没用一个好用的,后来想到了替换或者加上一个域名到路径前面,