宁波网站推广怎么做,高台县建设局网站,鹤壁市淇滨区建设局网站,wordpress个人简历实验十一 Servlet(二)
【实验目的】 1#xff0e;了解Servlet运行原理 2#xff0e;掌握Servlet实现方式
【实验内容】 改造实验10#xff0c;引入数据库#xff0c;创建用户表#xff0c;包括用户名和密码#xff1a;客户端通过login.jsp发出登录请求#xff0c;请求…实验十一 Servlet(二)
【实验目的】 1了解Servlet运行原理 2掌握Servlet实现方式
【实验内容】 改造实验10引入数据库创建用户表包括用户名和密码客户端通过login.jsp发出登录请求请求提交到loginServlet处理。如果用户名和密码跟用户表匹配则视为登录成功跳转到loginSuccess.jsp页面显示“欢迎你”用户名否则跳转到loginFail.jsp页面显示“登录失败”通过超链接返回login.jsp。 说明把用户名和密码跟用户表匹配的功能放到loginServlet并实现相应请求转发或跳转即可。可以暂时不考虑创建其它java类。 login.jsp
% page contentTypetext/html;charsetUTF-8 languagejava %
html
headtitleTitle/title
/head
body
form actionloginServlet methodpostlabel forusername用户名/labelinput typetext idusername nameusername requiredbrlabel forpassword密码/labelinput typepassword idpassword namepassword requiredinput typesubmit value登陆
/form
/body
/htmlloginServlet
package servlet;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.*;
import java.sql.*;
//使用WebServlet注解
WebServlet(name loginServlet )
public class loginServlet extends HttpServlet {private static final String url jdbc:mysql://localhost:3306/test9;protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//从请求中获取用户名stuId和密码stuPwdString stuId request.getParameter(username);String stuPwd request.getParameter(password);try {// 加载和注册JDBC驱动Class.forName(com.mysql.jdbc.Driver);Connection conn DriverManager.getConnection(url, root, 123456);String sql select * from password where stuId ? and stuPwd ?;//创建PreparedStatement对象这有助于防止SQL注入攻击PreparedStatement stmt conn.prepareStatement(sql);//使用setString方法设置SQL查询中的参数值stmt.setString(1,stuId);stmt.setString(2,stuPwd);ResultSet rs stmt.executeQuery();if (rs.next()) {//从结果集中获取用户名String stuname rs.getString(stuId);//将用户名保存到会话中HttpSession session request.getSession();session.setAttribute(username,stuname);//重定向到loginSuccess.jsp页面response.sendRedirect(loginSuccess.jsp);} else {//重定向到loginFail.jsp页面response.sendRedirect(loginFail.jsp);}rs.close();stmt.close();conn.close();} catch (SQLException se) {se.printStackTrace();} catch (Exception e) {e.printStackTrace();}}
}loginSuccess.jsp
% page contentTypetext/html;charsetUTF-8 languagejava %
html
headtitle登陆成功/title
/head
bodyh4欢迎你${sessionScope.username}/h4
/body
/htmlloginFail.jsp
% page contentTypetext/html;charsetUTF-8 languagejava %
html
headtitle登陆失败/title
/head
bodyh4登录失败/h4a hreflogin.jsp返回登陆页面/a
/body
/html结果 登录成功
登录失败
[实验心得] 通过本次Servlet实验理解了Servlet的运行原理。