十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
利用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怎么构建一个图片服务器问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。