Java论坛网»Java技术»数据库无法加入信息

数据库无法加入信息

问?:
消息输入页面:
<FORM acction="addMessage.jsp" name="formname">
<table border="1" cellspacing="0" cellpadding="0" width="100%" align="center" bordercolordark="#CCCC99" bordercolorlight="#CCCC99">

<tr><td>姓名:</td><td bgcolor="#CCCC99"><input type="text" name="name"size="25"></td></tr>

<tr><td bgcolor="#CCCC99">E-mail:</td><td bgcolor="#CCCC99"><input type="text" name="email"size="25"></td></tr>

<tr><td>主题:</td><td bgcolor="#CCCC99"><input type="text" name="title"size="25"></td></tr>

<tr><td bgcolor="#CCCC99" valign="top">留言</td><td bgcolor="#CCCC99"><textarea type="text" name="content"size="25" rows="7"></textarea></td></tr>
<tr>
<td bgcolor="#CCCC99" align="center"><input type="submit" value="提交"></td>
<td bgcolor="#CCCC99" align="center"><a href="viewMessage.jsp">查看留言</a></td>
<td bgcolor="#CCCC99" align="center"><input type="reset" value="重填"></td>
</tr>



</table>
</FORM>

form跳转页面
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<%@ page import="java.sql.*"%>
<%@ page import="com.jspdev.ch9.*"%>

<jsp:useBean id="messageVo" class="com.jspdev.ch9.MessageVO" scope="page"/>

<jsp:setProperty name="messageVo" property="*"/>

<jsp:useBean id="messageBean" class="com.jspdev.ch9.MessageBean" scope="page"/>
<body>
<%
try{

messageBean.setMessage(messageVo);
messageBean.addMessage();
}catch(Exception e){

e.printStackTrace();
}
%>
</body>


JAVA页面:变量定义页面
package com.jspdev.ch9;

import java.io.Serializable;
import java.sql.*;

public class MessageVO implements Serializable {
/**
* 此JAVABEAN代表留言板的数据;
*/

private String name;
private String email;
private String title;
private String content;
private Date date;



public MessageVO(String name,String email, String title, String content, Date date) {


this.name=name;
this.email=email;
this.title=title;
this.content=content;
this.date=date;


}


public void setTitle(String title){

this.title=title;
}
public void setName(String name){

this.name=name;
}

public void setEmail(String email){

this.email=email;
}
public void setContent(String content){

this.content=content;
}
public void setDate(Date date){

this.date=date;

}



public String getName(){
return this.name;

}
public String getTitle(){
return this.title;

}

public String getEmail(){
return this.email;

}
public String getContent(){
return this.content;

}
public Date getDate(){
return this.date;

}

}



数据库链接页面:

package com.jspdev.ch9;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Collection;


public class MessageBean {
private Connection con=null;

MessageVO msg=null;



public MessageBean(){

String SERVANDDB="jdbc:microsoft:sqlserver://localhost:1400;DatabaseName=jspdev";
String USER="bn";
String PSW="bn";


try
{

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
con=DriverManager.getConnection(SERVANDDB,USER,PSW);


}catch(Exception e){

e.printStackTrace();
}

}

public void setMessage(MessageVO msg){


this.msg=msg;

}

public void addMessage()throws Exception{

try{
PreparedStatement stm=null;
stm=con.prepareStatement("insert into message values(?,?,?,?,?)");
stm.setString(1,msg.getTitle());
stm.setString(2,msg.getName());
stm.setDate(3, new java.sql.Date(new java.util.Date().getTime()));
if((msg.getEmail()).length()==0)
stm.setString(5, null);
else
stm.setString(5, msg.getEmail());
stm.setString(4, msg.getContent());

try{



stm.executeQuery();


}catch(Exception e){

e.printStackTrace();
}

con.close();

}catch(Exception e){

e.printStackTrace();
throw e;
}


}


public Collection getMessage()throws Exception{

Collection ret=new ArrayList();

try{

PreparedStatement stm=con.prepareStatement("select count(*) from message");
ResultSet result=null;

result=stm.executeQuery();
int message_conut=0

if(result.next())
{
message_conut = result.getInt(1);
result.close();
}

if(message_conut>0){
result=stm.executeQuery("select * from message order by time desc");

while(result.next()){
MessageVO message=new MessageVO(result.getString(1),result.getString(2),result.getString(3),result.getString(4),result.getDate(5));

/*String title=result.getString("title");
String name=result.getString("name");
String email=result.getString("email");
String content=result.getString("content");
Date date=result.getDate("date");
MessageVO message=new MessageVO(title, name, email, content, date);

message.setTitle(title);
message.setName(name);
message.setEmail(email);
message.setContent(content);
message.setDate(date);*/

ret.add(message);
}
result.close();
stm.close();
}


con.close();


}catch(Exception e){

e.printStackTrace();

throw e;

}

return ret;

}



}


从页面添加信息之后,数据库中没有增加的信息,我是一个初学者,多谢各位高手多多给于指点。谢谢
答!: 1:
没见到addMessage.jsp从第一个页面接收数据的代码。
答!: 2:
懒的看这么长东西了。。。。
不是没传值就是没COMMIT,常规毛病
答!: 3:
把stm.executeQuery()改成 stm.executeUpdate()

相关JAVA教程:
哪位能够告诉我tapestry的运行机制阿!!!!!
struts的路径问题,高手帮忙
我想把一个ImageIcon的对象保存成图片文件!
hibernate对象查询工具的问题。在线等答案??
请教!tomcat4.1的服务在启动后5秒左右,自动关闭。是怎么回事?怎么解决?
weblogic连接池怪异问题
高手请进~~急 ~在线等~
请教一个关于jDialog的问题(模态)
Swing编程,如何实现窗体的打开和关闭!
JFrame A中打开B,怎样让A不可用?
Swing编程,如何实现窗体的打开和关闭
请问哪有JSF插件 for Dreamweaver正式版下载?