当前位置: 首页 > news >正文

南昌模板建站代理南通住房和城乡建设部网站首页

南昌模板建站代理,南通住房和城乡建设部网站首页,四网合一的网站,濮阳做网站的公司有哪些一 文件上传 1 介绍 用户选择本地文件资源保存到服务器上#xff0c;Servlet需要将二进制数据以文件保存到服务器磁盘中#xff0c;再将磁盘路径保存到数据库中 2 项目搭建 创建web项目#xff0c;并添加对应jar包(JSTL) 3 API HttpServletRequest 方法–从请求中解析上…一 文件上传 1 介绍 用户选择本地文件资源保存到服务器上Servlet需要将二进制数据以文件保存到服务器磁盘中再将磁盘路径保存到数据库中 2 项目搭建 创建web项目并添加对应jar包(JSTL) 3 API HttpServletRequest 方法–从请求中解析上传的文件 返回值方法作用PartgetPart(String name)用于获取请求中指定 name 的文件CollectiongetParts()获取请求中全部的文件 Part 方法 返回值方法作用voidwrite(String fileName)直接把接收到的文件保存到磁盘中voidgetContentType()获取文件的类型 MIMEStringgetHeader(String name)获取请求头信息longgetSize()获取文件的大小 为 Servlet 添加注解 MultipartConfig 使用 getPart() 获取请求中指定 name 的文件到 Part 对象中,再使用 write 方法保存文件到指定目录 4 例子 ① upload.jsp % page contentTypetext/html;charsetUTF-8 languagejava % html headtitle用户注册/title /head body h3注册/h3 %--enctypemultipart/form-data表示需要二进制数据--% form action/fileupload methodpost enctypemultipart/form-dataspan stylecolor: red${errorMsg}/spanp姓名input typetext nameusername/pp头像input typefile nameheadImg/ppinput typesubmit value提交/p /form /body /html② UploadServlet WebServlet(/fileupload) //文件上传注解 maxFileSize单个上传文件大小 maxRequestSize请求中数据的大小 单位都为bytes MultipartConfig(maxFileSize 105560) public class RegisterServlet extends HttpServlet {Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {try {String username req.getParameter(username);//获取表单文件封装的对象Part part req.getPart(headImg);//使用工具类实现上传String filename UploadUtil.uploadImg(req, resp, part);System.out.println(filename);} catch (Exception e) {e.printStackTrace();//上传的图片大小超过最大值给出提示req.setAttribute(errorMsg,上传的图片太大了);req.getRequestDispatcher(register.jsp).forward(req,resp);return;}} }③ 工具类 public class UploadUtil {public static String uploadImg(HttpServletRequest req, HttpServletResponse resp,Part part){try {//上传文件的类型String contentType part.getContentType();if (!contentType.startsWith(image)){//上传的不是图片页面给出提示req.setAttribute(errorMsg,上传文件须是图片);req.getRequestDispatcher(register.jsp).forward(req,resp);return null;}//获取文件的名称pic.pngString fileName part.getSubmittedFileName();//获取源文件类型或后缀名String type fileName.substring(fileName.lastIndexOf(.));String s UUID.randomUUID().toString().replace(-,);//使用uuid生成32位随机字符//设置新的文件名称String newfilenamestype;//设置上传的目标目录地址String pathD:\\java\\upload\\;//将上传的文件保存到目标地址part.write(pathnewfilename);return newfilename;} catch (Exception e) {e.printStackTrace();}return null;} }④ 若想同时上传多张图片可修改 UploadServlet WebServlet(/fileupload) MultipartConfig(maxFileSize 80000, maxRequestSize 140000) //支持文件上传的注解 MultipartConfig public class UploadServlet extends HttpServlet {Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding(UTF-8);try {//获取表单文件封装的对象集合CollectionPart parts req.getParts();for (Part part : parts) {//上传文件的类型String contentType part.getContentType();if (contentType ! null) { // input 类型是 file// 判断上传的文件类型合法不if(!contentType.startsWith(image/)){req.setAttribute(errorMsg, 请上传图片);req.getRequestDispatcher(/upload.jsp).forward(req,resp);return;}//获取文件的名称cat.pngString fileName part.getSubmittedFileName();//获取源文件类型或后缀名String type fileName.substring(fileName.lastIndexOf(.));String s UUID.randomUUID().toString().replace(-,);//使用uuid生成32位随机字符//设置新的文件名称String newfilenamestype;//设置上传的目标目录地址String pathD:\\java\\upload\\;//将上传的文件保存到目标地址part.write(pathnewfilename);}else { // input 类型非 fileSystem.out.println(req.getParameter(part.getName()));}}} catch (Exception e) {e.printStackTrace();//上传的图片大小超过最大值给出提示req.setAttribute(errorMsg,上传的图片太大了);req.getRequestDispatcher(register.jsp).forward(req,resp);return;}} }二 文件下载 1 介绍 下载服务器资源到用户电脑中,服务器文件需放在 WEB-INF中放在外面用户只需要拿到下载的超链接都能够下载将文件放在 WEB-INF 下用户不可以直接访问须请求到 Servlet 来处理在对应 service 方法中编写下载限制操作 2 项目搭建 web 下新建 download 目录提供两个资源包    3 例子 download.jsp % page contentTypetext/html;charsetUTF-8 languagejava % html headtitle文件下载/title /head body h3超链接下载当文件在WEB-INF下时无效/h3 pa href/download/大黄.rar大黄.rar/a/p pa href/download/小黄.rar小黄.rar/a/ph3后台servlet下载/h3 pa href/download?filename大黄.rar大黄.rar/a/p pa href/download?filename小黄.rar小黄.rar/a/p /body /htmlDownloadServlet WebServlet(/download) public class DownloadServlet extends HttpServlet {Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//获取文件名称String filename req.getParameter(filename);//获取路径String path getServletContext().getRealPath(/WEB-INF/download/);//设置中文转码//String newfilename URLEncoder.encode(filename, utf-8);//默认Tomcat 服务器未告知浏览器文件的名称需手动设置响应头来告知浏览器文件名称String newfilename new String (filename.getBytes(UTF-8), ISO-8859-1);//设置下载的文件名resp.setHeader(content-disposition,attachment;filenamenewfilename);//实现文件的下载Files.copy(Paths.get(path,filename),resp.getOutputStream());} }
http://www.zqtcl.cn/news/811010/

相关文章:

  • 厦门网站推广找谁wordpress的模板目录在哪里
  • 做网站的维护成本wordpress 密码更改
  • 企业网站建设流程概述长春网站推广排名
  • 网站导航设计牙科 网站建设方案
  • 手机微信网站开发教程企业网站的制作成本
  • 做电商网站的流程网站架构搭建
  • 可以下载新闻视频的网站重庆seo
  • 网站内容页设计网站建设实验分析
  • 网站建设的软硬件环境凡科精选app
  • 网站开发过滤器作用信息港怎么发布信息
  • 网站服务器组建百度seo引流怎么做
  • 南京网站定制公司如何用源码做网站
  • 网站建站视频wordpress网站好用吗
  • 网页设计网站搭建建筑材料价格信息网
  • 淮安市交通建设局网站新郑做网站
  • 新开传奇网站手机版深圳房管局官网
  • 重庆网站建设营销深圳微商城网站设计公司
  • 用织梦做的网站是模板的吗外贸展示型模板网站
  • 网站seo的关键词排名怎么做的定制和订制
  • 自适应网站做多大尺寸的四川建设厅电话网站
  • 易语言可以做网站了吗电商平台排名100强
  • 网站代码开发方式影视公司网页设计
  • 如何选择网站定制公司响水专业做网站
  • 海门建网站公司凡客模板wordpress
  • 网站关键字排名php开源cms
  • 手机商城手机网站建设多少钱明水县网站建设
  • 北京网站优化外包做板材外贸一般用哪个网站
  • 北京建设网站有哪些公司药店网站模板
  • 网站欢迎页面怎么做个人简历免费模板下载
  • 宁波外贸网站建设竣工验收报告查询网