總結2:上傳圖片至指定服務器

1.前段頁面以及JS

<!-- HTML -->
<section class="content"><div class="row"><div class="col-xs-12"><div class="box box-success"><div class="row" style="margin-top: 1%;margin-buttom: 2%;"><div class="col-lg-2"><div class="input-group" style="padding-left: 20px;"><label>城市:</label><select name="city" id="city"  style="width: 150px;"><option value="" selected="selected">--請選擇--</option><option value="022">天津</option><option value="0756">深圳</option><option value="0230">重慶</option><option value="0431">長春</option><option value="0280">成都</option><option value="027">武漢</option><option value="0769">東莞</option><option value="024">沈陽</option><option value="029">西安</option><option value="0322">南京</option></select></div></div></div><div class="row" style="margin-buttom: 2%;"><div class="col-lg-3"><div class="input-group" style="padding-left: 20px;"><label>選擇圖片:</label><input id="file"  type="file"  style="padding-top: 4px;margin-left: 10px;"></div></div></div><div class="row" style="margin-top: 1%;margin-buttom: 2%;"><div class="col-lg-6" style="margin-left: 30px;"><div class="input-group"><span><button type="button" onclick="addShowAfter()" class="btn btn-info" id="">提交</button></span><span style="margin: 50px;"><button type="button" onclick="sec()" class="btn btn-info" id="">取消</button></span></div></div></div></div></div></section>
<!-- JS -->
function addShowAfter() {var cituNum = $("#city").val();var file = $("#file").val();if (city!='' && city!=null){if (file!='' && file!=null){var fileData = new FormData();var file = document.getElementById("file");var filObj = file.files[0];fileData.append("file",filObj);fileData.append("cituNum",cituNum);$.ajax({xhrFields: {withCredentials: true},url:"${pageContext.request.contextPath}/showAfter/uploadFile",type:'POST',contentType:false,processData:false,async:false,data:fileData,success:function (data) {if(data!='' && data !=null){alert('上傳成功!');window.location.href="${pageContext.request.contextPath}/showAfter/findAll";}else{alert('上傳失敗!');}},error: function (data) {console.log(data);alert('上傳失敗!');}});} else {alert('請選擇文件!');}} else {alert('請選擇城市!');}
}

后端代碼

package controller;import lombok.extern.slf4j.Slf4j;
import model.ShowAfter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import service.ShowAfterService;
import util.AliyunOssUtil;
import util.FileUtil;
import util.UploadFileDto;import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;@Slf4j
@Controller
@RequestMapping("/showAfter")
public class ShowAfterController {//    @Value("${SystemData.returnUrlHead}")private String baseUrl = "存儲在服務器中的路徑帶域名";	// http://wzq.baidu.com/F//    @Value("${SystemData.uploadPath}")private String basePath = "存儲在服務器中的路徑";	// /home/upLoadFile@Autowiredprivate ShowAfterService showAfterService;/*** 上傳圖片*/@RequestMapping(value = "/uploadFile")@ResponseBodypublic Object getuploadFile(@RequestParam("file") CommonsMultipartFile file, String cituNum) {System.out.println(file.getOriginalFilename() + "getOriginalFilename");System.out.println(file.getContentType() + "getContentType");System.out.println(file.getSize() + "getSize");String fileUrl = null;try{fileUrl =new ShowAfterController().uploadImageFile(file);}catch (Exception e){e.printStackTrace();}System.out.println(fileUrl);ShowAfter showAfter = new ShowAfter();showAfter.setCityNum(cituNum);showAfter.setImgUrl(fileUrl);return showAfterService.addShowAfter(showAfter);}public String uploadImageFile(CommonsMultipartFile file) throws IOException {// 保存圖片并生成url1String filePath = System.currentTimeMillis() + "." + "png";String httpPath = baseUrl + File.separator + "image" + File.separator + filePath;filePath = basePath + File.separator + "image" + File.separator + filePath;FileUtil.makeDirs(filePath);File newFile = new File(filePath);file.transferTo(newFile);UploadFileDto uploadFileDto = new UploadFileDto();uploadFileDto.setCode(1);uploadFileDto.setMsg("上傳圖片成功!");UploadFileDto.Data data = uploadFileDto.new Data();data.setSrc(httpPath);uploadFileDto.setData(data);return httpPath;}}

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/273710.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/273710.shtml
英文地址,請注明出處:http://en.pswp.cn/news/273710.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

蘋果新的編程語言 Swift 語言進階(一)--綜述

Swift 是蘋果開發和提供的供開發IOS 和OS X應用的一門新的語言。Swift語言基于C 和Objective-C語言&#xff0c;除了提供C 和Objective-C語言具有的所有語法功能外&#xff0c;為了編程方便和高效&#xff0c;Swift在語法上作了大量的優化和改進。 Swift采用安全編程模式&#…

總結3:IDEA中使用${pageContext.request.contextPath}填寫路徑時出錯

問題描述&#xff1a; 之前一個項目在eclipse中開發的&#xff0c;其中有使用到 <jsp:include page"${pageContext.request.contextPath}/../head.jsp"/>啟動項目成功&#xff0c;訪問出錯。在換到IDEA中啟動項目時提示路徑出錯&#xff0c;當把路徑修改為 …

操作12864(ST7920控制器)

引腳部分查看中文的12864介紹&#xff0c;下面這些可以在ST7920的英文數據手冊里查到。 Function Description 部分介紹工作方式、存儲器、操作方法。Instructions 部分介紹指令。按照并行或串行的 Timing Diagram 來操作&#xff0c;注意數據何時有效。查看初始化的流程圖&…

問題之傳遞參數名和接收參數名要一致。

前端傳遞發送的Ajax請求&#xff0c;請求參數為data data: {organizationId:$("#organId").val()},//data.field 后端接受參數 //錯誤接受參數 RequestMapping(value "") ResponseBody public Object findAll(Integer organId) { return…

總結4:input文本輸入框自動提示

1、頁面效果 2、引入CSS/JS <link rel"stylesheet" href"css/jquery-ui.min.css"><script src"https://code.jquery.com/jquery-1.12.4.js"></script><script src"https://code.jquery.com/ui/1.12.1/jquery-ui.js&qu…

Map集合遍歷

//創建一個map對象并賦值Map<String, String> map new HashMap<String, String>();for (int i 0; i < 10; i) {map.put("Key" i, "Value" i);}//使用keySet便利Set<String> keySet map.keySet();for (String s : keySet) {Syste…

MySql數據同步FEDERATED引擎

概要&#xff1a;FEDERATED存儲引擎訪問在遠程數據庫的表中的數據&#xff0c;而不是本地的表。這個特性給某些開發應用帶來了便利&#xff0c;你可以直接在本地構建一個federated表來連接遠程數據表&#xff0c;配置好了之后本地表的數據可以直接跟遠程數據表同步。實際上這個…

SpringBoot 配置多數據源(Sql Server、MySql)

創建SpringBoot項目就不說了。(直接使用IDEA創建就好了) 整個目錄結構如圖&#xff1a;&#xff08;不用管圖中報錯&#xff0c;項目是在另一臺電腦上寫的。報錯是沒有jar包&#xff0c;因為網絡比較慢。&#xff09; 1、主要pom.xml <dependencies><dependency>…

【SQL語句】MySql、SqlServer查詢近期記錄

#-------------------------MYSQL------------------------- #每小時記錄 SELECT HOUR(open_time) hourNum, COUNT(1) hourCount FROM b_entrance_guard_record GROUP BY HOUR(open_time) #近六個月出入記錄 SELECT MONTH(n.open_time) monthNum, COUN…

SpringBoot 記錄操作日志

目錄結構&#xff1a; 1、創建springboot項目&#xff0c;添加依賴。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>…

SpringBoot 配置記錄

# 圖片上傳 配置圖片上傳大小 spring:servlet:multipart:max-file-size: 100MBmax-request-size: 100MBdatasource:#數據庫文件存放 /doc/sql目錄下url: jdbc:mysql://localhost:3306/merchant_pay?useUnicodetrue&characterEncodingUTF-8&autoReconnecttrue&f…

py2.7+pyqt4開發端口檢測工具

py2.7pyqt4開發端口檢測工具 使用工具&#xff1a;python2.7,pyqt4,pyinstaller,pywin32 先貼代碼 1 import sys2 from PyQt4 import QtGui,QtCore3 4 import threading5 import thread6 import os7 import re8 import urllib9 import socket10 import time11 12 13 global max…

MySql 創建存儲過程

DELIMITER $$ #以delimiter來標記用$表示存儲過程結束 CREATE PROCEDURE ownerapartment() ##創建pre()存儲方法 BEGIN DECLARE i INT; #定義i變量 SET i1; WHILE i<35 DO #對i的值配置INSERT INTO owner_apartment (id, owner_id,property_id, community_id, buildi…

opencv 和 parfor

一次遇到兩個不熟悉的&#xff0c;因此在一起記一下。 OpenCV的全稱是&#xff1a;Open Source Computer Vision Library。 OpenCv是一個基于&#xff08;開源&#xff09;發行的跨平臺計算機視覺庫&#xff0c;可以運行在Linux,Windows和Mac OS操作系統上。它輕量級而且高效—…

POI 導出

1.添加依賴 <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.17</version></dependency> 2.POI工具類 import java.io.UnsupportedEncodingException; import javax.servlet.http.Htt…

度量空間的基本性質

收斂性 $\bf命題&#xff1a;$ 連續性 $\bf命題&#xff1a;$ 稠密性 $\bf命題&#xff1a;$設$E$為度量空間$X$中的點集&#xff0c;則$E$在$X$中稠密的充要條件是對任意的$x \in X$&#xff0c;存在點列$\left\{ {{x_n}} \right\} \subset E$&#xff0c;使得${x_n} \to x\…

@Value 注入靜態變量

1、定義配置類 Component public class FilePathConfig {public static String httpResUrl;public static String savePath;public static String resUri;public String getHttpResUrl() {return httpResUrl;}Value("${file.path.httpResURL}")public void setHttpR…

配置錯誤定義了重復的“system.web.extensions/scripting/scriptResourceHandler” 解決辦法...

今天遇到了這個問題&#xff0c; 電腦系統&#xff1a;vs2010 win7系統 iis7 我運行在iis中配置的那個網站后&#xff0c;報錯&#xff1a;錯誤代碼 0x800700b7 配置錯誤定義了重復的“system.web.extensions/scripting/scriptResourceHandler”節 這個問題原因在于window7的II…

Base64 四種方式的編碼和解碼

base64與字符串String之間的相互轉換 package com.wzq;import javax.xml.bind.DatatypeConverter; import java.io.UnsupportedEncodingException; import java.util.Base64;/*** ClassName Base64Utils* Description: TODO* Author wzq* CreateDate 2019/10/14* UpdateDate 2…

郵件服務器“單點登錄”功能

現狀分析&#xff1a; 相信我們每個人都有這樣的經歷&#xff0c;比方說銀行卡多的人要具體記憶每張卡的密碼挺麻煩&#xff1b;現代人興 趣廣泛&#xff0c;愛好多多&#xff0c;運動健身俱樂部、娛樂游戲休閑、購物理財等各種場合少不了獲得入門的“通行證”&#xff0c;要輸…