当前位置: 代码迷 >> HTML/CSS >> Java的Servlet调用服务器下的html文件直接在客户端打开
  详细解决方案

Java的Servlet调用服务器下的html文件直接在客户端打开

热度:407   发布时间:2013-01-26 13:47:01.0
Java的Servlet调用服务器上的html文件直接在客户端打开
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
@SuppressWarnings("unchecked")
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
service(request, response);
}

/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
service(request, response);
}

public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");

String file_add = request.getParameter("FileAddress");
OutputStream outStream = response.getOutputStream();
try{
FileInputStream fip = new FileInputStream(file_add);
byte[] buffer = new byte[1024]; // 建立缓冲区
            int len;
            while ((len = fip.read(buffer)) != -1){
            outStream.write(buffer, 0, len);
    }
fip.close();
outStream.close();
// 关闭输入流,释放系统资源
}catch(Exception e) {
System.out.println(e.getStackTrace());
}

}
  相关解决方案