jsp连接oracle数据库并实现简单登录功能,来自网络,部分修改。(亚信联创实习)
2013-05-30 20:41
771 查看
共三个页面:login.jsp、loginconf.jsp、loginsucess.jsp
用户首先打开login.jsp输入用户名及密码,此时login.jsp会将输入的用户名及密码提交到loginconf.jsp
loginconf.jsp通过初始化连接数据库,对用户名及密码进行判断。如果正确则跳转到loginsucess.jsp
否则回到login.jsp页面并提示用户,用户名或者密码错误!
如果用户直接打开。loginconf.jsp或者loginsucess.jsp则会通过判断session来确定用户是否登录成功了,防止黑客在没有登录的情况下就如管理界面。
如果未登录则自动跳转到登录界面!
login.jsp 代码如下:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<center>
<titl><h1>JDBC+JSP 登录程序</h1></title>
<hr>
<br>
<form action="loginconf.jsp" method="post">
<table width="1">
<tr>
<td colspan="2">用户登录</td>
</tr>
<tr>
<td >用户名:</td>
<td><input type="text" name="id"></td>
</tr>
<tr>
<td>密 码:</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td><input type="submit" value="登录"></td>
<td><input type="reset" value="重置"></td>
</tr>
</table>
</form>
<%
// 判断是否有错误信息,如果有则打印
// 如果没有此段代码,则显示时会直接打印null
if(request.getAttribute("err")!=null)
{
%>
<h4><font color="red"><%=request.getAttribute("err")%></font></h4>
<%
}
%>
</center>
</head>
<body>
</body>
</html>
loginconf.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import = "java.sql.*"%>
<html>
<head>
<center>
<titl><h1>JDBC+JSP 登录程序</h1></title>
<hr>
<br>
</center>
</head>
<body>
<%--
使用JDBC连接ORACLE数据库
--%>
<%!
String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
String DBURL = "jdbc:oracle:thin:@127.0.0.1:1521:YK";
String DBNAME = "scott";
String DBPASS = "tiger";
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
%>
<%
boolean flag = false;
//接收参数
String name = request.getParameter("id");
String password = request.getParameter("password");
%>
<%
//连接数据库
String sql = "SELECT name from login where name=? and password=?";
try {
Class.forName(DBDRIVER);
conn = DriverManager.getConnection(DBURL,DBNAME,DBPASS);
pstmt = conn.prepareStatement(sql);//防止sql注入攻击
pstmt.setString(1,name);
pstmt.setString(2,password);
rs = pstmt.executeQuery();
if(rs.next()) {
out.println(rs.getString("name"));
flag = true;
session.setAttribute("uname",rs.getString("name"));
} else {
request.setAttribute("err","用户名或密码错误!");
}
rs.close();
pstmt.close();
conn.close();
}catch (Exception e) {
out.println(e);
}
%>
<%
//跳转
if(flag) {
//如果用户登录成功,则跳转到欢迎界面
//否则提示用户登录失败
%>
<jsp:forward page="loginsuccessf.jsp" />
<%
}
else {
%>
<jsp:forward page="login.jsp"/>
<%
}
%>
</body>
</html>
loginsucess.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<head>
<center>
<titl><h1>JDBC+JSP 留言管理程序</h1></title>
<hr>
<br>
</center>
</head>
<body>
<%
if(session.getAttribute("uname")!=null) {
//用户已登录成功
%>
<center><h2>欢迎<font color="red" size=12><%=session.getAttribute("uname")%></font>进入留言管理系统
</h2></center>
<%
}
else {
//未登录,提示用户登录
response.setHeader("refresh","2;URL=login.jsp");
%>
您还未登录,2秒将后自动跳转到登录界面<br>
如果没有自动跳转,请<a href="login.jsp"><font color="greed">点击</font></a>这里登录!<br>
<%
}
%>
</body>
</html>
用户首先打开login.jsp输入用户名及密码,此时login.jsp会将输入的用户名及密码提交到loginconf.jsp
loginconf.jsp通过初始化连接数据库,对用户名及密码进行判断。如果正确则跳转到loginsucess.jsp
否则回到login.jsp页面并提示用户,用户名或者密码错误!
如果用户直接打开。loginconf.jsp或者loginsucess.jsp则会通过判断session来确定用户是否登录成功了,防止黑客在没有登录的情况下就如管理界面。
如果未登录则自动跳转到登录界面!
login.jsp 代码如下:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<center>
<titl><h1>JDBC+JSP 登录程序</h1></title>
<hr>
<br>
<form action="loginconf.jsp" method="post">
<table width="1">
<tr>
<td colspan="2">用户登录</td>
</tr>
<tr>
<td >用户名:</td>
<td><input type="text" name="id"></td>
</tr>
<tr>
<td>密 码:</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td><input type="submit" value="登录"></td>
<td><input type="reset" value="重置"></td>
</tr>
</table>
</form>
<%
// 判断是否有错误信息,如果有则打印
// 如果没有此段代码,则显示时会直接打印null
if(request.getAttribute("err")!=null)
{
%>
<h4><font color="red"><%=request.getAttribute("err")%></font></h4>
<%
}
%>
</center>
</head>
<body>
</body>
</html>
loginconf.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import = "java.sql.*"%>
<html>
<head>
<center>
<titl><h1>JDBC+JSP 登录程序</h1></title>
<hr>
<br>
</center>
</head>
<body>
<%--
使用JDBC连接ORACLE数据库
--%>
<%!
String DBDRIVER = "oracle.jdbc.driver.OracleDriver";
String DBURL = "jdbc:oracle:thin:@127.0.0.1:1521:YK";
String DBNAME = "scott";
String DBPASS = "tiger";
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
%>
<%
boolean flag = false;
//接收参数
String name = request.getParameter("id");
String password = request.getParameter("password");
%>
<%
//连接数据库
String sql = "SELECT name from login where name=? and password=?";
try {
Class.forName(DBDRIVER);
conn = DriverManager.getConnection(DBURL,DBNAME,DBPASS);
pstmt = conn.prepareStatement(sql);//防止sql注入攻击
pstmt.setString(1,name);
pstmt.setString(2,password);
rs = pstmt.executeQuery();
if(rs.next()) {
out.println(rs.getString("name"));
flag = true;
session.setAttribute("uname",rs.getString("name"));
} else {
request.setAttribute("err","用户名或密码错误!");
}
rs.close();
pstmt.close();
conn.close();
}catch (Exception e) {
out.println(e);
}
%>
<%
//跳转
if(flag) {
//如果用户登录成功,则跳转到欢迎界面
//否则提示用户登录失败
%>
<jsp:forward page="loginsuccessf.jsp" />
<%
}
else {
%>
<jsp:forward page="login.jsp"/>
<%
}
%>
</body>
</html>
loginsucess.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<head>
<center>
<titl><h1>JDBC+JSP 留言管理程序</h1></title>
<hr>
<br>
</center>
</head>
<body>
<%
if(session.getAttribute("uname")!=null) {
//用户已登录成功
%>
<center><h2>欢迎<font color="red" size=12><%=session.getAttribute("uname")%></font>进入留言管理系统
</h2></center>
<%
}
else {
//未登录,提示用户登录
response.setHeader("refresh","2;URL=login.jsp");
%>
您还未登录,2秒将后自动跳转到登录界面<br>
如果没有自动跳转,请<a href="login.jsp"><font color="greed">点击</font></a>这里登录!<br>
<%
}
%>
</body>
</html>
相关文章推荐
- ajax 登录功能简单实现(未连接数据库)
- jsp连接数据库实现用户登录功能
- jsp+servlet+ajax+oracle数据库-实现简单的登陆、注册、找回密码功能(与Oralce数据库连接)
- servlet+jsp+jdbc实现简单的登录功能(所用平台:win7+Eclipse+tomcat+mysql)
- vue.js实现用户评论、登录、注册、及修改用户部分信息功能代码。
- jsp+servlet+mysql 实现简单的银行登录转账功能
- asp.net连接sql server2005实现简单的登录功能
- Java程序连接oracle数据库,并实现注册与登录功能
- jsp实现简单的登录与注销功能
- 一个使用监听器模式实现的J2ME网络编程框架,包括一个简单的登录功能实现(含源代码)
- jsp连接数据库实现用户登录功能
- jsp实现连接数据库、查询、插入、修改功能的javaBean代码
- JSP+Servlet培训班作业管理系统[1]-登录功能的简单实现
- 使用JSP连接ORACLE数据库做的一个简单登录框架
- ajax 登录功能简单实现(未连接数据库)
- 一个使用监听器模式实现的J2ME网络编程框架,包括一个简单的登录功能实现(含源代码)
- IOS开发简单登录LoginViewController、注册RegisterViewController、UcenterViewController功能实现方法
- JSP作业2 - 利用html实现简单的用户登录注册界面
- 简单的jsp登录页面跳转功能
- JAVA_WEB项目(结合Servlet+jsp+ckEditor编辑器+jquery easyui技术)实现新闻发布管理系统第三篇:新闻发布,新闻修改,新闻删除功能的实现