JSP+JavaBean的留言板技术
<span style="font-size:16px;">Messages.html
<HTML></span><span style="font-size:16px;"><HEAD> <TITLE> message board </TITLE></HEAD>
<BODY> <center>留言板</center>
<FORM action="addMessage.jsp" >
<TABLE border=1 align="center">
<TR><TD>姓名:</TD><TD><input type="text" name="name" size=25>
</TD></TR>
<TR><TD>E-mail:</TD>
<TD><input type="text" name="email" size=25></TD></TR>
<TR><TD>主题:</TD>
<TD><input type="text" name="title" size=25></TD></TR>
<TR><TD>留言:</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"><input type="submit" value="提交留言"></TD>
<TD align="center">
<a href="viewMessages.jsp" rel="external nofollow" ><font size=2>查看留言</font></a></TD>
<TD align="center"><input type="reset" value="重新填写"></TD>
</TR></TABLE></TD> </TR></TABLE></FORM></BODY></HTML></span>
?
<span style="font-size:16px;">MessageData.java
package message;
public class MessageData
{ private String name,email,title,content;
//setter或者getter方法
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;}}</span>
?
<span style="font-size:16px;">viewMessages.jsp
<%@ page contentType="text/html; charset=GBK" import="message.MessageData" %>
<%@ page import="java.util.*"%>
<jsp:useBean id="myBean" class="message.MessageBean" scope="page"/>
<HTML><HEAD><TITLE> show the message in the table </TITLE></HEAD>
<BODY><p align="center">所有留言</p>
<TABLE align="center" width="80%" border=1 >
<%
int message_count=0;
Collection <MessageData> messages=myBean.getAllMessage();
Iterator <MessageData> it=messages.iterator();
while(it.hasNext()){ MessageData mg=(MessageData)it.next();
%>
<tr>
<td width="20%">留言人:</td>
<td width="23%"><%=mg.getName()%></td>
<td width="58%" align="center"><% out.println(
"<a href=mailto:"+mg.getEmail()+">"+mg.getEmail()+"</a>");
%></td></tr>
<tr>
<td width="20%">主题:</td>
<td colspan="3"><%=mg.getTitle()%></td>
</tr>
<tr>
<td width="20%">内容:</td>
<td colspan="3"><%=mg.getContent()%></td>
</tr>
<% message_count++;
}
%>
</Table>
<p align="center"><a href="Messages.html" rel="external nofollow" >我要留言</a></p>
</body></html></span>
?
<span style="font-size:16px;">addMessage.jsp
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<jsp:useBean id="Mdata" class="message.MessageData" scope="page">
<jsp:setProperty name="Mdata" property="*"/></jsp:useBean>
<jsp:useBean id="myBean" class="message.MessageBean" scope="page"/>
<HTML><HEAD><TITLE> message into table </TITLE></HEAD>
<BODY>
<% try { myBean.setMessage(Mdata); myBean.addMessage(); }
catch(Exception e) { e.printStackTrace();}
%>
<jsp:forward page="viewMessages.jsp" />
</body></html></span>
?
<span style="font-size:16px;">MessageData.java
package message;
public class MessageData
{ private String name,email,title,content;
//setter或者getter方法
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;}}</span>
?
<span style="font-size:16px;">MessageBean.java
package message;
import java.sql.*; //引入java.sql包
import java.util.*;
public class MessageBean {
private Connection con; MessageData msg;
public MessageBean()
{ String JDriver="com.mysql.jdbc.Driver"; //定义驱动程序对象
String userName="root"; //定义数据库用户名
String userPasswd=""; //定义数据库存取密码
String dbName="message"; //定义数据库名
String conURL="jdbc:mysql://localhost:3306/"+dbName;
try{Class.forName(JDriver).newInstance(); //加载JDBC驱动程序
con=DriverManager.getConnection(conURL,userName,userPasswd);
//连接数据库
}
catch(Exception e){System.err.println(e.getMessage());}
}
public void setMessage(MessageData msg) {this.msg=msg;}
// 添加一条留言消息
public void addMessage()throws Exception
{ try{ byte b1[]=msg.getTitle().getBytes("ISO-8859-1");
String ti=new String(b1);
byte b2[]=msg.getName().getBytes("ISO-8859-1");
String na=new String(b2);
byte b3[]=msg.getEmail().getBytes("ISO-8859-1");
String em=new String(b3);
byte b4[]=msg.getContent().getBytes("ISO-8859-1");
String c=new String(b4);
PreparedStatement stm=con.prepareStatement(
"insert into messagetable values(?,?,?,?)");
stm.setString(1,ti); stm.setString(2,na);
if((msg.getEmail()).length()==0)stm.setString(3,"");
else stm.setString(3,em);
stm.setString(4,c);
try {stm.execute(); stm.close(); }
catch(Exception e) { }
con.close(); //关闭数据库连接
}
catch(Exception e){ e.printStackTrace(); throw e;}
}
// 获得所有留言消息,并返回结果到JSP页面
public Collection<MessageData> getAllMessage()throws Exception
{ Collection<MessageData> ret=new ArrayList<MessageData>();
try{ Statement stm=con.createStatement();
ResultSet result=stm.executeQuery(
"select count(*) from messagetable");
int message_count=0;
if(result.next()){ message_count=result.getInt(1);
result.close(); }
if(message_count>0)
{ result=stm.executeQuery("select * from messagetable ");
while(result.next())
{ String title=result.getString("title");
String name=result.getString("name");
String email=result.getString("email");
String content=result.getString("content");
MessageData message=new MessageData();
message.setTitle(title); message.setName(name);
message.setEmail(email); message.setContent(content);
ret.add(message);
}
result.close(); stm.close();
}
con.close();
}
catch(Exception e)
{ e.printStackTrace(); throw e; }
return ret;
}
}</span>
功能简单的留言板,但是清楚的说明了JSP+JavaBean技术的运用,需要的朋友可以参考
# java实现留言板功能
# java留言板功能
# java web实现简单留言板功能
# 我要
# 的说
# 连接数据库
# 加载
# package
# MessageData
# reset
# String
# setter
# private
# public
# getter
# nofollow
# cellspacing
# cellpadding
# colspan
# width
# rel
# external
# viewMessages
相关文章:
北京网站制作的公司有哪些,北京白云观官方网站?
如何快速搭建高效服务器建站系统?
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
网站制作价目表怎么做,珍爱网婚介费用多少?
Android使用GridView实现日历的简单功能
如何通过主机屋免费建站教程十分钟搭建网站?
建站主机与服务器功能差异如何区分?
中山网站推广排名,中山信息港登录入口?
威客平台建站流程解析:高效搭建教程与设计优化方案
如何选择域名并搭建高效网站?
MySQL查询结果复制到新表的方法(更新、插入)
建站之星3.0如何解决常见操作问题?
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
高性能网站服务器部署指南:稳定运行与安全配置优化方案
如何用腾讯建站主机快速创建免费网站?
建站之星后台密码如何安全设置与找回?
公司网站制作费用多少,为公司建立一个网站需要哪些费用?
如何配置支付宝与微信支付功能?
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
建站之星2.7模板快速切换与批量管理功能操作指南
如何彻底卸载建站之星软件?
音乐网站服务器如何优化API响应速度?
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
如何快速搭建高效WAP手机网站?
网站制作公司广州有几家,广州尚艺美发学校网站是多少?
如何在VPS电脑上快速搭建网站?
制作网站外包平台,自动化接单网站有哪些?
网站制作免费,什么网站能看正片电影?
C++如何将C风格字符串(char*)转换为std::string?(代码示例)
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
如何用虚拟主机快速搭建网站?详细步骤解析
如何在Windows虚拟主机上快速搭建网站?
如何在香港免费服务器上快速搭建网站?
广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?
微课制作网站有哪些,微课网怎么进?
常州自助建站工具推荐:低成本搭建与模板选择技巧
已有域名如何免费搭建网站?
制作公司内部网站有哪些,内网如何建网站?
建站上市公司网站建设方案与SEO优化服务定制指南
利用JavaScript实现拖拽改变元素大小
如何快速上传自定义模板至建站之星?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
如何快速生成橙子建站落地页链接?
宁波自助建站系统如何快速打造专业企业网站?
建站主机选择指南:服务器配置与SEO优化实战技巧
整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?
家庭建站与云服务器建站,如何选择更优?
非常酷的网站设计制作软件,酷培ai教育官方网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。