初次尝试JSP+jdbc,按照书上的例子折腾了半天,就是连不上数据库。于是在网上找材料,终于发现,老的jar包与新版数据库直接不兼容。于是下了新的数据库jdbc包,试了一下,果然搞定。这里,把这个程序跟大家共享下,程序实现了网页登录界面上提取用户名与密码,然后与数据库中用户名密码对应,从而决定程序是否通过登录。
inc.jsp文件:
<%@ page import="java.sql.Connection"%> <%@ page import="java.sql.DriverManager"%> <%@ page import="java.sql.Statement"%> <%@ page import="java.sql.ResultSet"%> <%@ page import="java.sql.ResultSetMetaData"%> <% String drv = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/demo"; String usr = "nari"; String pwd = "nari"; %>
welcome.jsp文件:
<html> <body> welcome<br> </body> </html>
login_action.jsp文件:
<%@ include file="inc.jsp" %> <% String username = request.getParameter("username"); String password = request.getParameter("password"); if(username == null || password == null){ response.sendRedirect("index.jsp"); } boolean isValid = false; String sql = "select * from user where username='"+username+"'and password='"+password+"'"; out.println("===>"+sql); try{ Class.forName(drv).newInstance(); Connection conn = DriverManager.getConnection(url, usr,pwd); Statement stm = conn.createStatement(); ResultSet rs = stm.executeQuery(sql); if(rs.next())isValid = true; rs.close(); stm.close(); conn.close(); }catch(Exception e){ e.printStackTrace(); out.println(e); } if(isValid){ response.sendRedirect("welcome.jsp"); }else response.sendRedirect("index.jsp"); %> <% /* if(username.endsWith("a"))response.sendRedirect("welcome.jsp"); else response.sendRedirect("index.jsp"); */%>
index.jsp文件:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"https://www.jb51.net/"; %> <html> <head> <base href="<%=basePath %>"/> <title>My JSP 'login.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="description" content="This is my page"> </head> <body> miThis is my JSP page.<br> </body> </html> <form action="login_action.jsp" method="post"> <table> <tr> <td colspan="2">登录窗口</td> </tr> <tr> <td>用户名</td> <td><input type="text" size="10"/></td> </tr> <tr> <td>密码</td> <td><input type ="password" size="10"/></td> </tr> <tr> <td colspan="2"><input type="submit" value="登录"> <a href="https://www.jb51.net/register.jsp">注册新用户</a></td> </tr> </table> </form>