<span style="font-size:18px;"><%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>附件上传</title>
</head>
<body>
<form action="UploadAction" method="post" enctype="multipart/form-data">
<input type="file" name="filename">
<input type="submit" value="上传">
</form>
</body>
</html></span>
<span style="font-size:18px;">package servlet2;
import java.io.IOException;
import java.util.UUID;
import javax.servlet.ServletException;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.Part;
@WebServlet("/UploadAction")
//需要将文件上传到的目录!
@MultipartConfig(location="F:/明星照/")
public class UploadAction extends HttpServlet {
private static final long serialVersionUID = 1L;
public UploadAction(){
super();
}
protected void doGet(HttpServletRequest request,HttpServletResponse response){
response.getHeader("Content-Disposition");
}
protected void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException{
//得到所上传的文件!
Part p = request.getPart("filename");
//得到表头信息。
//Content-Disposition: form-data; name="filename"; filename="1.jpg"
String header = p.getHeader("Content-Disposition");
// form-data; name="filename"; filename="1.jpg"
// System.out.println(header);
//获取.jpg
String sb = header.substring(header.lastIndexOf(".")).replace("\"","");
// System.out.println(sb);
String name = UUID.randomUUID().toString()+ sb;
//将文件上传到指定目录下!
// System.out.println(name);
p.write(name);
//解决乱码问题!最重要的是,要将文件上传到客户端网页中,须先将图片保存至本地中!利用p.write;
response.setContentType("text/html;charset=utf-8");
response.getWriter().write(String.format("<img src='%s'>", "/a/"+name));
//<img src='/a/6efc617e-44b0-4c9a-8a01-593ec9205892.jpg'>
}
}
</span>