java web開發——從表單資訊到實體類的封裝程式碼簡化
想一想,我們以前在用jsp傳遞表單資訊嗎?
<form action="stu.do" method="post"> <input type="hidden" name="handler" value="addStu"> 使用者名稱稱:<input type="text" name="stuName"><br> 性別:<input type="radio" name="stuGender" value="F">女<input type="radio" name="stuGender" value="M">男<br> 生日:<input type="text" name="stuBirthday"><br> 電話:<input type="text" name="stuPhone"><br> <input type="submit" value="提交"> </form>
然後再將資訊在另一個頁面接收,通過語句:
String stuName = request.getParameter("stuName");//用request.getParameter方法進行接收,用同樣的方式接收其他變數
進行接收資訊。最後再呼叫Student的構造方法或者get和set方法進行封裝。然而,懶惰是第一生產力,通過引入beanutil 使用其提供的封裝實體bean 的方法可以簡化程式碼的編寫。尤其是在實體bean比較多,需要多次封裝的情況下更能體現beanutil的優勢。下面是操作步驟:
<dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.9.3</version> </dependency>
對於一個maven工程,首先在pom.xml中貼上上面的程式碼,引入beanutil的jar包,然後我們就可以使用嘍!
在jsp表單跳轉到的處理資訊的頁面中:
Student stu = new Student();//新建一個實體bean物件
Map<String, String[]> map = request.getParameterMap();//將表單中的資訊儲存在一箇中
BeanUtils.populate(stu, map);//然後將map中的資訊賦值到實體bean中
需要注意的是,表單中變數名稱需要和實體bean物件中的一致,傳遞到map中都以String的格式進行儲存。必要的時候可以新增一個轉換器進行資料型別的轉換。例如:
ConvertUtils.register(new Converter(){
public Date convert(Class type, Object value) {
if(value != null){
try {
return new SimpleDateFormat("yyyy-MM-dd").parse(value.toString());
} catch (ParseException e) {
e.printStackTrace();
}
}
return null;
}
}, Date.class);
當然,當代碼任務量比較小,不是很複雜的情況下並不能體現出這種方式的優勢。但是當工程比較大時我們可以考慮一下這種方式的程式設計。在定義轉換器的過程中我們使用到了內部類,需要注意的時內部類在使用的時候,如果有用到外部的變數,則該變數在定義的時候需要加上關鍵字final,從而可以確保java的封裝的特點。相關推薦
java web開發——從表單資訊到實體類的封裝程式碼簡化
想一想,我們以前在用jsp傳遞表單資訊嗎?<form action="stu.do" method="post"> <input type="hidden" name="handler" value="addStu"> 使用者名稱稱:<
Java Web中提交表單之後跳轉到WebContent目錄下的子目錄裡的jsp檔案
最近在做一個系統,需要完成登入動能進行跳轉到另一個頁面。在這個專案裡面,我把 jsp,css,js檔案都統一放在 WebContent 目錄下的一個 WebPage 裡面。 按照以前的習慣,寫好了 servlet 之後在 web.xml 裡面完成配置,但由於平時 jsp 檔案都是直接
springmvc無法接收ajax提交form表單的實體類資訊
前端接受資料: function commitConfirm(){ var recept_sn=document.getElementById("recept_sn").value;alert(rec
Java Web開發總結(三) —— request接收表單提交中文參數亂碼問題
字符串 public servlet 參數 byte[] 解決 操作 get span 1、以POST方式提交表單中文參數的亂碼問題 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"
Java——Web開發之簡單的學生資訊管理系統
這僅僅是一個跟著視訊學習的小系統,大牛就繞道啦~ 系統實現的功能: 與mysql資料庫連線,實現登陸功能 管理員登陸成功後能檢視學生資訊 擴充套件功能(完成刪除與更新學生資訊的操作) 系統實現過程: 寫一個簡單的登陸
Java——Web開發之MVC設計模式的學生資訊管理系統(二)
為什麼這個標題為“(二)”,其實是對於上一個特別簡單學生資訊管理系統裡功能的完善。 所謂的“(一)”在這:學生資訊管理系統(一) 系統實現的功能: 實現新增學生 顯示查詢到的學生 刪除學生 更新學生資訊 模糊查詢符合相關資訊的學生
從零開始使用Docker構建Java Web開發執行環境
概述 前面我們講了關於Docker的一些基本概念和操作,今天我們以一個簡單的Java Web例子來說一下Docker在日常工作中的應用,本篇主要講如下幾部分內容:建立jdk映象、建立resin映象、啟動web專案。因為本篇中的內容都是基於Dockerfile來建立的,針對於
初學 Java Web 開發,請遠離各種框架,從 Servlet 開發
Web框架是開發者在使用某種語言編寫Web應用服務端時關於架構的最佳實踐。很多Web框架是從實際的Web專案抽取出來的,僅和Web的請求和響應處理有關,形成一個基礎,在開發別的應用專案的時候則可以從這個剝離出來的基礎做起,讓開發者更關注更具體的業務問題,而不是Web的請求
學習:從零玩轉HTML5前端+跨平臺開發(表單標籤-非input標籤(掌握))
form表單標籤 <form action = "提交到伺服器地址"> <表單元素> </form>常見的表單元素 <input type = "text" name = "username"> 明文輸入框
學習:從零玩轉HTML5前端+跨平臺開發(表單練習(理解))
單選框:radio,通過name屬性進行互斥;checked預設選中多選框:checkbox,通過name屬性進行互斥;checked預設選中下拉選中框:select除了按鈕型別的input標籤以外,其他的型別的標籤都可以通過一個value屬性來指定將來提交到伺服器的值提交:
學習:從零玩轉HTML5前端+跨平臺開發(表單標籤-按鈕(掌握))
【表單標籤——按鈕】(需要配合JS使用)1.普通按鈕<input type="button" value="我是按鈕”>2.圖片按鈕<input type="image" src="">3.重置按鈕<input type="reset">
web自動化 從excel 單倍型位置資料讀取到網頁鹼基序列,自動填寫NCBI的blast表單 並提交自動化流程
#匯入資料庫 import requests import pandas as pd from selenium import webdriver import time import pyperclip from selenium.webdriver.common.keys import
java web開發一個帳號同一時間只能一個人登入(單點登入)
對於一個帳號在同一時間只能一個人登入,可以通過下面的方法實現: 1 .在使用者登入時,把使用者新增到一個ArrayList中 2 .再次登入時檢視ArrayList中有沒有該使用者,如果ArrayList中已經存在該使用者,則阻止其登入 3 .當用戶退出時,需要從該ArrayList中刪除該使用者,這又分為
從一個簡單專案看java web 開發的整體佈局
需求說明: 效果圖: 1:資料庫: 2:匯入資訊頁面: 3:匯入成功後的資料庫: 4:顯示考情資訊(3條): 專案整體格局: 注意:不用管最後一個servlet的包,這個是為了測試,將attenceAction.jsp用se
Java Web開發環境搭建
web 瀏覽器 ble 安裝tomcat 配置環境 6.0 work enable 開發 1.1 下載並安裝JDK 安裝完成後需要配置環境變量: 1. 右鍵單擊【我的電腦】->【屬性】->【高級】->【環境變量】 2. 【新建用戶變量】
JAVA-JAVA WEB開發工具下載
nload download acl web開發 network 開發 下載 .exe x64 JAVA WEB開發工具下載 1.JDK下載程序名:jdk-8u141-windows-x64.exe下載地址:http://www.oracle.com/technetwor
Java開發工程師(Web方向) - 01.Java Web開發入門 - 第4章.Maven
編譯器 靜態資源 重復 mvn clean art servle 技術 工具 環境 第4章--Maven Maven實戰 Java Web應用的部署: 手動式: 編譯:javac -cp $CATALINA_HOME/lib/servlet-api.jar web-inf/
Java開發工程師(Web方向) - 01.Java Web開發入門 - 第6章.蜂巢
多個 計算 margin style 打包 工程 自動 後端服務 運行 第6章--蜂巢 蜂巢簡介 網站開發完,就需要測試、部署、在服務器上運行。 網易蜂巢: 采用Docker容器化技術的雲計算平臺 https://c.163.com 容器管理:容器可被視作為雲主機的服務器
《Java Web開發實戰經典》.(李興華).[PDF]pdf
多維 為什麽 get thread 覆寫 受限 thread類 基本應用 5.1 下載地址:網盤下載 內容簡介 · · · · · · 《Java開發實戰經典(名師講壇)》是一本綜合講解Java核心技術的書籍,在書中使用大量的代碼及案例進行
Java Web開發中Spring+MyBatis框架的簡單搭建
jar包 簡單的 .class pre web項目 指定 clip 開發 location 這裏使用的eclipse,首先創建一個動態web項目。 1、導入Spring IOC、AOP、DAO、dbcp、dbdrive、mybatis.jar 、 mybatis-s