晕,这个问题好奇怪!~~~~~~~~~~~~~~~~

zhaohh 2004-09-09 07:51:12
我写了如下代码,怎么就是不能添加到数据库里去,编译成功!
package gb.msg_javabean.messageset;
public class MessageVO implements java.io.Serializable
{
private String title,username,email,homepage,oicq,brow,face,body,ip;
private int id;
private java.sql.Date date;
public void setId(int id)
{
this.id=id;
}
public void setTitle(String title)
{
this.title=title;
}
public void setUsername(String username)
{
this.username=username;
}
public void setEmail(String email)
{
this.email=email;
}
public void setHomepage(String homepage)
{
this.homepage=homepage;
}
public void setOicq(String oicq)
{
this.oicq=oicq;
}
public void setBrow(String brow)
{
this.brow=brow;
}
public void setFace(String face)
{
this.face=face;
}
public void setBody(String body)
{
this.body=body;
}
// public void setIP(String ip)
//{
//this.ip=ip;
// }
public void setDate(java.sql.Date date)
{
this.date=date;
}
public int getId()
{
return this.id;
}
public String getTitle()
{
return this.title;
}
public String getUsername()
{
return this.username;
}
public String getEmail()
{
return this.email;
}
public String getHomepage()
{
return this.homepage;
}
public String getOicq()
{
return this.oicq;
}
public String getBrow()
{
return this.brow;
}
public String getFace()
{
return this.face;
}
public String getBody()
{
return this.body;
}
// public String getIP()
//{
//return this.ip;
//}
public java.sql.Date getDate()
{
return this.date;
}
}
package gb.msg_javabean.messageset;
import java.sql.*;
import java.util.*;
import gb.msg_javabean.messageset.*;
public class Messagebean
{
private Connection con;
MessageVO msg;
public Messagebean()
{
String ClassDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=guestbook";
String user="sa";
String password="zhh";
try
{
Class.forName(ClassDriver);
con= DriverManager.getConnection(url,user,password);
}
调用的页面 :
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>独孤九剑_留言板</title>
</head>
<jsp:useBean id="messageVo" class="gb.msg_javabean.messageset.MessageVO" scope="page" >
<jsp:setProperty name="messageVo" property="*"/>
</jsp:useBean>
<jsp:useBean id="messageBean" class="gb.msg_javabean.messageset.Messagebean" scope="page"/>
<body>
<%
try
{
messageBean.setMessage(messageVo);
messageBean.addMessage();
return ;
}
catch(Exception e)
{
e.printStackTrace();

}
%><!--<jsp:forward page="index.jsp" />-->
</body>
</html>

catch(Exception e)
{
e.printStackTrace();
}
}

public void setMessage(MessageVO msg)
{
this.msg=msg;
}

public void addMessage()throws Exception
{
try
{
PreparedStatement stm=con.prepareStatement("insert into DGZ_guestbook values(?,?,?,?,?,?,?,?,?)");
stm.setString(1,msg.getTitle());
stm.setString(2,msg.getUsername());
stm.setString(3,msg.getEmail());
if((msg.getHomepage()).length()==0)
stm.setString(4,null);
else
stm.setString(4,msg.getHomepage());
if((msg.getOicq()).length()==0)
stm.setString(5,"http://www.163.com");
else
stm.setString(5,msg.getOicq());
if((msg.getBrow()).length()==0)
stm.setString(6,null);
else
stm.setString(6,msg.getBrow());
if((msg.getFace()).length()==0)
stm.setString(7,null);
else
stm.setString(7,msg.getFace());
stm.setString(8,msg.getBody());
stm.setDate(9,new java.sql.Date(new java.util.Date().getTime()));
try
{
stm.executeUpdate();

}
catch(Exception e)
{

}
con.close();
}
catch(Exception e)
{
e.printStackTrace();
throw e;
}
}
public Collection getMessage()throws Exception
{
Collection ret=new ArrayList();
try
{
Statement stm=con.createStatement();
ResultSet rs=stm.executeQuery("select count(*) from DGZ_guestbook");
int message_count=0;
if(rs.next())
{
message_count=rs.getInt(1);
rs.close();
}
if(message_count>0)
{
rs=stm.executeQuery("select * from DGZ_guestbook order by addtime desc");
while(rs.next())
{
String title=rs.getString("title");
String username=rs.getString("username");
String email=rs.getString("email");
String homepage=rs.getString("homepage");
String oicq=rs.getString("oicq");
String brow=rs.getString("brow");
String face=rs.getString("face");
String body=rs.getString("body");
//String ip=rs.getString("ip");
java.sql.Date addtime=rs.getDate("addtime");
MessageVO message=new MessageVO();
message.setTitle(title);
message.setUsername(username);
message.setEmail(email);
message.setHomepage(homepage);
message.setOicq(oicq);
message.setBrow(brow);
message.setFace(face);
message.setBody(body);
//message.setIP(ip);
message.setDate(addtime);
ret.add(message);
}
rs.close();
stm.close();
}
con.close();
}
catch(Exception e)
{
e.printStackTrace();
throw e;
}
return ret;
}
}
...全文
154 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyonghailiuyong 2004-09-11
  • 打赏
  • 举报
回复
try
{
stm.executeUpdate();

}
catch(Exception e)
{
e.printStackTrace();
}
con.close();
}


你把这里的con.close();放到catch(Exception e)){}看看
zhaohh 2004-09-11
  • 打赏
  • 举报
回复
没有抛出任何异常!
newste 2004-09-10
  • 打赏
  • 举报
回复
你确定添加那句话后执行没有异常抛出吗,??我绝的你的statement.executeUpdate()里面有抛出异常你没有做处理,估计是参数错误,或者是参数类型错误
nystroM 2004-09-10
  • 打赏
  • 举报
回复
那本书我看的实在是晕

一个留言板,看 2.0技术手册

JSTL只需要写不超过10行代码
Bluecatr 2004-09-10
  • 打赏
  • 举报
回复
这个例子要求你提交上来的所有参数<jsp:setProperty name="messageVo" property="*"/>
必须在你的javabean:MessageVO中有相对应的一项,只要有一项没有或不对应就不成功,这个好像是和安全有关。

虽然这样做可以简化很多代码,但这样做并不是很方便,建议了解就行了。
zhaohh 2004-09-10
  • 打赏
  • 举报
回复
没人顶,自己定一下
zhaohh 2004-09-09
  • 打赏
  • 举报
回复
没报错误,就是不添加到数据库!
XIHSHI 2004-09-09
  • 打赏
  • 举报
回复
UP
viano 2004-09-09
  • 打赏
  • 举报
回复


提示什么错误信息?
newste 2004-09-09
  • 打赏
  • 举报
回复
你把 e.printStackTrace();添加到下面的catch里面看看,我估计已经报错了,你没做处理,


try
{
stm.executeUpdate();

}
catch(Exception e)
{
e.printStackTrace();
}
con.close();
}
power17 2004-09-09
  • 打赏
  • 举报
回复
真是眼熟。呵呵。好像是jsp应用开发详解的。不过这上面的代码应该没有什么问题吧。
zhaohh 2004-09-09
  • 打赏
  • 举报
回复
没人顶,自己定一下

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧