jsp+JavaBEAN进行一个简单的登录数据库SQL
小弟初学JSP,想做一个简单登录,在JSP里面调用JAVABEAN,用的eclipse,在eclipse里面测试连接数据库能通过,在JSP不调用JAVABEAN连接数据库也能通过,但是2着结合就出问题了。下面是我的代码:
package opendb;
import java.sql.*;
public class opendb
{
String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:ZHHAO";
Connection conn=null;
ResultSet rs=null;
public opendb()
{
try{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("testJDBC():"+e.getMessage());
}
}
public ResultSet executeQuery(String testJDBC)
{
rs=null;
try{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(testJDBC);
}
catch(SQLException ex)
{
System.err.println("aq.executeQuety:"+ex.getMessage());
}
return rs;
}
}
JSP代码:
<%@page language="java" import="java.sql.*"%>
<jsp:useBean id="RegisterBean" scope="page" class="opendb.opendb"/>
<%
String name1=request.getParameter("username");
String pwd1=request.getParameter("password");
String sql="select * from USER1 where username='"+name1+"' and password='"+pwd1+"'";
ResultSet rs=RegisterBean.executeQuery(sql);
if(rs.next())
{
rs.close();
session.putValue("username",name1);
%>
<script language=javacript>
window.location="info.jsp?str=haha""
</script>
<%
}
else{
rs.close();
session.putValue("login_message","Error on Login");
%>
<script language=javacript>
window.location="info.jsp?str=shibai""
</script>
<%
}
%>
</body>
</html>
错误显示:
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:358)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause
java.lang.NullPointerException
org.apache.jsp.login_jsp._jspService(login_jsp.java:58)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
note The full stack trace of the root cause is available in the Tomcat logs.
package opendb;
import java.sql.*;
public class opendb
{
String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:ZHHAO";
Connection conn=null;
ResultSet rs=null;
public opendb()
{
try{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("testJDBC():"+e.getMessage());
}
}
public ResultSet executeQuery(String testJDBC)
{
rs=null;
try{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(testJDBC);
}
catch(SQLException ex)
{
System.err.println("aq.executeQuety:"+ex.getMessage());
}
return rs;
}
}
JSP代码:
<%@page language="java" import="java.sql.*"%>
<jsp:useBean id="RegisterBean" scope="page" class="opendb.opendb"/>
<%
String name1=request.getParameter("username");
String pwd1=request.getParameter("password");
String sql="select * from USER1 where username='"+name1+"' and password='"+pwd1+"'";
ResultSet rs=RegisterBean.executeQuery(sql);
if(rs.next())
{
rs.close();
session.putValue("username",name1);
%>
<script language=javacript>
window.location="info.jsp?str=haha""
</script>
<%
}
else{
rs.close();
session.putValue("login_message","Error on Login");
%>
<script language=javacript>
window.location="info.jsp?str=shibai""
</script>
<%
}
%>
</body>
</html>
错误显示:
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:358)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause
java.lang.NullPointerException
org.apache.jsp.login_jsp._jspService(login_jsp.java:58)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
note The full stack trace of the root cause is available in the Tomcat logs.
...全文
相关推荐
Jsp+Servlet+JavaBean+JDBC简单登录实例
基于Jsp+Servlet+JavaBean+JDBC实现登录功能,简单实例
jsp+servlet+javabean jdbc连接数据库 用户登录
适合首次接触jdbc数据库连接的初学者 完全代码 可运行
基于JSP+JavaBean+Mysql+JDBC+Servlet实现javaWeb登录注册
JSP+JavaBean+Mysql+JDBC+Servle,完美实现登录注册功能,实现密码箱功能
基于JSP+Servlet+JavaBean实现的图书管理系统
个人学习Java时导师要求的一个小项目,供大家参考参考,希望对java学习者有所帮助
基于JSP+MySQL的登录注册系统开发实战
JavaBean最基本的规则之一就是属性私有化。所有成员变量必须声明为private,以防止外部直接访问和修改,确保数据封装的安全性。这是面向对象设计中“封装”原则的体现,有助于隐藏内部状态变化细节,降低系统各部分之间的依赖强度。与此同时,每一个私有属性都应配备一对公共的访问器方法:getter用于读取值,setter用于设置值。命名规则严格遵循驼峰命名法并去掉首字母前缀get或set后的剩余部分对应字段名。


Web 开发
