陈士柏 2 lat temu
rodzic
commit
441b97cbb3
1 zmienionych plików z 125 dodań i 0 usunięć
  1. 125 0
      mhotel/src/com/happy/action/uploadAction.java

+ 125 - 0
mhotel/src/com/happy/action/uploadAction.java

@@ -0,0 +1,125 @@
+package com.happy.action;
+
+import com.happy.Until.ResponseUtil;
+import com.opensymphony.xwork2.ActionSupport;
+import net.sf.json.JSONObject;
+import org.apache.commons.io.FileUtils;
+import org.apache.struts2.ServletActionContext;
+import org.apache.struts2.interceptor.ServletRequestAware;
+
+import javax.imageio.ImageIO;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.FileInputStream;
+
+public class uploadAction extends ActionSupport implements ServletRequestAware {
+
+    private HttpServletRequest request;
+    public HttpServletResponse response;
+
+    private File myFile;
+    private String myFileFileName;
+    public String url_name;
+    public String url;
+
+    public HttpServletRequest getRequest() {
+        return request;
+    }
+
+    public void setRequest(HttpServletRequest request) {
+        this.request = request;
+    }
+
+    public void setServletRequest(HttpServletRequest request) {
+        this.request = request;
+    }
+
+    public HttpServletResponse getResponse() {
+        return response;
+    }
+
+    public void setResponse(HttpServletResponse response) {
+        this.response = response;
+    }
+
+    public File getMyFile() {
+        return myFile;
+    }
+
+    public void setMyFile(File myFile) {
+        this.myFile = myFile;
+    }
+
+    public String getMyFileFileName() {
+        return myFileFileName;
+    }
+
+    public void setMyFileFileName(String myFileFileName) {
+        this.myFileFileName = myFileFileName;
+    }
+
+    public String getUrl_name() {
+        return url_name;
+    }
+
+    public void setUrl_name(String url_name) {
+        this.url_name = url_name;
+    }
+
+    public String getUrl() {
+        return url;
+    }
+
+    public void setUrl(String url) {
+        this.url = url;
+    }
+
+    // 上传图片
+    public String himage(){
+        JSONObject resultJson = new JSONObject();
+        String filepath=request.getServletContext().getRealPath("/download/");
+        if (myFile==null){
+            resultJson.put("code", 500);
+            resultJson.put("message", "请上传图片!");
+            ResponseUtil.writeJson(ServletActionContext.getResponse(),
+                    resultJson.toString());
+            return null;
+        }
+        try{
+            if (!myFileFileName.endsWith("jpg") && !myFileFileName.endsWith("png")){
+                resultJson.put("code", 500);
+                resultJson.put("message", "请上传jpg或png格式文件!");
+                ResponseUtil.writeJson(ServletActionContext.getResponse(),
+                        resultJson.toString());
+                return null;
+            }
+            File destFile = new File(filepath, myFileFileName);
+            // 获取图片大小
+            long size = myFile.length();
+            // 获取图片尺寸
+            BufferedImage sourceImg = ImageIO.read(new FileInputStream(myFile));
+            System.out.println(String.format("%.1f",myFile.length()/1024.0));// 源图大小
+            System.out.println(sourceImg.getWidth()); // 源图宽度
+            System.out.println(sourceImg.getHeight()); // 源图高度
+            // 保存图片到指定位置
+            FileUtils.copyFile(myFile, destFile);
+            // 返回图片url路径
+            String url = "服务前缀" + myFileFileName;
+            /* 保存入库  */
+        }catch (Exception e){
+            resultJson.put("code", 502);
+            resultJson.put("message", "操作异常");
+            ResponseUtil.writeJson(ServletActionContext.getResponse(),
+                    resultJson.toString());
+            return null;
+        }
+        resultJson.put("code", 500);
+        resultJson.put("message", "上传失败");
+        ResponseUtil.writeJson(ServletActionContext.getResponse(),
+                resultJson.toString());
+        return null;
+    }
+
+}