首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

这是小弟我的登录页面代码,怎样用jsp,java写一个登录判断页面?要连接数据库的

2012-09-13 
这是我的登录页面代码,怎样用jsp,java写一个登录判断页面?要连接数据库的。%@ page languagejava conte

这是我的登录页面代码,怎样用jsp,java写一个登录判断页面?要连接数据库的。
<%@ page language="java" contentType="text/html; charset=utf-8"
  pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>请登录</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="login.jsp">
<p align="center">用户登录</p>
<p align="center">用户名
  <label>
  <input type="text" name="userName" />
  </label>
</p>
<p align="center">密码
  <label>
  <input type="password" name="Password" />
  </label>
</p>
<p align="center">
  <label>
  <input type="submit" name="Submit" value="提交" />
  </label>
</p>

[解决办法]

Java code
index.jsp<%@ page language="java" contentType="text/html; charset=utf-8"  pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>登录</title></head><body><form id="form1" name="form1" method="post" action="login.jsp"><p align="center">用户登录</p><p align="center">用户名  <label>  <input type="text" name="userName" />  </label></p><p align="center">密码:  <input type="password" name="Password" /></p><p align="center">  <input type="submit" name="Submit" value="提交" /></p>login.jsp<%@ page language="java" contentType="text/html; charset=utf-8"  pageEncoding="utf-8"%><%@ page  import="com.mysql.jdbc.*,java.sql.Connection, java.sql.DriverManager,java.sql.PreparedStatement,java.sql.ResultSet " %><html><body><%    String username = request.getAttribute("userName") ;    String pass = request.getAttribute("password") ;    Class.forName("com.mysql.jdbc.Driver"); //加载驱动    Connection conn = DriverManager.getConnection("jdbc:mysql://192.168.0.44:3306/javassdb",             "root","root");//创建连接         String sql ="select  id , username,  email , password  from tbl_User where username = " + username + " and password=" + pass;    PreparedStatement pstmt = null ;    ResultSet rs = null ;    boolean flag = false ;    try{        pstmt = conn.prepareStatement(sql) ; //        rs  = pstmt.executeQuery() ;//查询        while(rs.next()){ //遍历查询结构,现实在页面中                flag = true ;                break ;        }    }catch(Exception e){        e.printStackTrace();    }finally{        try{            if (rs != null) rs.close() ;            if (pstmt != null) pstmt.close() ;            if (conn != null) conn.close() ;        }catch(Exception e){            e.printStackTrace() ;        }    }    if (flag){                request.getRequestDispatcher("welcome.jsp").forward(request, response) ;        }else{          request.getRequestDispatcher("index.jsp").forward(request, response) ;        }%></body></html>welcome.jsp<%@ page language="java" contentType="text/html; charset=utf-8"  pageEncoding="utf-8"%><html><head><title>欢迎使用</title></head><body>    欢迎:<%=request.getAttribute("username")%></body></html> 


[解决办法]
下面是我修改后的代码,我在本地已经测试了

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ page import="com.mysql.jdbc.*,java.sql.Connection, java.sql.DriverManager,java.sql.PreparedStatement,java.sql.ResultSet " %>
<html>
<body>
<%
String username = (String)request.getParameter("username") ;
String pass = (String)request.getParameter("password") ;
Class.forName("com.mysql.jdbc.Driver"); //加载驱动
Connection conn = DriverManager.getConnection("jdbc:mysql://192.168.0.44:3306/javassdb",
"root","root");//创建连接

String sql ="select id , username, email , password from tbl_User where username = '" + username + "' and password='" + pass+"'";
PreparedStatement pstmt = null ;
ResultSet rs = null ;
boolean flag = false ;
try{
pstmt = conn.prepareStatement(sql) ; //
rs = pstmt.executeQuery() ;//查询
while(rs.next()){ //遍历查询结构,现实在页面中
System.out.println("ddd");
flag = true ;
break ;
}
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if (rs != null) rs.close() ;
if (pstmt != null) pstmt.close() ;
if (conn != null) conn.close() ;
}catch(Exception e){
e.printStackTrace() ;
}
}
if (flag){

request.getRequestDispatcher("welcome.jsp").forward(request, response) ;
}else{
request.getRequestDispatcher("index.jsp").forward(request, response) ;
}
%>
</body>
</html>


[解决办法]
这个代码是正确的,我已经测试过了,你把你的那个sql语句输出一下,看你得到的用户名和密码对不? 还有就是你注册时你确定你新注册的用户已经写入数据库,你的用户名和密码中有没有中文?

热点排行