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

网页设计与网站建设论述题wordpress是php

网页设计与网站建设论述题,wordpress是php,怎么做电商平台,黑龙江微信网站开发说到文件上传和下载#xff0c;相信每个开发者都有或多或少的接触过文件上传的功能吧#xff0c;文件上传和下载是我们在学习计算机网络应用常见的一个功能#xff0c;主要涉及到用户和服务器之间的数据传输。 我们来对文件上传和下载功能的进行相关概述吧#xff01; 文…说到文件上传和下载相信每个开发者都有或多或少的接触过文件上传的功能吧文件上传和下载是我们在学习计算机网络应用常见的一个功能主要涉及到用户和服务器之间的数据传输。 我们来对文件上传和下载功能的进行相关概述吧 文件上传 定义文件上传是指用户将本地计算机上的文件通过网络传输到服务器的过程。用户通常通过网页表单选择文件并提交服务器接收并存储该文件。 过程 用户选择文件用户在网页上选择要上传的文件通常通过一个文件输入框input typefile。表单提交用户点击提交按钮浏览器将文件和其他表单数据一起发送到服务器。HTTP请求浏览器发起一个HTTP POST请求包含文件数据和其他表单字段。服务器接收文件 服务器接收到请求后解析请求体中的文件数据。服务器将文件存储在指定的目录中。 反馈结果服务器处理完上传后通常会返回一个响应告知用户上传是否成功。 文件下载 定义文件下载是指用户从服务器获取文件并保存到本地计算机的过程。用户通常通过点击链接或按钮来触发下载。 过程 用户请求下载用户在网页上点击下载链接或按钮触发下载请求。HTTP请求浏览器发起一个HTTP GET请求请求特定的文件。服务器处理请求 服务器接收到请求后查找请求的文件。服务器将文件内容写入HTTP响应体并设置适当的响应头如Content-Disposition以指示浏览器下载文件而不是直接显示。 浏览器接收文件浏览器接收到响应后开始下载文件并提示用户选择保存位置。文件保存用户选择保存位置后文件被下载到本地计算机。 文件上传和下载的关键步骤 在文件上传和下载的过程中涉及以下关键步骤 用户界面提供文件选择和下载的用户界面HTML表单。HTTP请求使用适当的HTTP方法POST用于上传GET用于下载发送请求。请求处理服务器端代码处理请求解析文件数据上传或查找文件下载。文件存储在上传过程中将文件存储在服务器的指定位置。响应返回服务器返回处理结果上传成功/失败或文件内容下载。错误处理处理可能出现的错误如文件大小限制、文件类型验证、文件不存在等。 在SpringMVC中实现一个文件上传和下载的功能 第一步创建我们的文件项目目录结构 src└── main├── java│ └── com│ └── example│ └── fileupload│ ├── FileUploadController.java│ └── WebConfig.java├── resources│ └── templates│ └── upload.html└── web.xml第二步添加相关依赖 dependenciesdependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.3.10/version/dependencydependencygroupIdorg.thymeleaf/groupIdartifactIdthymeleaf-spring5/artifactIdversion3.0.12.RELEASE/version/dependencydependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion4.0.1/versionscopeprovided/scope/dependency /dependencies 第三步创建我们的Web配置类用来监听相关信息 在WebConfig.java中配置Spring MVC import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.multipart.commons.CommonsMultipartResolver; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.thymeleaf.spring5.SpringTemplateEngine; import org.thymeleaf.spring5.view.ThymeleafViewResolver;Configuration EnableWebMvc public class WebConfig implements WebMvcConfigurer {Beanpublic ViewResolver viewResolver(SpringTemplateEngine templateEngine) {ThymeleafViewResolver resolver new ThymeleafViewResolver();resolver.setTemplateEngine(templateEngine);resolver.setCharacterEncoding(UTF-8);resolver.setOrder(1);return resolver;}Beanpublic CommonsMultipartResolver multipartResolver() {CommonsMultipartResolver multipartResolver new CommonsMultipartResolver();multipartResolver.setMaxUploadSize(10485760); // 10MBreturn multipartResolver;}Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler(/uploads/**).addResourceLocations(file:uploads/);} }创建控制器 在FileUploadController.java中实现文件上传和下载的逻辑 import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.mvc.support.RedirectAttributes;import javax.servlet.http.HttpServletResponse; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.OutputStream;Controller public class FileUploadController {private final String uploadDir uploads/;GetMapping(/)public String index() {return upload;}PostMapping(/upload)public String uploadFile(RequestParam(file) MultipartFile file, RedirectAttributes redirectAttributes) {if (file.isEmpty()) {redirectAttributes.addFlashAttribute(message, 请选择一个文件上传);return redirect:/;}try {// 保存文件File dir new File(uploadDir);if (!dir.exists()) {dir.mkdirs();}File uploadedFile new File(uploadDir file.getOriginalFilename());file.transferTo(uploadedFile);redirectAttributes.addFlashAttribute(message, 文件上传成功 file.getOriginalFilename());} catch (IOException e) {redirectAttributes.addFlashAttribute(message, 文件上传失败 e.getMessage());}return redirect:/;}GetMapping(/download)public void downloadFile(RequestParam(filename) String filename, HttpServletResponse response) {File file new File(uploadDir filename);if (file.exists()) {response.setContentType(application/octet-stream);response.setHeader(Content-Disposition, attachment; filename\ filename \);try (FileInputStream in new FileInputStream(file);OutputStream out response.getOutputStream()) {byte[] buffer new byte[1024];int bytesRead;while ((bytesRead in.read(buffer)) ! -1) {out.write(buffer, 0, bytesRead);}} catch (IOException e) {e.printStackTrace();}} else {response.setStatus(HttpServletResponse.SC_NOT_FOUND);}} }第五步创建HTML模板 !DOCTYPE html html xmlns:thhttp://www.thymeleaf.org headtitle文件上传/title /head body h1文件上传/h1form methodpost enctypemultipart/form-data th:action{/upload}input typefile namefile required/button typesubmit上传/button /formdiv th:if${message} th:text${message}/divh2下载文件/h2 form methodget th:action{/download}input typetext namefilename placeholder输入文件名 required/button typesubmit下载/button /form /body /html最后一步配置web.xml文件 web-app xmlnshttp://xmlns.jcp.org/xml/ns/javaee xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsdversion3.1servletservlet-namedispatcher/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-classload-on-startup1/load-on-startup/servletservlet-mappingservlet-namedispatcher/servlet-nameurl-pattern//url-pattern/servlet-mappingcontext-paramparam-namecontextConfigLocation/param-nameparam-value/WEB-INF/applicationContext.xml/param-value/context-paramlistenerlistener-classorg.springframework.web.context.ContextLoaderListener/listener-class/listener/web-app14:18:08.583 [http-nio-8008-exec-6] DEBUG org.springframework.web.servlet.DispatcherServlet - POST /SpringMVC/upload, parameters{} 14:18:08.595 [http-nio-8008-exec-6] DEBUG org.springframework.web.multipart.commons.CommonsMultipartResolver - Part file, size 719635 bytes, filename白底logo.png 14:18:08.596 [http-nio-8008-exec-6] DEBUG org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping - Mapped to com.miaow.controller.FileUploadController#uploadFile(MultipartFile, RedirectAttributes) 14:18:08.600 [http-nio-8008-exec-6] DEBUG org.springframework.web.multipart.commons.CommonsMultipartFile - Part file, filename 白底logo.png: moved to [D:\IDEATomcat\apache-tomcat-9.0.89-windows-x64\apache-tomcat-9.0.89\bin\uploads\白底logo.png] 14:18:08.600 [http-nio-8008-exec-6] DEBUG org.springframework.web.servlet.view.RedirectView - View name redirect:, model {} 14:18:08.601 [http-nio-8008-exec-6] DEBUG org.springframework.web.multipart.commons.CommonsMultipartResolver - Cleaning up part file, filename 白底logo.png 14:18:08.601 [http-nio-8008-exec-6] DEBUG org.springframework.web.servlet.DispatcherServlet - Completed 302 FOUND 14:18:08.608 [http-nio-8008-exec-5] DEBUG org.springframework.web.servlet.DispatcherServlet - GET /SpringMVC/, parameters{} 14:18:08.608 [http-nio-8008-exec-5] DEBUG org.springframework.web.servlet.handler.SimpleUrlHandlerMapping - Mapped to ParameterizableViewController [viewindex] 14:18:08.610 [http-nio-8008-exec-5] DEBUG org.springframework.web.servlet.DispatcherServlet - Completed 200 OK 14:18:12.924 [http-nio-8008-exec-10] DEBUG org.springframework.web.servlet.DispatcherServlet - GET /SpringMVC/upload, parameters{} 14:18:12.924 [http-nio-8008-exec-10] DEBUG org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping - Mapped to com.miaow.controller.FileUploadController#index() 14:18:12.925 [http-nio-8008-exec-10] DEBUG org.springframework.web.servlet.DispatcherServlet - Completed 200 OK上传成功日志。 下载成功日志 14:19:16.956 [http-nio-8008-exec-9] DEBUG org.springframework.web.servlet.DispatcherServlet - GET /SpringMVC/download?filenameviolet.webp, parameters{masked} 14:19:16.956 [http-nio-8008-exec-9] DEBUG org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping - Mapped to com.miaow.controller.FileUploadController#downloadFile(String, HttpServletResponse) 14:19:16.958 [http-nio-8008-exec-9] DEBUG org.springframework.web.servlet.DispatcherServlet - Completed 200 OK
http://www.hkea.cn/news/14346157/

相关文章:

  • 炫酷网站界面设计国外市场网站推广公司
  • 领优惠卷的网站怎么做室内设计学校专升本
  • 网站首页做301怎样做中考成绩查询网站
  • 网站建设公司怎么盈网站开发的背景意义
  • 做网站客户要先看效果后付款做网页制作的价格
  • 国外建设网站情况报告上海万户信息技术有限公司
  • 网站建设相对路径网页设计超链接
  • 网站认证怎么做wordpress好学
  • 建设部网站撤销注册资质的都是公职人员吗济南网络优化哪家专业
  • 广东私人做网站的联系方式网页设计书籍推荐
  • 网站开发源代码什么意思网站搬家数据库配置
  • 推动政务网站建设搜索引擎优化论文
  • 网站免费正能量直接进入老狼信息沪浙网站
  • 网站提交网址网站快速排名优化
  • 营销推广型网站公司视频拍摄制作报价明细
  • 建设网站有哪些问题上海网站推广模板
  • 电子商务网站建设实战wordpress显示文章简介
  • 房地产公司如何网站建设网站建设松江公司
  • 天津建设工程信息网账号密码网络seo培训
  • 免费网站建设信息seo免费外链工具
  • 旅游景点网站建设设计说明站长工具永久更新
  • 邯郸网站只做wordpress主题预览插件
  • 网站功能模块建设做视频导航网站
  • 电商网站设计推荐亿企邦免费主页空间申请网站
  • 网站工期表怎么做山东 网站建设
  • 网站建设跟pc官网一样吗东莞网站推广企业
  • 产品介绍网站模板下载地址长沙有什么好玩的地方适合小孩
  • 金华网站建设系统湖南省建设厅领导一览
  • 个体工商户备案网站备案建网站最专业
  • 各种网站底部图标代码建设网站需要客户提供什么资料