求救:JSP调用bean访问sql server的问题!

yhb72 yhb72 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
在应用目录mytest中放有测试文件:testbean.jsp,在mytest目录下的WEB-INF的classes中有文件夹SqlConn,其下有编译好的Conn.class。环境变量配置绝对没有问题,非连接后台数据库的bean调用测试都成功了,但测试bean访问数据库报错,实在搞不懂问题在哪里,望高手指教!
环境配置:windows2003+sql server2000(sp3)+tomcat5.0
源码:
Conn.java:
package SqlConn;
import java.sql.*;
import java.lang.*;
import java.util.*;

public class Conn
{
String sDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String sConnStr ="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ims;user=sa;password=123456";
Connection conn=null;
ResultSet rs=null;
public Conn()
{
try {
Class.forName(sDBDriver);
}
catch(ClassNotFoundException e)
{
System.out.println("无法建立数据库连接!:"+e.getMessage());
}
}

public void executeUpdate(String sql) throws Exception
{
sql= new String(sql.getBytes("GBK"),"ISO8859_1");
try
{
conn= DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{
System.out.println("更新数据操作失败!"+ex.getMessage());
}
}

public ResultSet executeQuery(String sql) throws Exception
{
rs = null;
try
{
sql= new String(sql.getBytes("GBK"),"ISO8859_1");
conn= DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
conn.close();
stmt.close();
}
catch(SQLException ex)
{
System.out.println("执行查询出错!"+ex.getMessage());

}

return rs;
}
}

------------------------------------------------------------------------
testbean.jsp:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*" %>
<jsp:useBean id="Conn" scope="page" class="SqlConn.Conn"/>
<%
String uname= request.getParameter("username");
String pwd= request.getParameter("passwd");
if (uname.length()!=0)
{
if (pwd.length()==0)
{
out.println ("<script language=javascript>alert('密码不能为空');javascript:history.back();</script>");
}
else
{
ResultSet rt=Conn.executeQuery("select username from testuser where username='"+uname+"' and pass='"+pwd+"'" );
if (!rt.next())
{
out.println("用户名密码错误");
}
else
{
out.println("登录成功!");
}
}
}

%>

<html>
<head></head>
<body>

<FORM action=testbean.jsp method=POST>
<table>
<tr>
<td>用户名:</td><td><input type="text" name="username" size="16"></td>
</tr>
<tr>
<td>密 码:</td><td><input type="text" name="passwd" size="16"></td>
</tr>
<tr>
<td></td><td><input type="submit" name="btn1" value="登录"></td>
</tr>
</table>
</form>
</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:346)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)


root cause

java.lang.NullPointerException
org.apache.jsp.testbean_jsp._jspService(testbean_jsp.java:58)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)


note The full stack trace of the root cause is available in the Apache Tomcat/5.0.25 logs.

...全文

相关推荐

43、Java Web项目操作SQL Server数据库:数据插入、更新与删除全解析

本文详细介绍了如何在Java Web项目中使用JSP和Java Bean技术对SQL Server数据库中的Faculty表进行数据插入、更新和删除操作。通过修改JSP页面并创建Java Bean类,逐步实现数据库操作,并提供测试和验证方法。同时,还涵盖了常见问题的解决方案、性能优化建议以及代码复用与扩展的方法,帮助开发者高效完成数据处理任务。

keras9composer

SSM+JSP二手交易平台全解析:从部署到核心逻辑

在Web开发学习路径中,SSM(Spring+SpringMVC+MyBatis)作为经典后端框架组合,配合JSP视图技术,构成了大量教学项目与毕业设计的核心架构。该组合通过清晰的分层设计——Spring管理对象与事务、SpringMVC处理请求分发、MyBatis封装数据库操作、JSP直接渲染数据,完整展示了控制层、业务层、持久层的协作链路。这种轻量级技术栈尤其适合业务模型贴近真实场景的二手交易平台,覆盖用户注册登录、商品发布、图片上传、订单流转及后台管理等功能,既是理解Web工程实践的理想样本,也便于部

weixin_34293911

硕士复现燃料电池供氢系统建模及控制策略Simulink仿真(附带说明PPT+参考文献+复现模型+实物源码)

内容概要:本资源聚焦于燃料电池供氢系统的建模与控制策略研究,通过Simulink仿真平台实现系统动态行为的精确模拟与控制算法的验证。内容涵盖供氢系统的关键部件建模,如氢气供应管路、压力调节阀、储氢罐及燃料电池堆等,并针对系统响应滞后、压力波动等问题,设计并实现了先进的控制策略,例如基于反馈与前馈的复合控制、PID控制或模型预测控制(MPC),以确保氢气供给的稳定性与效率。配套提供的说明PPT详细阐述了建模思路与控制逻辑,参考文献为研究提供了理论支撑,而完整的复现模型与实物源码则极大地方便了学习者进行仿真复现与二次开发。; 适合人群:具备一定自动化、电气工程或能源动力系统背景,正在进行相关课题研究的研究生,以及从事氢能系统开发的工程技术人员。; 使用场景及目标:① 学习并掌握燃料电池供氢系统的工作原理与关键组件的数学建模方法;② 利用Simulink搭建复杂能源系统的仿真模型,并设计、调试与验证先进控制策略;③ 基于提供的完整资源包(PPT、模型、源码)进行科研复现,作为学位论文或学术研究的技术基础。; 阅读建议:学习者应结合说明PPT的理论讲解,逐步操作复现模型,重点关注控制模块的设计逻辑与参数整定过程。建议在理解现有模型的基础上,尝试修改工况参数或优化控制算法,以深化对系统动态特性的认识,从而将本资源作为开展自主创新研究的有效跳板。

小念念_

风光火储多源协同参与电网一次调频与二次 AGC 调频控制策略研究(Simulink仿真实现)

内容概要:本文研究了风光火储多源协同参与电网一次调频与二次AGC调频的控制策略,并通过Simulink进行仿真实现。深入分析了风能、光伏、火电及储能系统在电网频率调节中的出力特性与动态响应机制,提出了一种综合协调控制策略,实现调频责任的合理分配与控制指令的有效分解。研究涵盖了多能源系统建模、频率偏差检测、调频功率分配逻辑、控制器参数设计及闭环仿真验证等关键环节,有效提升了高比例新能源接入背景下电力系统的频率稳定性与抗扰动能力。; 适合人群:具备电力系统、自动化或新能源相关背景,从事电网控制、能源调度、仿真建模等工作的科研人员与工程技术人员,尤其适合研究生及从事新能源并网与电力系统稳定研究的专业人员。; 使用场景及目标:①应用于高比例新能源接入电网的频率稳定控制研究;②为风光火储多能互补系统的协同控制策略设计提供仿真验证平台;③支持电力系统仿真教学与科研中的动态性能分析与控制算法开发。; 阅读建议:建议结合Simulink模型文件同步运行仿真,深入理解各模块控制逻辑;重点关注多源调频的协调机制与参数整定方法,可进一步扩展至含储能优化配置或考虑通信延迟的场景研究。

三伯

毕业设计含文档和代码VB+ACCESS汽车租凭管理系统(论文+系统)

毕业设计含文档和代码VB+ACCESS汽车租凭管理系统(论文+系统)

zz_ll9023one
评论 27
收藏 已收藏
分享
返回顶部
yhb72
Web 开发 81,108 成员 341,721 内容