java网站留言板源代码 javaweb留言板代码

开源里有没有留言板的源代码,JAVA的

绝对开源,绝对明了的留言板,便于学习的源码

创新互联专业为企业提供翔安网站建设、翔安做网站、翔安网站设计、翔安网站制作等企业网站建设、网页设计与制作、翔安企业网站模板建站服务,十载翔安做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

用JAVA写的留言板原代码

/*

* guestbookServlet.java

*

* */

import javax.servlet.*;

import javax.servlet.http.*;

import java.sql.*;

import java.util.Date;

/**

*

* */

public class guestbookServlet extends HttpServlet {

boolean debug=false;

String sDBDriver;

Connection conn=null;

ResultSet rs=null;

/** Initializes the servlet.

*/

public void init(ServletConfig config) throws ServletException {

super.init(config);

if(debug)

sDBDriver=new String("sun.jdbc.odbc.JdbcOdbcDriver");

else

sDBDriver=new String("org.gjt.mm.mysql.Driver");

try{

Class.forName(sDBDriver);

}

catch(java.lang.ClassNotFoundException e){

System.err.println("Driver类初始化:"+e.getMessage());

}

}

/** Destroys the servlet.

*/

public void destroy() {

}

/** Processes requests for both HTTP codeGET/code and codePOST/code methods.

* @param request servlet request

* @param response servlet response

*/

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, java.io.IOException {

response.setContentType("text/html;charset=gb2312");

java.io.PrintWriter out = response.getWriter();

boolean empty=true;

boolean noResult=true;

String sqlStr;

int currentPage=0;

int totalPage=0;

int reccount=0;

ResultSet myrs=null;

String username=request.getParameter("username");

String email=request.getParameter("email");

String ucontent=request.getParameter("ucontent");

String ipage=request.getParameter("ipage");

if(ipage==null||ipage.length()==0)

currentPage=1;

else

currentPage=Integer.parseInt(ipage);

if((username==null||username.length()==0)||(ucontent==null||ucontent.length()==0))empty=true;

else empty=false;

Date myDate=new Date();

//String intime=new String(String.valueOf(myDate.getYear()+1990)+String.valueOf(myDate.getMonth()));

String year=String.valueOf(myDate.getYear()+1900);

String month=String.valueOf(myDate.getMonth()+1);

if(month.length()==1)

month=new String("0"+month);

String days=String.valueOf(myDate.getDate());

if(days.length()==1)

days=new String("0"+days);

String hours=String.valueOf(myDate.getHours());

if(hours.length()==1)

hours=new String("0"+hours);

String minutes=String.valueOf(myDate.getMinutes());

if(minutes.length()==1)

minutes=new String("0"+minutes);

String intime=year+"-"+month+"-"+days+" "+hours+":"+minutes;

if(email==null||email.length()==0)

email=new String("");

if(!empty){

//username=convert(username);

//email=convert(email);

//ucontent=convert(ucontent);

sqlStr="insert into Mintegbook(Mname,Memail,Mcontent,Mtime,Mid) values("+username+","+email+","+ucontent+","+intime+",1)";

getDsnConn();

executeInsert(sqlStr);

}

sqlStr=new String("select Mname,Memail,Mcontent,Mtime from Mintegbook order by Mtime DESC");

getDsnConn();

reccount=getRecordCount("Mintegbook");

if(reccount==0)

noResult=true;

else

noResult=false;

if(!noResult){

int ipageSize=10;

totalPage=getTotalPage("Mintegbook",ipageSize);

if(currentPagetotalPage)

currentPage=totalPage;

int cursor=(currentPage-1)*ipageSize+1;

try{

myrs=executeScrollableQuery(sqlStr);

myrs.absolute(cursor);

}

catch(SQLException e){

noResult=true;

}

}

out.println("HTMLHEADTITLE我的Servlet留言板/TITLE");

out.println("META http-equiv="Content-Type" content="text/html; charset=gb2312"");

out.println("STYLE type="text/css"");

out.println("!--");

out.println(".mytext { font-family: "宋体"; font-size: 12px}");

out.println(" --");

out.println("/STYLE");

out.println("/HEAD");

out.println("BODY bgcolor="#FFFFFF" text="#000000"");

out.println("TABLE width="600" border="0" cellspacing="0" cellpadding="0" align="CENTER" class="mytext"");

out.println("TRTD height="22" | a href=""我的主页/a | 我的Servlet留言板(A href="mailto:yf188@21cn.com"川石/A制作)/TD/TR");

out.println("TRTD height="1" bgcolor="#999933"/TD/TR");

out.println("/TABLE");

out.println("BR");

out.println("TABLE width="600" border="0" cellspacing="0" cellpadding="0" align="CENTER" class="mytext"");

out.println("TRTD height="8"/TD/TR");

out.println("TRTD height="18" bgcolor="#f7f7f7"DIV align="right"");

out.println("共有 "+reccount + " 条留言 ");

out.println(" 当前第font color=#ff0000"+currentPage+"/font/共 "+totalPage+" 页 ");

if(currentPage1)

out.println(" a href=guestbookServlet?ipage=1首页/a a href=guestbookServlet?ipage="+(currentPage-1)+"上一页/a ");

else

out.println(" 首页 上一页 ");

if(currentPagetotalPage)

out.println(" a href=guestbookServlet?ipage="+(currentPage+1)+"下一页/a a href=guestbookServlet?ipage="+totalPage+"末页/a ");

else

out.println(" 下一页 末页 ");

out.println("/DIV/TD/TR");

out.println("/TABLE");

out.println("BR");

//这里是显示留言内容

if(!noResult){

String dname;

String demail;

String dcontent;

String dtime;

Date temptime;

try{

do{

dname=new String(myrs.getString("Mname"));

demail=new String(myrs.getString("Memail"));

dcontent=new String(myrs.getString("Mcontent"));

try{

dtime=new String(myrs.getObject("Mtime").toString());

}

catch(java.lang.NullPointerException e){

dtime=new String("2001-04-06 12:30");

}

if(dname==null)

dname=new String("川石");

if(demail==null)

demail=new String("yf188@21cn.com");

if(dcontent==null)

dcontent=new String("test");

if(dtime==null)

dtime=new String("2001-04-06 12:30");

dname=convert(dname);

dcontent=convert(dcontent);

//temptime=myrs.getDate("Mtime");

/*

String tempyear=String.valueOf(temptime.getYear()+1900);

String tempmonth=String.valueOf(temptime.getMonth()+1);

if(tempmonth.length()==1)

tempmonth=new String("0"+tempmonth);

String tempdays=String.valueOf(temptime.getDate());

if(tempdays.length()==1)

tempdays=new String("0"+tempdays);

String tempminute=String.valueOf(temptime.getMinutes());

if(tempminute.length()==1)

tempminute=new String("0"+tempminute);

String temphours=String.valueOf(temptime.getHours());

if(temphours.length()==1)

temphours=new String("0"+temphours);

String dtime=tempyear+" 年 "+ tempmonth +" 月 "+ tempdays +" 日 " + temphours+ " 时 "+ tempminute + " 分 ";

*/

out.println("TABLE width="600" border="0" cellspacing="0" cellpadding="4" align="CENTER" class="mytext"");

out.println("TRTD姓名 A href="mailto:"+demail+"""+dname+"/A 留言时间:"+dtime+"/TD/TR");

out.println("TRTD height="10"/TD/TR");

out.println("TRTD height="10""+dcontent+"/TD/TR");

out.println("/TABLE");

out.println("HR width="600" size="1"");

}while(myrs.next());}

catch(SQLException e){

out.println("error found");

}

}

else{

out.println("还没有留言!");

}

//结束

out.println("FORM name="form1" method="post" action="guestbookServlet"");

out.println("TABLE width="600" border="0" cellspacing="0" cellpadding="4" align="CENTER" class="mytext"");

out.println("TRTD width="80"姓名:/TDTDINPUT type="text" name="username"*/TD/TR");

out.println("TRTDEmail:/TDTDINPUT type="text" name="email"*/TD/TR");

out.println("TRTD留言:/TDTDTEXTAREA name="ucontent" cols="65" rows="4"/TEXTAREA/TD/TR");

out.println("/TABLE");

out.println("TABLE width="400" border="0" cellspacing="0" cellpadding="6" align="CENTER" class="mytext"");

out.println("TRTD height="15" width="200" /TDTD /TD/TR");

out.println("TRTDDIV align="RIGHT"INPUT type="button" name="Button" value=" 提 交 " style="cursor:hand" onclick="javascript:check()"/DIV/TD");

out.println("TDINPUT type="reset" name="Submit2" value=" 重 置 "/TD/TR");

out.println("/TABLE");

out.println("/FORM");

out.println("TABLE width="400" border="0" cellspacing="0" cellpadding="4" align="CENTER" class="mytext"");

out.println("TRTD width="15" /TD/TR");

out.println("TRTDDIV align="LEFT"/DIV/TD/TR");

out.println("TRTD /TD/TR");

out.println("/TABLE");

out.println("/BODY");

out.println("/HTML");

out.println("SCRIPT language="javascript"");

out.println("function check(){");

out.println("if(form1.username.value.length1||form1.ucontent.value.length1)");

out.println("{alert(姓名和留言是必须有的!);}else{form1.submit();}}");

out.println("/SCRIPT");

out.close();

}

/** Handles the HTTP codeGET/code method.

* @param request servlet request

* @param response servlet response

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, java.io.IOException {

processRequest(request, response);

}

/** Handles the HTTP codePOST/code method.

* @param request servlet request

* @param response servlet response

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, java.io.IOException {

processRequest(request, response);

}

protected void getDsnConn(){

String sqlUrl="jdbc:mysql://10.0.0.1/你申请用户名?user=你的名字password=你的帐号";

try{

if(debug)

conn=DriverManager.getConnection("jdbc:odbc:ODBC源","用户名","密码口令");

else

conn=DriverManager.getConnection(sqlUrl);

}

catch(SQLException es){

System.err.println("和库连接时出错:"+es.getMessage());

}

}

protected void executeInsert(String sqlStr){

try{

Statement stmt=conn.createStatement();

stmt.executeUpdate(sqlStr);

}

catch(SQLException es){

System.err.println("执行插入时:"+es.getMessage());

}

}

protected void executeUpdate(String sqlStr){

try{

Statement stmt=conn.createStatement();

stmt.executeUpdate(sqlStr);

}

catch(SQLException e){

System.err.println("error in query record");

}

}

//查寻

protected ResultSet executeQuery(String sqlStr){

rs=null;

try{

Statement stmt=conn.createStatement();

rs=stmt.executeQuery(sqlStr);

}

catch(SQLException ex){

System.err.println("执行查寻出错:"+ex.getMessage());

}

return rs;

}

protected ResultSet executeScrollableQuery(String sqlStr){

rs=null;

try{

Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

rs=stmt.executeQuery(sqlStr);

}

catch(SQLException e){

System.err.println("执行动态查寻出错");

}

return rs;

}

//得到表记录总数

protected int getRecordCount(String sTableName){

rs=null;

int CountResult=0;

String sqlStr="select count(*) from "+sTableName;

try{

Statement stmt=conn.createStatement();

rs=stmt.executeQuery(sqlStr);

if(rs.next())

CountResult=rs.getInt(1);

rs=null;

stmt.close();

}

catch(SQLException ex){

System.err.println(ex.getMessage());

}

return CountResult;

}

//得到记录总页数

protected int getTotalPage(String sTableName,int iPageSize){

int totalPage;

int totalRecNum=getRecordCount(sTableName);

if(totalRecNum%iPageSize==0)

totalPage=totalRecNum/iPageSize;

else

totalPage=totalRecNum/iPageSize+1;

return totalPage;

}

protected String convert(String InputStr){

String converted=new String();

byte[] bytes;

try{

bytes=InputStr.getBytes("ISO8859-1");

converted=new String(bytes,"GB2312");

}

catch(java.io.UnsupportedEncodingException e){

System.out.print("error");

}

return converted;

}

/** Returns a short description of the servlet.

*/

public String getServletInfo() {

return "Short description";

}

}

急急急!java简单留言板

您好。我重新地帮你写了代码,完全地符合了你的图片中的界面要求、功能要求。代码如下:(解决了问题,记得给我分哦~^_^呵呵……)

import java.awt.BorderLayout;

import javax.swing.JPanel;

import javax.swing.JFrame;

import java.awt.Rectangle;

import javax.swing.JLabel;

import javax.swing.SwingConstants;

import java.awt.Font;

import javax.swing.JTextArea;

import javax.swing.JScrollBar;

import javax.swing.JScrollPane;

import javax.swing.JComboBox;

import javax.swing.JTextField;

import javax.swing.JButton;

public class Liuyb extends JFrame {

private static final long serialVersionUID = 1L;

private JPanel jContentPane = null;

private JLabel jLabel = null;

private JTextArea jTextArea = null;

private JScrollPane jScrollPane = null;

private JLabel jLabel1 = null;

private JComboBox jComboBox = null;

private JLabel jLabel2 = null;

private JTextField jTextField = null;

private JButton jButton = null;

private JButton jButton1 = null;

private JButton jButton2 = null;

private JButton jButton3 = null;

/**

* This is the default constructor

*/

public Liuyb() {

super();

initialize();

}

/**

* This method initializes this

*

* @return void

*/

private void initialize() {

this.setContentPane(getJContentPane());

this.setTitle("留言板程序");

this.setBounds(new Rectangle(0, 0, 640, 480));

this.setVisible(true);

}

/**

* This method initializes jContentPane

*

* @return javax.swing.JPanel

*/

private JPanel getJContentPane() {

if (jContentPane == null) {

jLabel2 = new JLabel();

jLabel2.setBounds(new Rectangle(214, 407, 45, 24));

jLabel2.setFont(new Font("Dialog", Font.BOLD, 14));

jLabel2.setText("地说:");

jLabel1 = new JLabel();

jLabel1.setBounds(new Rectangle(32, 407, 15, 24));

jLabel1.setFont(new Font("Dialog", Font.BOLD, 14));

jLabel1.setText("你");

jLabel = new JLabel();

jLabel.setBounds(new Rectangle(283, 15, 45, 20));

jLabel.setHorizontalAlignment(SwingConstants.CENTER);

jLabel.setFont(new Font("Dialog", Font.BOLD, 14));

jLabel.setText("留言板");

jContentPane = new JPanel();

jContentPane.setLayout(null);

jContentPane.add(jLabel, null);

jContentPane.add(getJScrollPane(), null);

jContentPane.add(jLabel1, null);

jContentPane.add(getJComboBox(), null);

jContentPane.add(jLabel2, null);

jContentPane.add(getJTextField(), null);

jContentPane.add(getJButton(), null);

jContentPane.add(getJButton1(), null);

jContentPane.add(getJButton2(), null);

jContentPane.add(getJButton3(), null);

}

return jContentPane;

}

/**

* This method initializes jTextArea

*

* @return javax.swing.JTextArea

*/

private JTextArea getJTextArea() {

if (jTextArea == null) {

jTextArea = new JTextArea();

jTextArea.setText("留言内容:");

jTextArea.setEditable(false);

}

return jTextArea;

}

/**

* This method initializes jScrollPane

*

* @return javax.swing.JScrollPane

*/

private JScrollPane getJScrollPane() {

if (jScrollPane == null) {

jScrollPane = new JScrollPane();

jScrollPane.setBounds(new Rectangle(22, 49, 534, 347));

jScrollPane.setViewportView(getJTextArea());

}

return jScrollPane;

}

/**

* This method initializes jComboBox

*

* @return javax.swing.JComboBox

*/

private JComboBox getJComboBox() {

if (jComboBox == null) {

jComboBox = new JComboBox();

jComboBox.setBounds(new Rectangle(54, 407, 149, 24));

String[] mycbox={"微笑","大笑","痛苦"};

jComboBox.addItem(mycbox[0]);

jComboBox.addItem(mycbox[1]);

jComboBox.addItem(mycbox[2]);

}

return jComboBox;

}

/**

* This method initializes jTextField

*

* @return javax.swing.JTextField

*/

private JTextField getJTextField() {

if (jTextField == null) {

jTextField = new JTextField();

jTextField.setBounds(new Rectangle(265, 407, 231, 24));

}

return jTextField;

}

/**

* This method initializes jButton

*

* @return javax.swing.JButton

*/

private JButton getJButton() {

if (jButton == null) {

jButton = new JButton();

jButton.setBounds(new Rectangle(505, 407, 70, 24));

jButton.setText("提交");

jButton.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

jTextArea.setText(jTextArea.getText()+"\r\n"+"你"+jComboBox.getSelectedItem().toString()+"地说:"+jTextField.getText());

}

});

}

return jButton;

}

/**

* This method initializes jButton1

*

* @return javax.swing.JButton

*/

private JButton getJButton1() {

if (jButton1 == null) {

jButton1 = new JButton();

jButton1.setBounds(new Rectangle(565, 51, 60, 32));

jButton1.setText("清屏");

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

jTextArea.setText("留言内容:");

}

});

}

return jButton1;

}

/**

* This method initializes jButton2

*

* @return javax.swing.JButton

*/

private JButton getJButton2() {

if (jButton2 == null) {

jButton2 = new JButton();

jButton2.setBounds(new Rectangle(565, 112, 60, 32));

jButton2.setText("置顶");

jButton2.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

jTextArea.setCaretPosition(0);

}

});

}

return jButton2;

}

/**

* This method initializes jButton3

*

* @return javax.swing.JButton

*/

private JButton getJButton3() {

if (jButton3 == null) {

jButton3 = new JButton();

jButton3.setBounds(new Rectangle(565, 173, 60, 32));

jButton3.setText("至尾");

jButton3.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

jTextArea.setCaretPosition((int)jTextArea.getText().length());

}

});

}

return jButton3;

}

public static void main(String args[]){

new Liuyb();

}

}

用Java web 做一个留言板 留言功能实现了,不知道怎么实现回复和删除留言的功能,知道的高手,请帮帮忙。

先说说回复吧:

假如:

留言表(id , text )两个字段

回复表( id , text parentId )用来存放留言表id 三个字段

目前有一条留言

1001,'这是一条留言';

那么给这条留言的回复就是

1003 , '这是一条回复', 1001(这就是该留言的ID) 这样就把留言和回复关联上了

回复后点保存时,将数据传入后台,数据库做insert操作就行了

删除一样的

如果删除回复,直接传入回复的ID 即可

如果删除留言,得先判断该留言有没有回复,如果有回复,则先删除回复,在删除留言(外键约束)


文章题目:java网站留言板源代码 javaweb留言板代码
转载源于:http://pwwzsj.com/article/doiedgo.html