java implementation of message board function example
- 2020-06-23 00:19:16
- OfStack
JSP+JavaBean message board technology
<span style="font-size:16px;">Messages.html
<HTML></span><span style="font-size:16px;"><HEAD> <TITLE> message board </TITLE></HEAD>
<BODY> <center> Message board </center>
<FORM action="addMessage.jsp" >
<TABLE border=1 align="center">
<TR><TD> Name: </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> Topic: </TD>
<TD><input type="text" name="title" size=25></TD></TR>
<TR><TD> Message: </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=" Submit a message "></TD>
<TD align="center">
<a href="viewMessages.jsp" rel="external nofollow" ><font size=2> See the message </font></a></TD>
<TD align="center"><input type="reset" value=" To fill in "></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 or getter methods
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"> All messages </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%"> A message people :</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%"> The theme :</td>
<td colspan="3"><%=mg.getTitle()%></td>
</tr>
<tr>
<td width="20%"> content :</td>
<td colspan="3"><%=mg.getContent()%></td>
</tr>
<% message_count++;
}
%>
</Table>
<p align="center"><a href="Messages.html" rel="external nofollow" > I want to leave a message </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 or getter methods
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.*; // The introduction of java.sql package
import java.util.*;
public class MessageBean {
private Connection con; MessageData msg;
public MessageBean()
{ String JDriver="com.mysql.jdbc.Driver"; // Define the driver object
String userName="root"; // Define the database user name
String userPasswd=""; // Define the database access password
String dbName="message"; // Define database name
String conURL="jdbc:mysql://localhost:3306/"+dbName;
try{Class.forName(JDriver).newInstance(); // loading JDBC The driver
con=DriverManager.getConnection(conURL,userName,userPasswd);
// Connect to database
}
catch(Exception e){System.err.println(e.getMessage());}
}
public void setMessage(MessageData msg) {this.msg=msg;}
// add 1 Message message
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(); // Close the database connection
}
catch(Exception e){ e.printStackTrace(); throw e;}
}
// Get all message messages and return results to JSP page
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>
The function is simple message board, but it clearly explains the use of JSP+JavaBean technology, friends in need can refer to