利用Jersey怎么构建一个图片服务器
利用Jersey怎么构建一个图片服务器?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于网站建设、成都网站设计、肥西网络推广、小程序制作、肥西网络营销、肥西企业策划、肥西品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供肥西建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
前台页面代码
前台JS代码
在Spring中配置图片转换器
创建UploadController以及工具类
package cn.itcast.core.controller.admin; import java.io.IOException; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Random; import javax.servlet.http.HttpServletResponse; import org.apache.commons.io.FilenameUtils; import org.json.JSONObject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.multipart.MultipartFile; import com.sun.jersey.api.client.Client; import com.sun.jersey.api.client.WebResource; import cn.itcast.common.web.ResponseUtils; import cn.itcast.core.web.Constants; @Controller public class UploadController { // 上传图片 @RequestMapping(value = "/upload/uploadPic.do") public void uploadPic(@RequestParam(required = false) MultipartFile pic, HttpServletResponse response) { // 扩展名 String ext = FilenameUtils.getExtension(pic.getOriginalFilename()); // 图片名称生成策略 DateFormat df = new SimpleDateFormat("yyyyMMddHHmmssSSS"); // 图片名称一部分 String format = df.format(new Date()); // 随机三位数 Random r = new Random(); // n 1000 0-999 99 for (int i = 0; i < 3; i++) { format += r.nextInt(10); } // 实例化一个Jersey Client client = new Client(); // 保存数据库 String path = "upload/" + format + "." + ext; // 另一台服务器的请求路径是? String url = Constants.IMAGE_URL + path; // 设置请求路径 WebResource resource = client.resource(url); // 发送开始 POST GET PUT try { resource.put(String.class, pic.getBytes()); } catch (IOException e) { e.printStackTrace(); } // 返回二个路径 JSONObject jsonObject = new JSONObject(); jsonObject.put("url", url); jsonObject.put("path", path); ResponseUtils.renderJson(response, jsonObject.toString()); } } package cn.itcast.core.web; public interface Constants { /** * 图片服务器 */ public static final String IMAGE_URL = "http://localhost:8088/BabasportProject_ImageService/"; } package cn.itcast.common.web; import java.io.IOException; import javax.servlet.http.HttpServletResponse; public class ResponseUtils { // 发送内容 public static void render(HttpServletResponse response, String contentType, String text) { response.setContentType(contentType); try { response.getWriter().write(text); } catch (IOException e) { e.printStackTrace(); } } // 发送的是JSON public static void renderJson(HttpServletResponse response, String text) { render(response, "application/json;charset=UTF-8", text); } // 发送xml public static void renderXml(HttpServletResponse response, String text) { render(response, "text/xml;charset=UTF-8", text); } // 发送text public static void renderText(HttpServletResponse response, String text) { render(response, "text/plain;charset=UTF-8", text); } }
搭建另一个Tomcat,作为图片服务器
图片服务器Tomcat的设置 tomcat/conf/web.xml中内容更改
default org.apache.catalina.servlets.DefaultServlet debug 0 readonly false listings false 1
修改图片服务器的Tomcat的端口号
在BabasprotProject_ImageService项目的webapp目录下创建upload文件夹
关于利用Jersey怎么构建一个图片服务器问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。
名称栏目:利用Jersey怎么构建一个图片服务器
本文链接:http://scyanting.com/article/ijhise.html