package com.igeekhome.ebuy.web.servlet;
import com.igeekhome.ebuy.pojo.Adverts;
import com.igeekhome.ebuy.service.AdvertsService;
import com.igeekhome.ebuy.service.impl.AdvertServiceImpl;
import javax.servlet.ServletException;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import java.io.IOException;
import java.util.List;
import java.util.UUID;
@WebServlet(name = "AdvertServlet", urlPatterns = {"/admin/manager/advert"})
@MultipartConfig
public class AdvertServlet extends BaseServlet {
private AdvertsService advertsService = new AdvertServiceImpl();
/**
* 获取广告列表
*/
private void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<Adverts> list = advertsService.getList();
request.setAttribute("list", list);
request.getRequestDispatcher("/admin/manager/advert/advertList.jsp").forward(request, response);
}
/**
* 新增广告位置
*/
private void add(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String bid = request.getParameter("bid");
String target = request.getParameter("target");
//获得name=advert的part
Part part = request.getPart("advert");
//part.getSubmittedFileName()获得选择的图片的名称,如image.jpeg
String submittedFileName =part.getSubmittedFileName();
String img = "";
if(submittedFileName != null && !"".equals(submittedFileName)) {
//得到文件的后缀名strs[strs.length-1]是.后面的类型,就是jpeg
String[] strs = submittedFileName.split("\\.");
//创建一个随机的文件名称,加上后缀名
String fileName = UUID.randomUUID() + "." + strs[strs.length - 1];
//得到打包路径out下的文件电脑全路径,加上/images/fileName
//part.write()把文件写入到电脑路径下
part.write(this.getServletContext().getRealPath("/images/") + fileName);
img = "images/" + fileName;
}
//最后调用业务把图片和连接都写入到数据库。
int i = advertsService.addAdvert(bid, img, target);
response.sendRedirect(request.getContextPath() + "/admin/manager/advert?method=list");
}
}
java web:图片文件的上传
最新推荐文章于 2024-04-02 09:51:56 发布