求高手指导下,我数据库始终连接不上,麻烦看看
登录页面:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" buffer="0kb" autoFlush="true" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>登录页面</title>
<style type="text/css">
<!--
body {
background-image: url(img/bg1.jpg);
}
.STYLE6 {
font-size: 36px;
font-family: "新宋体";
}
-->
</style></head>
<body>
<p class="STYLE6"> </p>
<table width="1240" height="489" border="0" align="center">
<tr>
<td height="87" colspan="3" align="left" class="STYLE6" > 规章班前留题试问补充</td>
</tr>
<tr>
<td align="center"><form id="login" name="login" method="post" action="logDeal.jsp">
<p class="STYLE6"> </p>
<p>
<label>
<input type="radio" name="people" value="user" checked/>
用户</label>
<label>
<input type="radio" name="people" value="admin" />
管理员</label>
</p>
<p> 身份证:
<label>
<input type="text" name="id" id="username" />
</label>
</p>
<p> 密 码:
<label>
<input type="password" name="pwd" id="pwd" />
</label>
</p>
<p>
<label>
<input type="submit" name="login" id="login" value="登录" />
</label>
<input type="reset" name="reset" id="reset" value="重置" />
</p>
</form></td>
</tr>
</table>
</body>
</html>
登录验证界面:
<%@ page contentType="text/html;charset=GBK" import="java.sql.*" %>
<html><title>logDeal</title><body>
<jsp:useBean id="logBeanID" scope="session" class="test.LogBean" />
<%
request.setCharacterEncoding("gbk");
String id=request.getParameter("id");
String pwd=request.getParameter("pwd");
String people=request.getParameter("people");
if((id!=null)&&(pwd!=null)){
id=id.trim();
pwd=pwd.trim();
if(!(id.equals(""))&&!(pwd.equals(""))){
if(people.equals("admin")){
String sql="select ID,password from tb_admin where ID='"+id+"' ";
ResultSet r=logBeanID.executeFetch(sql);
if(r.next()){
String p=logBeanID.judge(r);
if(p.equals(pwd)){
session.setAttribute("admin", id);
out.println(session.getAttribute("admin")+" "+"Welcome !!!");
}
else{
out.println("admin:password error! ");
}
}
else{
out.println(" not admin ");
}
}else if(people.equals("user")){
String sql="select ID,password from tb_user where ID='"+id+"' ";
ResultSet r=logBeanID.executeFetch(sql);
if(r.next()){
String p=logBeanID.judge(r);
if(p.equals(pwd)){
session.setAttribute("user", id);
out.println(session.getAttribute("user")+" "+"Welcome !");
}
else{
out.println("user:passwrd error ! ");
}
}
else{
out.println(" not user");
}
}
}else
out.println("Place rightly input !! ");
}else
out.println(" not null !!!");
%>
</body>
</html>
JavaBean代码:
package test;
import java.sql.*;
public class LogBean{
String driver="sun.jdbc.odbc.JdbcOdbcDriver";
Statement stmt=null;
String sql=null;
ResultSet r=null;
Connection con =null;
String p="";
String bn="";
public LogBean(){
try{ System.out.println("0");
Class.forName(driver);
}catch(Exception e){
System.out.println("连接数据库出错aaaaaa");
e.printStackTrace();
}
System.out.println("1");
try{ String url = "jdbc:odbc:driver={Microsoft Access Driver(*.mdb)};DBQ=E:/tielu.mdb";
System.out.println("2");
Connection con =DriverManager.getConnection(url,"","");
System.out.println("3");
stmt=con.createStatement();
System.out.println("4");
}catch(Exception e){
System.out.println("aaaaaa");
e.printStackTrace();
}
}
public ResultSet executeFetch(String sql){
try{
r=stmt.executeQuery(sql);
}catch(SQLException e){
System.out.println(" error : fetch !");
e.printStackTrace();
}
catch(NullPointerException e){
System.out.println(" error : null fetch !");
e.printStackTrace();
}
return r;
}
public String judge(ResultSet r){
try{
if(r.next()){
p=r.getString("password");
}
}catch(SQLException e){
System.out.println(" error : fetch !");
e.printStackTrace();
}
catch(NullPointerException e){
System.out.println(" error : null fetch !");
e.printStackTrace();
}
return p;
}
public void destroy(){
if(stmt!=null){
try{
stmt.close();
con.close();
}catch(SQLException e){
System.out.println(" error : destroy !");
e.printStackTrace();
}
}
}
}
运行后出现的错误:org.apache.jasper.JasperException: java.lang.NullPointerException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:532)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:426)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause
java.lang.NullPointerException
org.apache.jsp.logDeal_jsp._jspService(logDeal_jsp.java:79)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" buffer="0kb" autoFlush="true" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>登录页面</title>
<style type="text/css">
<!--
body {
background-image: url(img/bg1.jpg);
}
.STYLE6 {
font-size: 36px;
font-family: "新宋体";
}
-->
</style></head>
<body>
<p class="STYLE6"> </p>
<table width="1240" height="489" border="0" align="center">
<tr>
<td height="87" colspan="3" align="left" class="STYLE6" > 规章班前留题试问补充</td>
</tr>
<tr>
<td align="center"><form id="login" name="login" method="post" action="logDeal.jsp">
<p class="STYLE6"> </p>
<p>
<label>
<input type="radio" name="people" value="user" checked/>
用户</label>
<label>
<input type="radio" name="people" value="admin" />
管理员</label>
</p>
<p> 身份证:
<label>
<input type="text" name="id" id="username" />
</label>
</p>
<p> 密 码:
<label>
<input type="password" name="pwd" id="pwd" />
</label>
</p>
<p>
<label>
<input type="submit" name="login" id="login" value="登录" />
</label>
<input type="reset" name="reset" id="reset" value="重置" />
</p>
</form></td>
</tr>
</table>
</body>
</html>
登录验证界面:
<%@ page contentType="text/html;charset=GBK" import="java.sql.*" %>
<html><title>logDeal</title><body>
<jsp:useBean id="logBeanID" scope="session" class="test.LogBean" />
<%
request.setCharacterEncoding("gbk");
String id=request.getParameter("id");
String pwd=request.getParameter("pwd");
String people=request.getParameter("people");
if((id!=null)&&(pwd!=null)){
id=id.trim();
pwd=pwd.trim();
if(!(id.equals(""))&&!(pwd.equals(""))){
if(people.equals("admin")){
String sql="select ID,password from tb_admin where ID='"+id+"' ";
ResultSet r=logBeanID.executeFetch(sql);
if(r.next()){
String p=logBeanID.judge(r);
if(p.equals(pwd)){
session.setAttribute("admin", id);
out.println(session.getAttribute("admin")+" "+"Welcome !!!");
}
else{
out.println("admin:password error! ");
}
}
else{
out.println(" not admin ");
}
}else if(people.equals("user")){
String sql="select ID,password from tb_user where ID='"+id+"' ";
ResultSet r=logBeanID.executeFetch(sql);
if(r.next()){
String p=logBeanID.judge(r);
if(p.equals(pwd)){
session.setAttribute("user", id);
out.println(session.getAttribute("user")+" "+"Welcome !");
}
else{
out.println("user:passwrd error ! ");
}
}
else{
out.println(" not user");
}
}
}else
out.println("Place rightly input !! ");
}else
out.println(" not null !!!");
%>
</body>
</html>
JavaBean代码:
package test;
import java.sql.*;
public class LogBean{
String driver="sun.jdbc.odbc.JdbcOdbcDriver";
Statement stmt=null;
String sql=null;
ResultSet r=null;
Connection con =null;
String p="";
String bn="";
public LogBean(){
try{ System.out.println("0");
Class.forName(driver);
}catch(Exception e){
System.out.println("连接数据库出错aaaaaa");
e.printStackTrace();
}
System.out.println("1");
try{ String url = "jdbc:odbc:driver={Microsoft Access Driver(*.mdb)};DBQ=E:/tielu.mdb";
System.out.println("2");
Connection con =DriverManager.getConnection(url,"","");
System.out.println("3");
stmt=con.createStatement();
System.out.println("4");
}catch(Exception e){
System.out.println("aaaaaa");
e.printStackTrace();
}
}
public ResultSet executeFetch(String sql){
try{
r=stmt.executeQuery(sql);
}catch(SQLException e){
System.out.println(" error : fetch !");
e.printStackTrace();
}
catch(NullPointerException e){
System.out.println(" error : null fetch !");
e.printStackTrace();
}
return r;
}
public String judge(ResultSet r){
try{
if(r.next()){
p=r.getString("password");
}
}catch(SQLException e){
System.out.println(" error : fetch !");
e.printStackTrace();
}
catch(NullPointerException e){
System.out.println(" error : null fetch !");
e.printStackTrace();
}
return p;
}
public void destroy(){
if(stmt!=null){
try{
stmt.close();
con.close();
}catch(SQLException e){
System.out.println(" error : destroy !");
e.printStackTrace();
}
}
}
}
运行后出现的错误:org.apache.jasper.JasperException: java.lang.NullPointerException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:532)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:426)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause
java.lang.NullPointerException
org.apache.jsp.logDeal_jsp._jspService(logDeal_jsp.java:79)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
...全文
相关推荐
idea中database不显示问题的解决
即使在Database面板不显示的情况下,通过安装DataGrip插件,也能实现数据库的管理和操作。- **配置数据库连接**:在Database面板显示后,你需要配置数据库连接。
Android 真机调试查看db数据库文件
本文介绍使用SQLiteStudio远程连接并查看手机上DB文件的方法,包括下载SQLiteStudio、设置远程连接、导入JAR文件及申请网络权限等步骤,实现对手机DB文件的实时查看与调试。
LabVIEW连接MySQL全流程:ODBC、UDL与DB Tools实战
本文系统讲解LabVIEW通过ODBC驱动、UDL文件和Database Connectivity Toolkit连接MySQL的全流程,涵盖LabVIEW与MySQL的版本选型、32/64位匹配、ODBC数据源配置、UDL文件创建与测试、DB Tools核心VI调用、中文乱码处理及高频插入优化等关键技术点,并重点剖析连接失败的常见原因与排查方法。
Android Studio连接云服务器数据库
这篇教程详细记录了如何使用Android Studio连接阿里云服务器上的MySQL数据库,包括配置Xshell、Xftp,安装JDK、Tomcat和MySQL,MyEclipse开发服务端servlet,以及Android Studio端的代码编写。在Navicat中通过SSH连接云服务器数据库,并强调了中文字符编码设置的重要性。
各种数据库连接工具Database4,用起来很方便
Database4是一款功能强大的数据库连接工具,专为用户提供方便快捷的多数据库管理体验。


Web 开发
