java无法get出数据_Java WEB 参数正常,各项正常,无法从数据库获取结果?

c520e1b190745ca1eaa68c37d408252b.png

这是数据库

servlet代码

那个currentUser怎么查都是null。。。

// 从request出获取要查询的数据并封装

String userName = request.getParameter("userName");

String password = request.getParameter("password");

if (userName == null || userName.length() == 0 || password == null || password.length() == 0) {

request.setAttribute("error", "用户名或密码不能为空!");

request.getRequestDispatcher("userLogin.jsp").forward(request, response);

}

User user = new User(userName, password);

// 查询并生成currentUser与currentStudent

User currentUser = null;

UserDao userDao = DaoFactory.createUserDao();

Student currentStudent = null;

StudentDao studentDao = DaoFactory.createStudentDao();

try {

currentUser = userDao.selectUser(user);

// 验证

if (currentUser != null) {

//currentUser不为空,查询对应的currentStudent

currentStudent = studentDao.selectStudent(currentUser);

// 在session中保存currentUser与currentStudent

HttpSession session = request.getSession();

session.setAttribute("currentUser", currentUser);

session.setAttribute("currentStudent", currentStudent);

response.sendRedirect("userMain.jsp");

} else {

// 提示错误信息,同时将错误信息返回,优化用户体验

request.setAttribute("error", "用户名或密码错误!");

request.setAttribute("userName", userName);

request.getRequestDispatcher("userLogin.jsp").forward(request, response);

}

} catch (SQLException e) {

e.printStackTrace();

} finally {

userDao.closeConn();

studentDao.closeConn();

}

标题文字

// 查找用户

public User selectUser(User user) throws SQLException {

User resultUser = null;

String sql = "select * from t_user where userName = ? and password = ?";

PreparedStatement pstmt = conn.prepareStatement(sql);

pstmt.setString(1, user.getUserName());

pstmt.setString(2, user.getPassword());

ResultSet rs = pstmt.executeQuery();

// 要找也只会找到一个,所以这边就用if了

//返回时带出id

if (rs.next()) {

resultUser = new User();

resultUser.setId(rs.getInt("id"));

resultUser.setUserName(rs.getString("userName"));

resultUser.setPassword(rs.getString("password"));

}

return resultUser;

debug模式截图

f28889b97cb3f6a496a740f8ce5a0982.png

11469cfed8738e25568e7f7ef13fe6ea.png

5142afc8cca9b6db923342507b1a696c.png

不开tomcat直接测试代码

public static void main(String[] args) throws SQLException {

User user = new User("testUser1", "123456");

UserDao userDao = DaoFactory.createUserDao();

User currentUser = userDao.selectUser(user);

System.out.println(currentUser.getId());

userDao.closeConn();

}

0cd15c8cd765087704e2a4d1fe99edc5.png

成功。。。。。。

在下已卒。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Java开发的员工考勤管理系统源码-Web版+数据库sql+项目说明+设计报告.zip 【资源介绍】 该项目是个人毕设项目,答辩评审分达到95分,代码都经过调试测试,确保可以运行!欢迎下载使用,可用于小白学习、进阶。 该资源主要针对计算机、通信、人工智能、自动化等相关专业的学生、老师或从业者下载使用,亦可作为期末课程设计、课程大作业、毕业设计等。 项目整体具有较高的学习借鉴价值!基础能力强的可以在此基础上修改调整,以实现不同的功能。 项目名:AttendanceSysWeb(员工考勤管理系统-Web版) 这是一套基于 SpringBoot + Vue.js 的前后端分离的员工考勤管理系统。某公司在软件研发与日常管理方面有着很成熟的管理方法,却没有一套效率高且方便的考勤系统,因此本系统意在帮助公司解决 **员工基本信息管理**、**员工上下班打卡**、**员工请假申请及请假审核**、**报表获取** 等问题,为公司对员工的考勤管理带来便利。 本系统主要有以下几个模块: - 考勤管理模块 - 员工与部门经理进行打卡签到签退 - 人事部门获取月度报表 - 请假管理模块 - 员工与部门经理管理自己的请假申请 - 部门经理与总经理查看人员的请假申请 - 请假审核模块 - 部门经理、总经理、人事部门对人员的请假申请进行审核 - 信息管理模块 - 人员查看自己的基本信息 - 人事部门管理人员的基本信息 ## 2. 技术栈 - 后端所用技术 - Java11 - SQL - Spring Boot - Spring Security - MyBatis - 前端所用技术 - HTML - CSS - JavaScript - Vue.js - Bootstrap - 开发工具 - Visual Studio Code:前端代码编辑 - Intellij IDEA:后端代码编辑及调试 - Chrome:前端调试 - Postman:接口测试 - MySQL:关系型数据库 - Astah:UML 建模环境 - Git/Gitee:代码版本控制 ## 5. 项目部署 - 本项目基于 Windows10 系统运行 ### 5.1 数据库部署 1. 确保 MySQL 已安装(v8.0.25)并启动服务。 2. 在 MySQL 中建立数据库 `attendance_system`。 3. 使用 MySQL 运行 `./sql/` 目录下的 `create_base_table.sql` 与 `create_authen_table.sql` 脚本,成功建立数据表。 4. 可使用 `show tables;` 命令查看 `attendance_system` 数据库下的数据表,正确情况应该有 **14** 张表。 ### 5.2 后端 SpringBoot 项目部署 1. 确保 Java 11 已安装并设置环境变量。 2. 使用 IDEA 打开后端项目根目录 `./back-end/AttendanceSysWeb/`,设置项目 JDK。 3. 修改 `src/resource/application-dev.yml` 文件下的 `spring.datasource.username` 与 `spring.datasource.password` 字段为自己本地 MySQL 的用户名与密码。 4. 运行 `DemoApplication.java`,项目运行在 8080 端口。 5.3 前端 Vue 项目部署 1. 确保已正确安装 Node.js (v12.16.1)并配置好环境变量,使用命令 `node -v` 查看是否正确安装。 2. 使用 cmd 打开前端项目根目录 `./front-end/AttendanceSysWeb/`。 3. 配置淘宝镜像 ```shell npm config set registry https://registry.npm.taobao.org npm config get registry ``` 第2条命令输结果应为:`https://registry.npm.taobao.org/` 4. 配置 npm 下载依赖位置(位置可自定义): ```shell npm config set cache "node-repos/cache" npm config set prefix "node-repos/prefix" ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值