@RequestMapping("/uploadphoto.do")//上传到数据库
public void fileupload(@RequestParam("fileName")MultipartFile file, HttpServletRequest request, HttpServletResponse response) throws Exception {
// TODO Auto-generated method stub
Integer id = (Integer) request.getSession().getAttribute("Id");
System.out.println(id);
// String fileType = "jpg,png,jpeg";//允许上传的文件类型
// int maxSize = 1024*200;//允许上传的文件最大大小(单位为byte)
response.setContentType("text/html; charset=UTF-8");
HashMap map =new HashMap<>();
// Part part = request.getPart("fileName");//请求参数
// String name=file.getOriginalFilename();
System.out.println(file.getBytes());
map.put("image", file.getBytes());
map.put("id", id);
service.insertImage(map);
response.sendRedirect("list.do");
}
@RequestMapping("/getPhoto.do")//从数据库提取到页面
@ResponseBody
public void getPhotoById (int id,HttpServletRequest request, final HttpServletResponse response) throws IOException{
Integer iid = (Integer) request.getSession().getAttribute("Id");
System.out.println(iid);
System.out.println(id);
List<Manage> image = service.getImage(id);
byte[] data = image.get(0).getImage();
response.setContentType("image/jpeg");
response.setCharacterEncoding("UTF-8");
OutputStream outputSream = response.getOutputStream();
InputStream in = new ByteArrayInputStream(data);
int len = 0;
byte[] buf = new byte[1024];
while ((len = in.read(buf, 0, 1024)) != -1) {
outputSream.write(buf, 0, len);
}
outputSream.close();
}
<div class="head">//前端代码
<img alt="选择头像" src="${basePath }/manage/getPhoto.do?id=<%=session.getAttribute("Id") %>" style="width: 100px;
height:100px;
border-radius:50%;
margin: auto;"/></div>
<!-- 请选择的头像:<br> -->
<input type="file" id="fileName" name="fileName" />
${message }
<input type="submit" value="上传"/></br></pre><pre name="code" class="html">
数据库图像字段 longblob