<%!
//定义数据库驱动程序 //public static final String DBDRIVER = "org.gjt.mm.mysql.Driver"; public static final String DBDRIVER = "com.mysql.jdbc.Driver"; //数据库连接地址 public static final String DBURL = "jdbc:mysql://localhost:3306/test"; public static final String DBUSER = "root"; public static final String DBPASS = "123"; %> <% Connection conn = null; //声明数据库连接对象 PreparedStatement pstmt = null; //声明数据库操作 ResultSet rs = null; //声明数据库结果集 boolean flag = false; //定义标志位 String name = null; %> <% //JDBC操作会抛出异常,使用try...catch处理 try { Class.forName(DBDRIVER); //加载驱动程序 conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS); //取得数据库连接 //编写要使用的SQL语句,验证用户id和密码,如果正确,则取出真实姓名 String sql = "SELECT name FROM user WHERE userid = ? AND password = ?"; pstmt = conn.prepareStatement(sql); //实例化数据库操作对象 //设置查询所需要的内容 pstmt.setString(1, request.getParameter("id")); pstmt.setString(2, request.getParameter("password")); rs = pstmt.executeQuery(); //执行查询 if (rs.next()) {//如果可以查询到,则表示合法用户 name = rs.getString(1);//取出真实姓名 flag = true; } } catch (Exception e) { System.out.println(e); } finally { try { rs.close();//关闭查询对象 pstmt.close();//关闭操作对象 conn.close();//关闭数据库连接 } catch (Exception e) { } } %> <% if (flag) {//登录成功,跳转到成功页 %> <jsp:forward page="login_success.jsp"> <jsp:param value="<%=name%>" name="uname"/> </jsp:forward> <% } else { %> <jsp:forward page="login_failure.html" /> <% } %>