1. 程式人生 > >jsp的request.getParameter獲取不到表單引數

jsp的request.getParameter獲取不到表單引數

[b]可能原因:[/b]
1: form表單中的控制元件沒有定義name屬性
2: form表單中的控制元件被設定成disabled
3: form表單的enctype="multipart/form-data"是一種用於上傳檔案的表單

[b]解決方法:[/b]
對於第三種情況我們直接request.getParameter來取引數值是取不到的
我們可以借用apache的上傳元件來解決
用到jar包commons-fileupload-1.1.1.jar
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
/**
*獲取各種型別表單的表單引數
*@paramrequest HttpServletRequest請求對像
* @paramparamName 引數名
*@return
*@throwsFileUploadException
*/
publicstatic String getParameterValue(HttpServletRequest request,String paramName) throws FileUploadException{
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if(isMultipart==true){
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List fileItemList = upload.parseRequest(request);
if(fileItemList!=null){
for(Iterator itr=fileItemList.iterator();itr.hasNext();){
FileItem fileItem = (FileItem)itr.next();
if(fileItem.getFieldName().equalsIgnoreCase(paramName)){
return new String(fileItem.getString().getBytes("ISO8859-1"))//中文轉碼
}
}
}
}else{
return new String(request.getParameter(paramName).getBytes("ISO8859-1"))//中文轉碼
}
return"";
}

相關推薦

jsp的request.getParameter獲取引數

[b]可能原因:[/b]1: form表單中的控制元件沒有定義name屬性2: form表單中的控制元件被設定成disabled3: form表單的enctype="multipart/form-data"是一種用於上傳檔案的表單[b]解決方法:[/b]對於第三種情況我們直接

獲取form的值並轉化為字串、JSONArray或JSONObject的方法及form取到值的解決辦法

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">form表單提交時,可能需要轉化為不同的形式來作為引數請求介面。本文總結

jquery通過ajax-json訪問java後臺傳遞引數,通過request.getParameter獲取引數的說明

Java後臺伺服器是apache-tomcat-6.0.37 正常的post請求(不包括ajax請求)在http頭中的content-type為application/x-www-form-urlencoded,這時在java後臺可以通過request.getPara

serialize可以獲取form裏面的數值

col user ext pan har nbsp utf-8 div meta serialize屬性 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta

ASP.Net 獲取Form

eve length ted bsp pre html .net protect all 新建一HtmlPage1.html,如下post發送() <body> <form enctype="multipart/form-data" actio

JavaWeb:Controller中獲取Form提交的資料的方式

Controller中獲取Form表單提交的資料的方式 新增HttpServletRequst型別入參,通過HttpServletRequst.getParameter()獲取請求資料 @RequestMapping(value="/user/save", meth

layui之獲取form的radio

form表單是這樣的: <div class="layui-form-item"> <label class="layui-form-label">單選框</label> <div class="layui-input-bloc

從頁面獲取form提交的資料

  1 使用HttpServletRequest,方便靈活 頁面程式碼,使用action提交一個表單,裡邊有球的id,球的主人,球的顏色,所在省份,區域 <form action="balls/addball_form" method="post">

直接獲取form所有資料傳送到後臺

form表單程式碼  <form action="${pageContext.request.contextPath}/user/updateUser" method="post" id="updateForm"> <p>使用者名稱:<in

struts 獲取form中的資料

一、通過action獲取表單提交的資料:ActionContext         // action中的內容 public String form1(){ System.out.println("通過action獲取表單提交的資料:Ac

jquery-獲取form中的所有資料列表

<script> $(function() { $('#submit').click(function() { var d = {}; var t = $('form').serializeArray(); $.each(t, function() {

JS獲取form的所有資料

在HTML中用js獲取通過GET、POST方法(就是在網址後加?a=b&c=d之類)傳過來的表單值。 針對大家常用的獲取表單方式,很多時候都是在重複的寫一些程式碼,今天給大家貼出來的程式碼可以作為 公用方法直接呼叫。可以提高大家的開發效率。 Js程式碼  <

Java實現帶引數的檔案上傳、下載和檔案打包下載

準備工作 知識準備 SpringBoot Maven Spring Data JPA 工具準備 IDE:IDEA 說明 在此專案中, 我將檔案上傳的一些引數(例如上傳路徑、下載路徑、檔名等)儲存在資料庫當中,這樣更加靈活。當專案部署後,只需要更改資料庫中的資

通過@ModelAttribute註解封裝客戶端提交引數為一個業務物件

業務物件: public class Student { String studentName; String studentHobby; public String getStudentName() { return stude

原生js實現獲取form資料

//獲取指定form中的所有的<input>物件 function getElements(formId) { var form = document.getElementById(formId); var element

request.getParameterMap() 也能獲取動態的key

Map<String,String[]> map = request.getParameterMap();Set<String> keys = map.keySet(); 獲取表單的namefor(String key:keys){ String[] values = reque

JDBC連線資料庫程式碼 (一) -- 一個簡單的獲取資料庫

package com.nenu.www; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql

Struts2學習(二)———— 引數自動封裝和引數型別自動轉換

前篇文章對struts2的一個入門,重點是對struts2的架構圖有一個大概的瞭解即可,之後的幾篇文章,就是細化struts2,將struts2中的各種功能進行梳理,其實學完之後,對struts2的使用不外乎這幾點,引數自動封裝,攔截器的使用,資料校驗,ognl表達(值棧和actionContext的講解),

js獲取form所有資料

在HTML中用js獲取通過GET、POST方法(就是在網址後加?a=b&c=d之類)傳過來的表單值。 針對大家常用的獲取表單方式,很多時候都是在重複的寫一些程式碼,今天給大家貼出來的程式碼可以作為 公用方法直接呼叫。可以提高大家的開發效率。 Js程式碼 

vue + element-ui + axios 多檔案加引數上傳

vue加element ui 寫的一個專案,請求用的 axios 。在做表單提交的時候常常遇到需要在表單中傳檔案或者圖片,一般處理起來是先單個傳完檔案後得到路徑然後再表單提交一起傳給後端。如果介面是必須和表單其他引數一起傳過去的時候操作起來就是下面要講的了。 ps:介面是我寫