JSP访问数据库
- JSP(全称JavaServer Pages)就是在html中嵌套的java代码,因此java代码可以写在jsp中(<% … %>)
- 导包操作:
类型 | 具体实现 2 |
---|
java项目 | (1)Jar包复制到工程中 (2)右键该Jar包:build path → add tp build Path |
web项目 | Jar包复制到WEB-INF/lib |
- 核心:就是将java中的JDBC代码,复制到JSP中的<% … %>
- 代码(验证登录信息):
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<%@ page import="java.sql.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String URL = "jdbc:mysql://localhost:3306/test";
String USERNAME = "root";
String PWD = "123456";
Connection connection = null;
Statement stmt = null;
PreparedStatement pstmt=null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(URL, USERNAME, PWD);
stmt = connection.createStatement();
String name = request.getParameter("uname");
String pwd = request.getParameter("upwd");
String sql = "select count(*) from login where name='"+name+"' and pwd='"+pwd+"' ";
rs = stmt.executeQuery(sql);
int count= -1;
if(rs.next()) {
count = rs.getInt(1);
}
if(count>0) {
out.println("登录成功");
}else{
out.println("登录失败");
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
}
finally {
try {
if(rs!=null) rs.close();
if(stmt!=null) stmt.close();
if(pstmt!=null) pstmt.close();
if(connection!=null) connection.close();
}catch(SQLException e) {
e.printStackTrace();
}
}
%>
</body>
</html>