jsp小案例 用戶信息的增刪改查和列表展示
重點:其中的驗證碼功能 分頁查詢功能 和多條件查詢功能爲以後在企業開發中常用的必備技能
這個案例的GitHub地址 : https://github.com/kinggm520/JSPUserManageCase.git
一、案例需求分析
完成用戶的增刪改查操作 和管理員的登錄操作
實際完成效果 用戶名和密碼都是 2
登錄:
進入首頁:
添加用戶 修改用戶 多條件查詢用戶就不演示了 gif錄屏 動圖內存太大了 自己部署試一下吧
其中添加和修改加了表單驗證
二、技術選型
用剛學過的 Servlet+JSP+MySQL+Druid數據庫連接池+JDBCTemplate+BeanUtils工具類+tomcat8
三、數據庫設計
用戶表 : t_user
字段: 編號 姓名 年齡 地址 郵箱 用戶名 密碼
(這裏偷懶就不寫管理員表了 直接在用戶表後面加兩個字段 插入一個用戶名和一個密碼用來測試登錄即可 )
– 建庫
CREATE DATABASE db_JSPUserManager;
– 用庫
USE db_JSPUserManager;
–建用戶表
CREATE TABLE t_user(
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(20),
gender varchar(5),
age INT,
address VARCHAR(30),
email VARCHAR(20)
);
–建管理員表
CREATE TABLE t_manager(
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(20),
password VARCHAR(20)
);
四、搭建環境
- 1、創建數據庫環境
- 2、創建項目,導入需要的jar包
- 3、編碼
- 4、測試
- 5、部署,運維
上面是企業開發的一整套流程當然肯定步驟更詳細
我們只寫到測試功能正常通過即可
代碼結構:
五、重點部分
5.1、分頁查詢
用到一個分頁對象PageBean 來處理 SQL語句 limit ?,? 兩個問號的取值問題
limit 開始索引,每頁顯示個數
開始索引 = (當前頁 - 1 )* 每頁顯示個數
例如查詢第一頁 顯示5條數據
limit 0,5
5.2、多條件查詢
多條件查詢 用到Map集合 來封裝前臺輸入的條件值 key values[]
後臺 將Map集合中的值通過循環遍歷 拼接 存入List集合 最後轉換成數組toArray() 傳入JdbcTemplate 的 query方法中 進行模糊查詢
其中JdbcTemplate 的 query方法中 形參的可變參數的底層是數組實現 所有可以直接傳入數組
這裏有個模板 select * from xxx where 1=1 xxxxx
這樣就解決了拼接SQL語句where的問題
5.3分頁與多條件查詢 查詢字段過濾問題
當獲取Map集合中條件查詢值的時候 要跳過分頁相關的數據 再進行拼接
最後 再加上分頁的數據
具體代碼有點多 上GitHub上下載到本地看吧
https://github.com/kinggm520/JSPUserManageCase.git