管理员编码的name是usercode,管理员名称的name是username
第1个回答 2015-01-15
第一步是:你要创建一个web前端
为了方便我的书写,我的代码密码为password,请你原谅
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登陆</title>
<script type="text/javascript">
function checkInput() {
var oUsername = document.loginForm.username.value;
if(oUsername == "") {
alert("没有输入姓名!");
oUsername.select();
return false;
}
var oUsercode = document.loginForm.password.value;
if(oPassword == "") {
alert("请输入密码!");
oPassword.select();
return false;
}
return true;
}
</script>
</head>
<body>
<form name="loginForm" action="doLogin.jsp" method="post" onsubmit="return checkInput()">
用户名:<input name="username" type="text" /> <br/><br/>
密码:<input name="password" type="password" /> <br/><br/>
<input type="submit" value="登陆" />
</form>
</body>
</html>
第二步是dologin.jsp进行服务端验证,然后调用dao层。dao层是调用数据库里的内容的
<%@page import="com.dao.UserDao"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//处理post请求参数的乱码
request.setCharacterEncoding("utf-8");
//接收用户输入的用户和密码
String strUsername = request.getParameter("username");
String strPassword = request.getParameter("password");
//服务端验证
if(strUsername == null || "".equals(strUsername.trim())) {
out.println("<script>alert('用户名不能为空');window.location.href='login.jsp'</script>");
return;
}
if(strPassword == null || "".equals(strPassword.trim())) {
out.println("<script>alert('密码不能为空!');window.location.href='login.jsp'</script>");
return;
}
//用户通过服务端的jsp验证后,然后调用服务端的数据库来进行比对。判断用户的输入的信息是否正确
//调用dao层方法
UserDao userDao = new UserDao();
boolean result = userDao.checkLogin(strUsername, strPassword);
if (result) {
response.sendRedirect("index.jsp");
} else {
out.println("<script>alert('登陆失败');window.location.href='login.jsp'</script>");
}
%>
第三步是dao层了,dao层有连接数据和关闭数据库
package com.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ResourceBundle;
//连接数据库和关闭数据库的资源的功能
public class BaseDao {
private ResourceBundle rb = ResourceBundle.getBundle("db");
/**
* 获得数据库的连接
* @return
*/
public Connection getConn() {
Connection conn = null;
try {
Class.forName(rb.getString("driver"));
conn = DriverManager.getConnection(rb.getString("url"), rb.getString("dbname"), rb.getString("dbpass"));
} catch (ClassNotFoundException e) {
e.printStackTrace();
}catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
/**
* 关闭资源
*/
public void closeAll(ResultSet rs, PreparedStatement pstmt, Connection conn) {
if(rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(pstmt != null) {
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
try {
if(conn != null && !conn.isClosed()) {
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
第四步是UserDao的java文件
package com.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import com.entity.User;
public class UserDao extends BaseDao{
/**
* 根据用户名和密码验证成功登陆或失败
* param username
* param password
* return 登陆成功 true 失败false
*/
public boolean checkLogin(String username, String password) {
boolean result = false;
Connection conn = getConn();
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
conn = getConn();
String sql = "select * from emp where username=? and password=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, username);
pstmt.setString(2, password);
rs = pstmt.executeQuery();
if(rs.next()) {
result = true;
}
} catch (Exception e) {
e.printStackTrace();
} finally {
closeAll(rs, pstmt, conn);
/*rs.close();
pstmt.close();
conn.close();*/
}
return result;
}
}
第五步是编辑db.properties文件
driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:orcl
dbname=scott
dbpass=tiger
为了方便我的书写,我的代码密码为password,请你原谅
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登陆</title>
<script type="text/javascript">
function checkInput() {
var oUsername = document.loginForm.username.value;
if(oUsername == "") {
alert("没有输入姓名!");
oUsername.select();
return false;
}
var oUsercode = document.loginForm.password.value;
if(oPassword == "") {
alert("请输入密码!");
oPassword.select();
return false;
}
return true;
}
</script>
</head>
<body>
<form name="loginForm" action="doLogin.jsp" method="post" onsubmit="return checkInput()">
用户名:<input name="username" type="text" /> <br/><br/>
密码:<input name="password" type="password" /> <br/><br/>
<input type="submit" value="登陆" />
</form>
</body>
</html>
第二步是dologin.jsp进行服务端验证,然后调用dao层。dao层是调用数据库里的内容的
<%@page import="com.dao.UserDao"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//处理post请求参数的乱码
request.setCharacterEncoding("utf-8");
//接收用户输入的用户和密码
String strUsername = request.getParameter("username");
String strPassword = request.getParameter("password");
//服务端验证
if(strUsername == null || "".equals(strUsername.trim())) {
out.println("<script>alert('用户名不能为空');window.location.href='login.jsp'</script>");
return;
}
if(strPassword == null || "".equals(strPassword.trim())) {
out.println("<script>alert('密码不能为空!');window.location.href='login.jsp'</script>");
return;
}
//用户通过服务端的jsp验证后,然后调用服务端的数据库来进行比对。判断用户的输入的信息是否正确
//调用dao层方法
UserDao userDao = new UserDao();
boolean result = userDao.checkLogin(strUsername, strPassword);
if (result) {
response.sendRedirect("index.jsp");
} else {
out.println("<script>alert('登陆失败');window.location.href='login.jsp'</script>");
}
%>
第三步是dao层了,dao层有连接数据和关闭数据库
package com.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ResourceBundle;
//连接数据库和关闭数据库的资源的功能
public class BaseDao {
private ResourceBundle rb = ResourceBundle.getBundle("db");
/**
* 获得数据库的连接
* @return
*/
public Connection getConn() {
Connection conn = null;
try {
Class.forName(rb.getString("driver"));
conn = DriverManager.getConnection(rb.getString("url"), rb.getString("dbname"), rb.getString("dbpass"));
} catch (ClassNotFoundException e) {
e.printStackTrace();
}catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
/**
* 关闭资源
*/
public void closeAll(ResultSet rs, PreparedStatement pstmt, Connection conn) {
if(rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(pstmt != null) {
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
try {
if(conn != null && !conn.isClosed()) {
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
第四步是UserDao的java文件
package com.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import com.entity.User;
public class UserDao extends BaseDao{
/**
* 根据用户名和密码验证成功登陆或失败
* param username
* param password
* return 登陆成功 true 失败false
*/
public boolean checkLogin(String username, String password) {
boolean result = false;
Connection conn = getConn();
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
conn = getConn();
String sql = "select * from emp where username=? and password=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, username);
pstmt.setString(2, password);
rs = pstmt.executeQuery();
if(rs.next()) {
result = true;
}
} catch (Exception e) {
e.printStackTrace();
} finally {
closeAll(rs, pstmt, conn);
/*rs.close();
pstmt.close();
conn.close();*/
}
return result;
}
}
第五步是编辑db.properties文件
driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:orcl
dbname=scott
dbpass=tiger