JSP学习-JSP访问数据库

通过index.jsp输入用户名、密码登录,跳转到check.jsp验证用户名、密码;

在Check.jsp中,访问数据库  login  ,查看输入的用户名、密码是否在数据库中匹配。

注意:这里使用的是Oracle数据库,要将Oracle的驱动放入项目指定目录,如图:

Index.jsp配置如下:

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html>
 4 <html>
 5 <head>
 6 <meta charset="UTF-8">
 7 <title>Insert title here</title>
 8 </head>
 9 <body>
10     <form action="check.jsp">
11         用户名:<input type="text" name="uname" ><br>
12         密码:<input type="password" name="upwd" ><br>
13         <input type="submit" value="登录" ><br>
14     
15     </form>
16 </body>
17 </html>

Check.jsp配置如下:

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!-- 注意JSP中import的写法 -->
 4 <%@ page import="java.sql.*" import="java.io.IOException"%>
 5 <!DOCTYPE html>
 6 <html>
 7 <head>
 8 <meta charset="UTF-8">
 9 <title>Insert title here</title>
10 </head>
11 <body>
12     <%
13         String URL = "jdbc:oracle:thin:@localhost:1521:ORCL";
14         String USERNAME = "scott";
15         String PWD = "tiger";
16         try {
17             Class.forName("oracle.jdbc.OracleDriver");
18         } catch (ClassNotFoundException e) {
19             // TODO Auto-generated catch block
20             e.printStackTrace();
21         }
22         // 与数据库建立连接
23         try (Connection connection = DriverManager.getConnection(URL, USERNAME, PWD);) {
24             String sql = "select count(*) from login where name=? and pwd=?";
25             PreparedStatement pstmt = connection.prepareStatement(sql); //预编译
26 
27             String name = request.getParameter("uname");
28             String pwd = request.getParameter("upwd");
29 
30             pstmt.setString(1, name);
31             pstmt.setString(2, pwd);
32             ResultSet rs = pstmt.executeQuery();
33 
34             int count = -1;
35             if (rs.next()) {
36                 count = rs.getInt(1);
37             }
38             if (count > 0) {
39                 out.println("登陆成功!");
40             } else {
41                 out.println("登陆失败");
42             }
43 
44         } catch (SQLException e) {
45             // TODO Auto-generated catch block
46             e.printStackTrace();
47         }
48     %>
49 </body>
50 </html>

扫描二维码关注公众号,回复: 9177564 查看本文章

 

 
 
 

猜你喜欢

转载自www.cnblogs.com/gilgamesh-hjb/p/12313203.html