java留言_java实现留言板功能实例

本文介绍了如何使用jsp和javabean技术实现一个简单的留言板功能。通过创建messagedata类来存储留言信息,并通过messagebean类连接数据库进行数据操作,包括添加留言和获取所有留言。示例代码详细展示了整个过程。
摘要由CSDN通过智能技术生成

jsp+javabean的留言板技术

messages.html

message board

留言板
姓名:
e-mail:
主题:
留言:

查看留言

?

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;}}

?

viewmessages.jsp

show the message in the table

所有留言

int message_count=0;

collection messages=mybean.getallmessage();

iterator it=messages.iterator();

while(it.hasnext()){ messagedata mg=(messagedata)it.next();

%>

留言人:

""+mg.getemail()+"");

%>

主题:内容:

}

%>

我要留言

?

addmessage.jsp

pageencoding="gbk"%>

message into table

catch(exception e) { e.printstacktrace();}

%>

?

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;}}

?

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 getallmessage()throws exception

{ collection ret=new arraylist();

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;

}

}

功能简单的留言板,但是清楚的说明了jsp+javabean技术的运用,需要的朋友可以参考

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值