当前页面: 开发资料首页 → JSP 专题 → 一个简单的javabean使用的问题
一个简单的javabean使用的问题
摘要: 一个简单的javabean使用的问题
我是一个学习JSP的新手 在做一个简单的网页的时候出现下面的问题
org.apache.jasper.JasperException: /zhuce.jsp(7,0) The value for the useBean class attribute java.linkdb is invalid
javabean的源码如下:
package java;
import java.sql.*;
public class linkdb {
public String DBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
public String ConnStr="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=java";
public String Uid="sa";
public String Pwd="1234";
public Connection conn=null;
public ResultSet rs=null;
public void setDBDriver(String DBDriver)
{
this.DBDriver=DBDriver;
}
public String getDBDriver()
{
return DBDriver;
}
public void setConnStr(String ConnStr)
{
this.ConnStr=ConnStr;
}
public String getConnStr()
{
return ConnStr;
}
public void setUid(String Uid)
{
this.Uid=Uid;
}
public void setPwd(String Pwd)
{
this.Pwd=Pwd;
}
public String getPwd(String Pwd)
{
return Pwd;
}
public ResultSet query(String rssql)throws Exception
{
try
{
Class.forName(DBDriver);
conn=DriverManager.getConnection(ConnStr,Uid,Pwd);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery(rssql);
return rs;
}
catch(SQLException ex)
{
System.out.print("sql.executeQuery:"+ex.getMessage());
}
return null;
}
public void update(String rssql)throws Exception
{
try
{
Class.forName(DBDriver);
conn=DriverManager.getConnection(ConnStr,Uid,Pwd);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
stmt.executeUpdate(rssql);
conn.close();
stmt.close();
}
catch(SQLException ex)
{
System.out.println("sql.executeUpdate:"+ex.getMessage());
}
}
}
页面的源码是:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<head>
用户注册</head>
<%
String getuid=request.getParameter("uid");
String getuname=request.getParameter("uname");
String getlpassword=request.getParameter("lpassword");
String getrepassword=request.getParameter("repassword");
String getusex=request.getParameter("usex");
String getuphoto=request.getParameter("uphoto");
String gete-mail=request.getParameter("e-mail");
String getutel=request.getParameter("utel");
String getuzone=request.getParameter("uzone");
String getuqq=request.getParameter("uqq");
String getugratuate=request.getParameter("ugratuate");
String getuaddress=request.getPatameter("uaddress");
String getuhometown=request.getParameter("uhometown");
String getuzipcode=request.getParameter("uzipcode");
String getmaxam=request.getParameter("maxam")
%>
<%
if(uid="null"||lpassword="null"||repassword="null")
{
out.print("<script>alert('请填写完整!帐号或密码不能为空!');</script>");
}
if(lpassword!=repassword)
{
out.print("<script>alert('密码和确认密码不一致!');</script>");
}
else
{
String rssql="insert into users("uid,uname,lpassword,usex,uphoto,e-mail,utel,uzone,uqq,gratuate, uaddress,uhometown,uzipcode,maxam)values('"+uid+"','"+uname+"','"+lpassword+"','"+usex+"','"+uphoto+"','"+e-mail+"','"+utel+"','"+uzone+"','"+uqq+"','"+ugratuate+"','"+uaddress+"','"+uhometown+"','"+uzipcode+"','"+maxam+"');
linkdb.update(rssql);
out.print("<script>alert('注册成功!');</script>");
}
%>
<body>
</body>
希望各位前辈能指点一下!
谢谢各位高手的指点!
………………
无语ing…………
已经不知道该从哪里开始挑错好了…………
-_|||||||||||||
建议你做jsp页面的时候用out.print()一边测试一边写
首先,把你要写的sql语句在查询分析器里面测试一下
可以运行再往网页上写
其次,给变量赋值的时候,每给一个变量赋值,就用out.print()输出一次
看看是否是自己需要的东西
使用JAVABEAN应该注意什么呢?类放置的位置都有些什么特殊要求啊!好晕啊 现在!!
我也是新手,帮不上你忙了,希望有高手帮你,呵呵!
JavaBean的语法对吗?
类名和对象名不弄成一样..
不知道楼主编译完后的javabean是放在哪里的?
正确的路径应该是这样的:工程目录/WEB-INF/classes/java/linkdb.class
package java;
import java.sql.*;
public class linkdb {
这里package的名字应该和class名字以及java文件的名字一致吧?
不好意思,刚才说错了,好象不能用关键字java来做package名字吧,你换个名字就可以了,我调试过了
http://community.csdn.net/Expert/topic/5055/5055359.xml?temp=.7045404
你那个包名字就是有点问题
谢谢各位了,问题解决了,是包名的问题,不能是关键字!