您的位置:首页 > Web前端

如何让前端获取到硬盘上的图片并显示出来,不是项目中保存的图片

2017-08-01 15:26 513 查看
@ResponseBody
@RequestMapping(value = "/getImg.act")
public void getImg(HttpServletRequest request, HttpServletResponse response) throws IOException {
OutputStream os = null;
FileInputStream fis = null;
File file = null;
try {
response.setContentType("text/html; charset=UTF-8");
response.setContentType("image/jpeg"); // 设置图片格式格式,这里可以忽略
String advertImg = request.getParameter("advertImg");
// 文件存储相对位置
String uploadOrgPath = ReadSystemUtil.getValue("uploadOrgPath");
file = new File(uploadOrgPath + advertImg);
if (advertImg.equals("") || advertImg.equals("null") || advertImg == null) {
HttpSession session = request.getSession();
ServletContext application = session.getServletContext();
String serverRealPath = application.getRealPath("/");// 得到tomcat路径
fis = new FileInputStream(serverRealPath + "images/weishangchuan.png");
os = response.getOutputStream();
int count = 0;
byte[] buffer = new byte[1024];
while ((count = fis.read(buffer)) != -1)
os.write(buffer, 0, count);
} else if (file.exists()) {
fis = new FileInputStream(file);
os = response.getOutputStream();
int count = 0;
byte[] buffer = new byte[1024];
while ((count = fis.read(buffer)) != -1)
os.write(buffer, 0, count);
} else {
HttpSession session = request.getSession();
ServletContext application = session.getServletContext();
String serverRealPath = application.getRealPath("/");// 得到tomcat路径
fis = new FileInputStream(serverRealPath + "images/default.jpg");
os = response.getOutputStream();
int count = 0;
byte[] buffer = new byte[1024];
while ((count = fis.read(buffer)) != -1)
os.write(buffer, 0, count);
}

} catch (IOException e) {
e.printStackTrace();
} finally {
if (os != null)
os.close();
if (fis != null)
fis.close();
}

}

通过这里我们可以分析出,想要前端img标签显示电脑中的图片,我们需要利用response进行输出就行了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: