大哥门帮帮忙啊看看我的javabean怎么了?很急啊

zhang520rui 2004-10-09 05:13:51
import java.sql.*;
import javax.servlet.*;
import javax.servlet.jsp.*;
import javax.servlet.http.*;

public class CheckPwd {
ServletRequest request;
JspWriter out;
ServletResponse response;

public void CheckPwd() {}

public void unit(ServletRequest req, JspWriter ou) {
//初始化
request = req;
out = ou;
}

public void execute() {
//从request获得参数
String cardno, cardpwd;
cardno = requset.getParameter("cardno");
cardpwd = requset.getParameter("cardpwd");
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection("jdbc:odbc:card");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(
"select * from cardinf where cardno=cardno and cardpwd=cardpwd");
if (rs.eof()) {
out.println("<pre>");
out.println("密码错误");
out.println("</pre>");
}
else {
response.redirect("paymain.jsp");
}
rs.close();
stmt.close();
conn.close();
}
catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
我用的ultraedit编辑器。按理说ServletRequest还有JspWriter都应该是红色的,表示是类啊。可是是黑色的。所以编译的时候后面就出错了。我定义的request当然就没有用了。是怎么回事那?
javax这个包好象要设置什么吧?

...全文
122 点赞 收藏 10
写回复
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yasoho 2004-10-11
为什么在javaBean中使用转向呢??

用servlet吧,没有必要将servlet的强项强加给javabean.

这样的流程也清晰.
回复
zhang520rui 2004-10-11
import java.sql.*;
import javax.servlet.*;
import javax.servlet.jsp.*;
import javax.servlet.http.*;

public class CheckPwd {
ServletRequest request;
JspWriter out;
HttpServletResponse response;

public void CheckPwd() {}

public void init(ServletRequest req, JspWriter ou) {
//初始化
request = req;
out = ou;
}

public void execute() {
//从request获得参数
String cardno, cardpwd;
cardno = request.getParameter("cardno");
cardpwd = request.getParameter("cardpwd");
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection("jdbc:odbc:card");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(
"select * from cardinf where cardno='"+cardno+"' and cardpwd='"+cardpwd+"'");
if (!rs.next()) {

out.println("<pre>");
out.println("密码错误");
out.println("</pre>");
}
else{
response.sendRedirect("paymain.jsp");
}

rs.close();
stmt.close();
conn.close();
}
catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
这是编译通过的。
大家可以对照我先后的两个,我确实是个马大哈。
还想问的就是response.sendRedirect("paymain.jsp");没有执行啊。
我就想让他密码正确后转到paymain.jsp页面。可是没有发应,也不提示出错。
当密码错误是确实输出了:密码错误。
回复
zhang520rui 2004-10-11
我是个马大哈。不是没有正确导入servlet包。而是我把自己定义的request,用的时候写成requset了,一直没有发现。当然里面还有rs.eof()这个错误,rs其实没有eof这个方法。我用delphi 习惯了。
where条件语句也有错误,应该是cardno='"+cardno+"' and cardpwd='"+cardpwd+"'。
还有个错误就是response应该定义成HttpServletResponse response;才会有sendRedirect()方法。
不过还想问大家response.redirect("paymain.jsp");没有执行,是为什么
回复
zhang520rui 2004-10-09
现在是不行啊
因为我定义的ServletRequest request;没有起作用所以cardno = requset.getParameter("cardno");就不行了
。主要是编译器没有认出来ServletRequest 是个类。所以我的变量request就没有正确的类型,更不能用里面的方法了。
怎么办啊?
回复
gtlwj 2004-10-09
这到底是SERVLET还是JAVABEAN?!
回复
zhangzhenyi 2004-10-09
将javax.servlet这个包引入到你的工程路径(如果用ide),直接运行可以把这个jar文件设置到环境变量中。就像设置jdk一样。
回复
gtlwj 2004-10-09
cardno = requset.getParameter("cardno");
cardpwd = requset.getParameter("cardpwd");
不能这样用的吧!
回复
zhang520rui 2004-10-09
就是想知道javax.servlet这个包怎么加载啊?你们用过这个包吗
回复
windows9834 2004-10-09
可能是servlet包没有加载
回复
zjulcj 2004-10-09
在javabean里能使用out这些吗?
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告