package cn.bytecollege.controller;
import cn.bytecollege.model.User;
import cn.bytecollege.service.impl.UserServiceImpl;
import cn.bytecollege.util.WebConstant;
import cn.hutool.crypto.SecureUtil;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import java.io.IOException;
@WebServlet(value = "admin/adminLogin")
public class AdminLoginController extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.getRequestDispatcher(WebConstant.ADMIN_PREFIX + "login" + WebConstant.SUFFIX)
.forward(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获取数据
String username = request.getParameter("username");
String password = request.getParameter("password");
String validCode = request.getParameter("validCode");
//从session对象中获取验证码字符串
String code = request.getSession().getAttribute("code").toString();
//判断客户端用户输入的密码是否与服务器端生成的验证码相等
if (!validCode.equals(code)) {
//不相等则封装提示信息返回前端页面
String msg = "验证码错误,请重新输入!";
request.setAttribute("msg", msg);
//重新请求转发至管理员登录页面
request.getRequestDispatcher(WebConstant.ADMIN_PREFIX + "login" + WebConstant.SUFFIX)
.forward(request, response);
return;
}
//创建service对象
UserServiceImpl userLogin = new UserServiceImpl();
//调用方法通过用户名获取得到user对象
User user = userLogin.findByUsername(username);
//将从jsp页面上获取得到的密码明文进行加密处理
password = SecureUtil.md5(password).toLowerCase();
//如果获取得到的用户为null,那么用户不存在,跳转回登录页
if (user == null) {
request.setAttribute("msg", "用户不存在");
request.getRequestDispatcher(WebConstant.ADMIN_PREFIX + "login" + WebConstant.SUFFIX).forward(request, response);
return;
}
if (user.getRole()<1){
request.setAttribute("msg", "用户身份异常");
request.getRequestDispatcher(WebConstant.ADMIN_PREFIX + "login" + WebConstant.SUFFIX).forward(request, response);
return;
}
if (user.getState()>0){
request.setAttribute("msg", "用户已经被禁用");
request.getRequestDispatcher(WebConstant.ADMIN_PREFIX + "login" + WebConstant.SUFFIX).forward(request, response);
return;
}
//如果从jsp页面上获取得到的密码与user对象中的值相等那么用户验证成功,跳转到studentList页面
if (user.getPassword().equals(password)) {
//创建session对象
HttpSession session = request.getSession();
//将登录成功用户的相关信息保存到session对象中
session.setAttribute("adminLogin", user);
response.sendRedirect(request.getContextPath() + "adminIndex");
return;
}
//如果都不满足条件,不跳转页面,并且反馈用户名或密码错误
request.setAttribute("msg", "用户名或密码错误");
request.getRequestDispatcher(WebConstant.ADMIN_PREFIX + "login" + WebConstant.SUFFIX).forward(request, response);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
内容概要:本博客系统主要使用Jetty技术+Servlet技术+Jsp技术+BootStrap前端框架+wangEditor富文本编辑器+MySQL数据库+MyBatis持久层,通过对该系统的设计,可以在实践过程中掌握相关基础知识,如对三层架构开发模式的熟悉、熟悉和理解JavaWeb的基础原理和用法、数据库的连接、SQL语句实现多表联查以及分页查询、登录注册功能逻辑代码的编写等,BootStrap前端框架前端样式框架的使用,包括通过栅格系统实现页面的自适应、Flex布局的使用和练习、wangEditor富文本编辑器的使用方法等。 能学到什么:JavaWeb基础开发技术的基本理解和使用,MyBatis持久层的掌握和使用,BootStrap前端框架的基本使用方法和练习,使用SQL语句实现多表联查以及分页查询。 适合人群:Web开发初学者
资源推荐
资源详情
资源评论
收起资源包目录
基于Jetty+Servlet+Jsp+MySQL+MyBatis技术实现的简单博客系统
(585个子文件)
0014a4b06eee3d0c0d54402a47ab2601b2862b 96KB
00ffab7828f4818589659c804ec2cfd99baed3 170B
015c8af003ce46529ae03b3ffa87aa9ca7eeb9 363B
01b5799e080c553218099351f34e10c72bb99c 537B
0251a86f1949a809720b7da42362cbc40d8eb0 232B
02a391e3f5b347bb6827f4fea21752b4e8e9ef 430B
04389139ae3ddf468a1ce4aeba04de72a49579 131B
0440ce89f2a408aa699b65100e18f15e0f09ca 8KB
06023c59b7c2b6b287b8c1ec0c2f0f4fefc6b5 72B
08dd63991d624d47ec29162c9d416a17621b12 1KB
09f62ed030aa6da04e844db86840d1ef19a872 338B
0a70f463335d3968b223d1ae088d2349eafbc9 443B
0bbc2a0384e5654525e7581017364dd9ceb59c 3KB
0ca0e6d316d8e676857ae7e418bbd05f17e769 912B
0e161f3fd33c8295f7e855c4934f8f5302b2a0 70B
11a09bc8ec97045da84fc65d1902eac87cab82 2KB
11ba16ef27bd90e3d89f8ccc64eaceef854431 179B
11e65a721efb9619db6a0844a86cca22d0cdfc 80B
12a7e6c84fbbdb9f5de6cf73af0b6e92329540 368B
12c961e65331b44b4af7f6b1162841f9e24b0f 279B
13fc60404b91e398a37200c4a77b645cfd9586 75KB
145fef0bb89b0396a34ae5d923c8f35e036291 305B
1463f509c2c8311df58337f075792d2c8ac13b 857B
146c62f6a25ba858c61a09f50a8280b3db1935 326B
14b28f8d5b7cc0ff576ed6e78106a85ec76f0c 202B
15876edb054fe2149e350e0299c91e90c3bbe5 2KB
15d4dbcb9f96f390f893773627cf201e62d877 78B
162195fe9dafbc7e5e02f4306c1d9f113eba5c 234B
169fe852a229c2e2b07c698672b0d3c07affda 1KB
171453185f9dd01e080c47c4ce6033882dc24c 77B
17a87810077f01ef7fcd71ed5887d75c99c46b 233B
18704bc6400f194e70a41e646064b218973b1a 966B
18e9d6c1f36df198864839d75a3398764bdc50 28KB
1985547f3897cf29d7c222585db6dbe0a4fa4d 433B
1a357a392d64a73feadf06bdb7c21a846be977 35KB
1ae1963bd300eb1d7724749b046555c77b52b1 781B
1e50c8bc4e7f8e71f2d33c018561400752e075 197B
1e781e5a886b65ea53f9163e6c12d4df4d63f4 365B
1ec0f36e4f73b8efa40bd6f604fe80d286db70 109KB
2200c51ee924f0b91132e5cd3737fadcf40ef8 3KB
22569a8ffdad94c1897123d8e2be58551efb8d 685B
23444bedc7ab0e0a12b220db1b9e571a024b3f 2KB
23994f415654cea2c9ed78fff985c4bc3ea144 525B
24482a9e02304ebf182487dada2f9e48a7ec62 78B
264980e35eff77800180a32a5220a64e8881de 77B
277bcdd75361d65b8f02e215ff371d6dfc822d 241B
2812daed42ee19dace4f988ad8d2faf5c293cd 255B
2819a753ff7ca29b49196afc3691e5c7416965 76B
2a4c871fc021ce79637c38396c4aafa37d5b4a 272B
2ab9d985c20018a0c97b93d2148ac1ffe588a5 300B
2becb8d575787ce4382ed43123b144f4a202ed 1KB
2cb46b151ee6c8adabdef264c6eddb22f3a127 75B
2d66c2504386fd0c3a0d3cdf9b1f4b17aace97 64KB
2d77e38643d908dacb6752f8b6c8982340bb4a 290B
2e4f9d3050b514f9b10f1f978ee4d220470522 233B
3081fa2c9a5657965cc8fdd67505513f936b6e 234B
30a434975eb6efd1efa79727332e73251d25da 258B
31b04d7fd42bc36eacde08d49b63113f353459 100B
31f1c28e4f0afc55b0933f53e32c444752349e 44B
3304b0c850de939b7551820d8cfb4e5cb469b0 957B
337d0d1b07d95825c56b8783d6d8de9f5b79aa 54B
33a9556c40df290583bf7fba69d911f1b3f3f0 83B
34e502eb6759d6f9831cd5d9a47d6c788a7bb9 52B
3534216eacc5a30ab67f7bb5cc54eb42c87b3a 26KB
367e5fc3a40735d10992a61585ec6d87e971e0 49B
37a7373834a2d36f33c11e10f0f018c8aa6fa4 1KB
37b88f9f46318c41938681be7ecbff2174c56f 228B
38037f024a88fc9ca583320a280c43f47efadd 180B
393847271d01522ae886c0c1f12bfac9b0a1fd 2KB
3bcc503860eaed1b78b79ba4f255c9a5e16cba 574B
3dda9f19024c6afb8e3ede6fb1b21b00823a2d 472B
3de4b487ec908b2cb4055a4c582882b445d61e 49B
3e5f62c5d097ef3e8c5c81180b7c8867472724 82B
3f0d523561c523476e5330a0d67eb7318cb187 2KB
3fae933598488efd70f1c83f4b6a135b8051b2 76B
40beb041f55ff78218f283c473caa03960bb83 145B
41b872a7523da699b3819a7336fd5f90be4f44 448B
41c5d838b6302615c4907149e2b365ed7bd679 1KB
4405fa7bf79b33481d1cef19768b82ac304c27 200B
440755a5d265a291b06f420515b23915a23daa 305B
451f25cdfddea2168aba8550bac494c1383604 299B
452466fa96e3460e7f324c1c9585b52d2d5001 78B
4672f741448f55e9896f504e959c1613c7378f 2KB
46cb00e1f16703803b5bc5b4b743669ed359b0 85B
4729a60ca099601ac3db2a557abbddb356123b 343B
477a5af602a33c6d0e95a5ff14e2d4b783ca44 335B
4818ca945bc839953004341f08298f18ae3570 316B
4840671716aab65e48c712dbb59ffc18f0d843 75B
48de970f635cb8fd83c23f7810fc445166eac5 1KB
48ec0af826a06368ecb8b7185dd0ff5e1fe0a1 88B
497d67799b7983ce9545fbd8040b90a0cfe0e2 73B
49e949d2d21ba64ebec478c0459694a00cfbd0 198B
4a6d1c34ad3492415b6624925ecfce1a79a59b 232B
4b450c24a5c775ced9b51f651b31aee2268558 763B
4bc22806c500d8f027d019313c154b5787a05f 213B
4ce11cc5a7252577b7b3e25523cd3ed692a7ae 74B
4d2ffe5e0d3a2bffb15663782da1d1577ad1d8 394B
4faf1d384a752901ecf366666d5a22be39abbf 423B
50d6419f9da9a16b95d1d2b1fcfca98cd19de4 35KB
514c689487f997dfbca2f208078492ecf803d8 50KB
共 585 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
好教员好
- 粉丝: 1148
- 资源: 40
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功