picture字段使用varchar类型存放,长度可定为100
存放:表中存放相对地址
2.程序实现(需JS配合)
public class ProductUploadAction extends BaseAction { private static final long serialVersionUID = 1L; private File fileupload;// 附件需要和控件的名称一致 public File getFileupload() { return fileupload; } public void setFileupload(File fileupload) { this.fileupload = fileupload; } /** *上传图片 * * @param request * @param response * @return * @throws Exception */ @Action(value = "uploadpic", results = { @Result(type = "json") }) public String uploadPic() throws Exception { //ajax 请求上传图片功能 FileInputStream stream = new FileInputStream(fileupload); //fst上传图片截图打水印操作,返回图片路径 String imgurl = UploadFileUtil.uploadFile(stream, "jpg", "hello"); ProductAttachVO productAttachVO = new ProductAttachVO(); logger.info(imgurl); String code = ""; if (StringUtil.isNotBlank(imgurl)) { code = "1"; String imgurlString = Constant.IMGPATH_P0 + imgurl; // 获取图片md5 String imgmd5 = MD5Util.getFileMD5String(imgurlString); productAttachVO.setImgmd5(imgmd5); productAttachVO.setImgname(imgmd5); productAttachVO.setImgurl(imgurl); productAttachVO.setImgurlview(imgurlString); productAttachVO.setImgtype("jpg"); } JSONObject json = new JSONObject(); json.put("code", code);// 0成功1失败 json.put("msg", "成功上传");// 错误信息 json.put("data", productAttachVO);// 返回数据 output(json); return null; } /** * 删除图片 * * @param request * @param response * @return * @throws Exception */ @Action(value = "deletePic", results = { @Result(type = "json") }) public String deletePic() throws Exception { JSONObject json = new JSONObject(); String imgurl = request.getParameter("imgurl");// 商品ID // 删除图片服务器上图片 目前不实现 // 保存日志 logger.info(imgurl); json.put("code", "1");// 0成功1失败 json.put("msg", "删除成功");// 错误信息 json.put("data", "");// 返回数据 output(json); return null; } // 封装json public void output(JSONObject json) { try { HttpServletResponse response = getResponse(); response.setContentType("text/json;charset=UTF-8"); response.setHeader("Pragma", "No-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.getWriter().write(json.toString()); response.getWriter().flush(); } catch (IOException e) { e.printStackTrace(); } } }
3.VM中图片信息显示
从表中去除该字段的数值,与资源存放服务器中的地址进行组合,再到页面展示
<img src="$!merchant.organizationCertificate" width="54" height="54" />
即,假定表中存放
p1/g1/M02/00/02/rB0KDFKPAgu9X0qRAA1rIuRd3Es729xxx.jpg
实际显示时的链接为
http://portto.dhportresource.com/p1/g1/M02/00/02/rB0KDFKPAgu9X0qRAA1rIuRd3Es729xxx.jpg
自动隐藏前部的文件夹路径
p1指小图
4.若图像显示不出来 可以F12找到该图像的链接 在浏览器中显示是否可以显示若不则是路径问题
如http://css.dhportresource.com/amservice/commonaddress/image/bg.gif