更新時(shí)間:2022-06-01 09:37:33 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1650次
數(shù)據(jù)庫(kù):MySQL
服務(wù)器:tomcat
前端js框架:bootstrap
相關(guān)技術(shù):JavaScript、servlet、jsp、mvc
1. 列表查詢(xún)
2. 登錄
3. 添加
4. 刪除
5. 修改
6. . 刪除選中
7. 分頁(yè)查詢(xún)
8. 復(fù)雜條件查詢(xún)
9.登錄(加入驗(yàn)證嗎功能)
loginServlet
package z.user.web.servlet;
import z.user.domain.User;
import z.user.service.UserService;
import z.user.service.impl.UserServiceImpl;
import org.apache.commons.beanutils.BeanUtils;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.Map;
@WebServlet("/loginServlet")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1.設(shè)置編碼
request.setCharacterEncoding("utf-8");
//2.獲取數(shù)據(jù)
//2.1獲取用戶(hù)填寫(xiě)驗(yàn)證碼
String verifycode = request.getParameter("verifycode");
//3.驗(yàn)證碼校驗(yàn)
HttpSession session = request.getSession();
String checkcode_server = (String) session.getAttribute("CHECKCODE_SERVER");
session.removeAttribute("CHECKCODE_SERVER");//確保驗(yàn)證碼一次性
if(!checkcode_server.equalsIgnoreCase(verifycode)){
//驗(yàn)證碼不正確
//提示信息
request.setAttribute("login_msg","驗(yàn)證碼錯(cuò)誤!");
//跳轉(zhuǎn)登錄頁(yè)面
request.getRequestDispatcher("/login.jsp").forward(request,response);
return;
}
Map<String, String[]> map = request.getParameterMap();
//4.封裝User對(duì)象
User user = new User();
try {
BeanUtils.populate(user,map);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
//5.調(diào)用Service查詢(xún)
UserService service = new UserServiceImpl();
User loginUser = service.login(user);
//6.判斷是否登錄成功
if(loginUser != null){
//登錄成功
//將用戶(hù)存入session
session.setAttribute("user",loginUser);
//跳轉(zhuǎn)頁(yè)面
response.sendRedirect(request.getContextPath()+"/index.jsp");
}else{
//登錄失敗
//提示信息
request.setAttribute("login_msg","用戶(hù)名或密碼錯(cuò)誤!");
//跳轉(zhuǎn)登錄頁(yè)面
request.getRequestDispatcher("/login.jsp").forward(request,response);
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
checkcodeServlet(驗(yàn)證碼)
package z.user.web.servlet;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random;
/**
* 驗(yàn)證碼
*/
@WebServlet("/checkCodeServlet")
public class CheckCodeServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
//服務(wù)器通知瀏覽器不要緩存
response.setHeader("pragma","no-cache");
response.setHeader("cache-control","no-cache");
response.setHeader("expires","0");
//在內(nèi)存中創(chuàng)建一個(gè)長(zhǎng)80,寬30的圖片,默認(rèn)黑色背景
//參數(shù)一:長(zhǎng)
//參數(shù)二:寬
//參數(shù)三:顏色
int width = 80;
int height = 30;
BufferedImage image = new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB);
//獲取畫(huà)筆
Graphics g = image.getGraphics();
//設(shè)置畫(huà)筆顏色為灰色
g.setColor(Color.GRAY);
//填充圖片
g.fillRect(0,0, width,height);
//產(chǎn)生4個(gè)隨機(jī)驗(yàn)證碼,12Ey
String checkCode = getCheckCode();
//將驗(yàn)證碼放入HttpSession中
request.getSession().setAttribute("CHECKCODE_SERVER",checkCode);
//設(shè)置畫(huà)筆顏色為黃色
g.setColor(Color.YELLOW);
//設(shè)置字體的小大
g.setFont(new Font("黑體",Font.BOLD,24));
//向圖片上寫(xiě)入驗(yàn)證碼
g.drawString(checkCode,15,25);
//將內(nèi)存中的圖片輸出到瀏覽器
//參數(shù)一:圖片對(duì)象
//參數(shù)二:圖片的格式,如PNG,JPG,GIF
//參數(shù)三:圖片輸出到哪里去
ImageIO.write(image,"PNG",response.getOutputStream());
}
/**
* 產(chǎn)生4位隨機(jī)字符串
*/
private String getCheckCode() {
String base = "0123456789ABCDEFGabcdefg";
int size = base.length();
Random r = new Random();
StringBuffer sb = new StringBuffer();
for(int i=1;i<=4;i++){
//產(chǎn)生0到size-1的隨機(jī)值
int index = r.nextInt(size);
//在base字符串中獲取下標(biāo)為index的字符
char c = base.charAt(index);
//將c放入到StringBuffer中去
sb.append(c);
}
return sb.toString();
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request,response);
}
}
FindUserByPageServlet(查詢(xún)分頁(yè))------------------------
package z.user.web.servlet;
import z.user.domain.PageBean;
import z.user.domain.User;
import z.user.service.UserService;
import z.user.service.impl.UserServiceImpl;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Map;
@WebServlet("/findUserByPageServlet")
public class FindUserByPageServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
//1.獲取參數(shù)
String currentPage = request.getParameter("currentPage");//當(dāng)前頁(yè)碼
String rows = request.getParameter("rows");//每頁(yè)顯示條數(shù)
if(currentPage == null || "".equals(currentPage)){
currentPage = "1";
}
if(rows == null || "".equals(rows)){
rows = "5";
}
//獲取條件查詢(xún)參數(shù)
Map<String, String[]> condition = request.getParameterMap();
//2.調(diào)用service查詢(xún)
UserService service = new UserServiceImpl();
PageBean<User> pb = service.findUserByPage(currentPage,rows,condition);
System.out.println(pb);
//3.將PageBean存入request
request.setAttribute("pb",pb);
request.setAttribute("condition",condition);//將查詢(xún)條件存入request
//4.轉(zhuǎn)發(fā)到list.jsp
request.getRequestDispatcher("/list.jsp").forward(request,response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
AddUserServlet(添加)--------------------------------------------------
package z.user.web.servlet;
import z.user.domain.User;
import z.user.service.UserService;
import z.user.service.impl.UserServiceImpl;
import org.apache.commons.beanutils.BeanUtils;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.Map;
@WebServlet("/addUserServlet")
public class AddUserServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1.設(shè)置編碼
request.setCharacterEncoding("utf-8");
//2.獲取參數(shù)
Map<String, String[]> map = request.getParameterMap();
//3.封裝對(duì)象
User user = new User();
try {
BeanUtils.populate(user,map);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
//4.調(diào)用Service保存
UserService service = new UserServiceImpl();
service.addUser(user);
//5.跳轉(zhuǎn)到userListServlet
response.sendRedirect(request.getContextPath()+"/userListServlet");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743