一个初学者的难题,请好心人看看
package hit;
import java.sql.*;
import java.util.*;
public class MessageBean
{
private Connection con;
MessageVO msg;
//????????????
public MessageBean()
{
String CLASSFORNAME="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String SERVANDDB="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev";
String USER="bn";
String PWD="bn";
try
{
//????????????
Class.forName(CLASSFORNAME);
con = DriverManager.getConnection(SERVANDDB,USER,PWD);
}
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 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)
{
}
con.close();
}
catch(Exception e)
{
e.printStackTrace();
throw e;
}
}
//?????????????????????????JSP??档
public Collection<MessageVO> getMessage()throws Exception
{
Collection<MessageVO> ret=new ArrayList<MessageVO>();
try
{
Statement stm=con.createStatement();
ResultSet result=stm.executeQuery("select count(*) from message");
int message_count=0;
if(result.next())
{
message_count=result.getInt(1);
result.close();
}
if(message_count>0)
{
result=stm.executeQuery("select * from message order by time desc");
while(result.next())
{
String title=result.getString("title");
String name=result.getString("name");
String mail=result.getString("mail");
String content=result.getString("content");
java.sql.Date date=result.getDate("time");
MessageVO message=new MessageVO();
message.setName(name);
message.setTitle(title);
message.setContent(content);
message.setDate(date);
message.setEmail(mail);
ret.add(message);
}
result.close();
stm.close();
}
con.close();
}
catch(Exception e)
{
e.printStackTrace();
throw e;
}
return ret;
}
}
package hit;
public class MessageVO implements java.io.Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private String name,email,title,content;
private java.sql.Date date;
public void setName(String name){
this.name=name;
}
public void setEmail(String email)
{
this.email=email;
}
public void setTitle(String title)
{
this.title=title;
}
public void setContent(String content)
{
this.content=content;
}
public String getName()
{
return this.name;
}
public String getContent()
{
return this.content;
}
public String getTitle()
{
return this.title;
}
public String getEmail()
{
return this.email;
}
public java.sql.Date getDate()
{
return this.date;
}
public void setDate(java.sql.Date date)
{
this.date=date;
}
}
<%@ page import="java.sql.*,hit.*,java.util.*,java.sql.*" errorPage="../error.jsp"%>
<jsp:useBean id="messageVo" class="hit.MessageVO" scope="page">
<jsp:setProperty name="messageVo" property="*"/>
</jsp:useBean>
<jsp:useBean id="messageBean" class="hit.MessageBean" scope="page"/>
<HTML>
<HEAD>
<TITLE>add message into table </TITLE>
</HEAD>
<BODY>
<%
try
{
messageBean.setMessage(messageVo);
messageBean.addMessage();
}
catch(Exception e)
{
e.printStackTrace();
}
%>
<jsp:forward page="viewMessages.jsp" />
</body>
</html>
<%@ page import="java.sql.*,hit.*,java.util.*,java.sql.*"%>
<jsp:useBean id="messageBean" class="hit.MessageBean" scope="page"/>
<HTML>
<HEAD>
<TITLE> show the message in the table </TITLE>
</HEAD>
<LINK href="..\..\hellking.css" type=text/css rel=stylesheet>
<BODY>
<p align="center">所有访客留言</p>
<hr>
<%
int message_count=0;
Collection messages=messageBean.getMessage();
Iterator it=messages.iterator();
while(it.hasNext())
{
MessageVO message=(MessageVO)it.next();
%>
<TABLE width="100%" align="center" border=1 >
<tr><td bgcolor="#CCCC99"><font size=2>主题:</font></td>
<td colspan=3><%=message.getTitle()%></td></tr>
<tr><td bgcolor="#CCCC99"><font size=2>留言人:</font></td>
<td><%=message.getName()%></td><td bgcolor="#CCCC99"><font size=2>E-mail:</font></td>
<td>
<%
out.println("<a href=mailto:"+message.getEmail()+">"+message.getEmail()+"</a>");
%>
</td></tr>
<tr><td bgcolor="#CCCC99"><font size=2>留言时间:</font></td><td colspan=3>
<%
out.println("<font size=2>"+message.getDate().toString()+"</font>");
%>
</td></tr>
<tr><td align="center">
<%
out.println("("+message_count+")");
%>
</td>
<td colspan=3><%=message.getContent()%>
</td></tr>
</table>
<%
out.println("<hr>");
message_count++;
}
%>
<p align="center"><a href="index.html">我要留言</a></p>
</body>
</html>
<HTML>
<HEAD>
<TITLE> message board </TITLE>
</HEAD>
<LINK href="..\..\hellking.css" type=text/css rel=stylesheet>
<BODY>
<TABLE width="90%" align="center" border=1 cellspacing="0" cellpadding="0" >
<TR>
<TD align="center" bgcolor="#CCCC99">·Ã¿ÍÁôÑÔ°å</TD>
</TR>
<TR>
<TD>
<form action=addMessage.jsp><TABLE align="center" border=1 cellspacing="0" cellpadding="0" >
<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 valign="top" bgcolor="#CCCC99">癄</TD>
<TD><textarea name="content" rows=7 cols=25></textarea></TD>
</TR>
<TR>
<TD colspan=3><TABLE align="center" width="100%" cellspacing="0" cellpadding="0" >
<TR>
<TD align="center" bgcolor="#CCCC99"><input type="submit" value="Ìá½»ÁôÑÔ"></TD>
<TD align="center"><a href="viewMessages.jsp"><font size=2>²é¿´ÁôÑÔ</font></a></TD>
<TD align="center" bgcolor="#CCCC99"><input type="reset" value="ÖØÐÂÌîд"></TD>
</TR>
</TABLE></TD>
</TR></form>
</TABLE></TD>
</TR>
</TABLE>
</BODY>
</HTML>
HTTP Status 404 - /hos/viewMessages.jsp
--------------------------------------------
type Status report
message /hos/viewMessages.jsp
description The requested resource (/hos/viewMessages.jsp) is not available.
Myclipse9.0 只有警告Collection is a raw type. References to generic type Collection<E> should be parameterized
谢谢
[解决办法]
你先把你的乱码解决的吧。再看提交的路径。在坚持代码是否有错
[解决办法]
web.xml贴出来
[解决办法]
调用<jsp:forward page="viewMessages.jsp" />
这个JSP页面和 viewMessages.jsp 是在同一目录下么?
[解决办法]
1、决乱码吧, 项目上右键 --》 Properties --》resources --》 Text file encoding -->Other (UTF-8)
2、viewMessages.jsp在 你的web中有没有hos/目录,在这个目录下有没有这个jsp?
[解决办法]
执行的 跳转路径写错了
[解决办法]
"><a href="viewMessages.jsp">< 该成 "><a href="/viewMessages.jsp"><或者"><a href="../viewMessages.jsp">< 试试看
[解决办法]