婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 一個jsp+AJAX評論系統第1/2頁

一個jsp+AJAX評論系統第1/2頁

熱門標簽:電話機器人的特色和創新 地圖標注人員兼職 騰訊地圖標注商戶改名注冊入駐 怎樣把地圖標注出來 商丘百應電話機器人有沒有效果 開封便宜外呼系統報價 黃石智能營銷電銷機器人效果 漯河辦理400電話 淮南騰訊地圖標注
這是一個簡單的評論系統,使用了JDOM(這邊使用Jdom-b9),實例使用JSP作為視圖,結合使用AJAX(用到prototype-1.4),Servlet和JavaBean作為后臺處理,使用xml文件存儲數據。
1.應用目錄結構如下:
data
  |--comment.xml
js
  |--prototype.js
  |--ufo.js(UTF-8格式)                                                                     
css
  |--ufo.css
images
  |--loading.gif
ufo.jsp(UTF-8格式)
WEB-INF
  |-lib
      |-jdom.jar    
  |-classes
     ...
  |-web.xml

/*********************************************
*Author:Java619
*Time:2007-02-14
**********************************************/


2.后臺JavaBean  CommentBean.java

/** *//**
 * P>外星人是否存在評論系統/p>
 * @author ceun
 * 聯系作者:br>
 *    a href="mailto:ceun@163.com">ceun/a>br>
 * @version 1.0 2007-01-30 實現基本功能br>
 * CommentBean.java
 * Created on Jan 30, 2007 9:39:19 AM
 */
package com.ceun.bean;

import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Random;

import org.jdom.CDATA;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.Text;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;

/** *//**
 *p> 封裝對XML的操作/p>
 * @author ceun
 * 聯系作者:br>
 *    a href="mailto:ceun@163.com">ceun/a>br>
 * @version 1.0 2007-01-30 實現基本功能br>
 */
public class CommentBean ...{
    private String filepath;

    private SAXBuilder builder = null;

    private Document doc = null;

    public CommentBean() ...{

    }
/** *//**
 * 初始化XML文件路徑,加載文件
 * */
    public CommentBean(String path) ...{
        this.filepath = path;
        builder = new SAXBuilder();
        try ...{
            doc = builder.build(filepath);
        } catch (JDOMException e) ...{
            System.out.print("找不到指定的XML文件");
            e.printStackTrace();
        } catch (IOException e) ...{
            System.out.print("找不到指定的文件");
            e.printStackTrace();
        }
    }
 /** *//**
  * 添加評論
  * @param nikename 評論者昵稱
  * @param comment 評論內容
  * @param attitude 評論者的結論(yes-存在,no-不存在)
  * */
    public String addComment(String nikename, String comment, String attitude) ...{
        Element root = doc.getRootElement();

        Element el = new Element("comment");
        Random rand = new Random();
        int id = rand.nextInt(10000);
        el.setAttribute("id", "comment_" + id);
        el.setAttribute("attitude", attitude);

        Element name = new Element("nikename");
        CDATA cname = new CDATA(nikename);
        name.addContent(cname);

        Element data = new Element("data");
        CDATA ctext = new CDATA(comment);
        data.addContent(ctext);

        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date = new Date();
        Text tdate = new Text(format.format(date));
        Element pubdate = new Element("pubdate");
        pubdate.addContent(tdate);

        el.addContent(name);
        el.addContent(data);
        el.addContent(pubdate);
        root.addContent(el);
        XMLOutputter outputter = new XMLOutputter("  ", true, "GB2312");
        // 清除comment元素間的空格
        outputter.setTrimAllWhite(true);
        try ...{
            outputter.output(doc, new FileWriter(filepath));
        } catch (IOException e) ...{
            System.out.println("指定路徑有錯");
            e.printStackTrace();
        }
        return tdate.getText();
    }
/** *//**
 * 刪除指定ID的評論
 * @param commentId 評論ID
 * @return 返回操作結果字符串(成功或失敗)
 * */
    public String removeComment(String commentId) ...{
        Element root = doc.getRootElement();
        List comments = root.getChildren();
        int size = comments.size();
        Element dist = null;
        for (int i = 0; i  size; i++) ...{
            Element comment = (Element) comments.get(i);
            String id = comment.getAttributeValue("id");
            if (id.equals(commentId)) ...{
                dist = comment;
                break;
            }
        }
        if (dist != null) ...{
            root.removeContent(dist);
            XMLOutputter outputter = new XMLOutputter("  ", true, "GB2312");
            // 清除comment元素間的空格
            outputter.setTrimAllWhite(true);
            try ...{
                outputter.output(doc, new FileWriter(filepath));
            } catch (IOException e) ...{
                System.out.println("重寫文件有出錯");
                e.printStackTrace();
            }
            return "成功刪除指定元素!";
        } else
            return "指定元素不存在!";
    }
/** *//**
 * 批量刪除評論
 * @param commentIdArgs 評論ID數組
 * @return 返回操作結果字符串(成功或失敗)
 * */
    public String removeComments(String[] commentIdArgs) ...{
        Element root = doc.getRootElement();
        List comments = root.getChildren();
        int size = comments.size();
        int len = commentIdArgs.length;
        ListElement> dist = new ArrayListElement>();
        outer:for (int i = 0; i  size; i++) ...{
            Element comment = (Element) comments.get(i);
            String id = comment.getAttributeValue("id");

            for (int j = 0; j  len; j++)
                if (id.equals(commentIdArgs[j])) ...{
                    dist.add(comment);
                    continue outer;
                }
        }
        int dist_size=dist.size();
        if (dist_size != 0) ...{
            for (int i = 0; i  dist_size; i++)
                root.removeContent(dist.get(i));
            XMLOutputter outputter = new XMLOutputter("  ", true, "GB2312");
            // 清除comment元素間的空格
            outputter.setTrimAllWhite(true);
            try ...{
                outputter.output(doc, new FileWriter(filepath));
            } catch (IOException e) ...{
                System.out.println("重寫文件有出錯");
                e.printStackTrace();
            }
            return "成功刪除指定的元素集合!";
        } else
            return "指定元素集合的不存在!";
    }

    /** *//**
     * @return the filepath
     */
    public String getFilepath() ...{
        return filepath;
    }

    /** *//**
     * @param filepath
     *            the filepath to set
     */
    public void setFilepath(String filepath) ...{
        this.filepath = filepath;
    }

    /** *//**
     * @return the builder
     */
    public SAXBuilder getBuilder() ...{
        return builder;
    }

    /** *//**
     * @param builder
     *            the builder to set
     */
    public void setBuilder(SAXBuilder builder) ...{
        this.builder = builder;
    }
}

3.處理AJAX請求的Servlet  AddCommentServlet.java

package com.ceun.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.ceun.bean.CommentBean;
/** *//**
 * p>后臺處理Servlet/p>
 *2007-01-30
 * * @author ceun
 * 聯系作者:br>
 *    a href="mailto:ceun@163.com">ceun/a>br>
 * @version 1.0 2007-01-30 實現基本功能br>
 * */
public class AddCommentServlet extends HttpServlet ...{

    /** *//**
     * serialVersionUID long
     */
    private static final long serialVersionUID = 1L;

    /** *//**
     * The doGet method of the servlet. br>
     * 
     * This method is called when a form has its tag value method equals to get.
     * 
     * @param request
     *            the request send by the client to the server
     * @param response
     *            the response send by the server to the client
     * @throws ServletException
     *             if an error occurred
     * @throws IOException
     *             if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException ...{
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=UTF-8");
        response.setHeader("Cache-Control", "no-cache");

        PrintWriter out = response.getWriter();
        String nikename = request.getParameter("nn");

        String comment = request.getParameter("rsn");
        String attitude = request.getParameter("atti");
        String filepath = request.getSession().getServletContext().getRealPath(
                "data/comment.xml");
        CommentBean bean = new CommentBean(filepath);
        String str = bean.addComment(nikename, comment, attitude);
        out.println(str);
    }

    /** *//**
     * The doPost method of the servlet. br>
     * 
     * This method is called when a form has its tag value method equals to
     * post.
     * 
     * @param request
     *            the request send by the client to the server
     * @param response
     *            the response send by the server to the client
     * @throws ServletException
     *             if an error occurred
     * @throws IOException
     *             if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException ...{

        doGet(request, response);
    }

}
12下一頁閱讀全文
您可能感興趣的文章:
  • 使用MongoDB和JSP實現一個簡單的購物車系統實例
  • 基于jsp實現新聞管理系統 附完整源碼
  • JSP學生信息管理系統
  • JSP學生信息管理系統設計

標簽:馬鞍山 岳陽 鄭州 紅河 亳州 大興安嶺 武威 拉薩

巨人網絡通訊聲明:本文標題《一個jsp+AJAX評論系統第1/2頁》,本文關鍵詞  一個,jsp+AJAX,評論,系統,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《一個jsp+AJAX評論系統第1/2頁》相關的同類信息!
  • 本頁收集關于一個jsp+AJAX評論系統第1/2頁的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    一本到一区二区三区| 美女视频第一区二区三区免费观看网站| 51精品久久久久久久蜜臀| 91蜜桃在线观看| 99国产精品视频免费观看| 成人av小说网| 色婷婷综合久久久中文字幕| 91黄色在线观看| 欧美精品亚洲二区| 日韩一区二区在线观看视频| 精品黑人一区二区三区久久| 久久久久国产精品人| 国产日韩欧美不卡在线| 中文字幕一区二区日韩精品绯色| 中国av一区二区三区| 樱桃视频在线观看一区| 亚洲一区在线观看免费| 午夜亚洲福利老司机| 麻豆成人免费电影| 国产99久久久国产精品免费看| 成人综合婷婷国产精品久久蜜臀 | 国产午夜精品一区二区三区嫩草| 欧美成人在线直播| 中文字幕欧美日韩一区| 一区二区三区四区在线播放 | 国产精品亚洲一区二区三区妖精| 国产成人精品免费看| 色噜噜夜夜夜综合网| 欧美日韩国产综合一区二区 | 高清国产午夜精品久久久久久| 成人99免费视频| 欧美日韩一二三| 日韩欧美激情在线| 中文字幕一区二区在线播放| 亚洲地区一二三色| 激情成人午夜视频| 欧美午夜电影一区| 国产精品久久看| 蜜桃在线一区二区三区| 色综合久久久久综合| 日韩一区二区中文字幕| 一区二区在线观看不卡| 国产一区二区91| 在线播放国产精品二区一二区四区 | 国产馆精品极品| 欧美日韩在线精品一区二区三区激情 | 欧美三级视频在线播放| 欧美国产1区2区| 日本伊人色综合网| 在线看日本不卡| 欧美国产在线观看| 韩国三级电影一区二区| 88在线观看91蜜桃国自产| 亚洲乱码精品一二三四区日韩在线| 精品一区二区免费| 欧美一区二区三区四区久久| 亚洲乱码国产乱码精品精的特点| 国产黄色精品视频| 久久这里只有精品6| 日韩电影网1区2区| 在线观看91av| 日产国产高清一区二区三区| 在线免费av一区| 亚洲制服丝袜在线| 色网站国产精品| 亚洲人成人一区二区在线观看| 国产黄人亚洲片| 国产精品久久久久婷婷二区次| 国产一区二区三区日韩| 精品福利二区三区| 国产一区日韩二区欧美三区| 日韩一区二区三区在线视频| 日韩中文字幕不卡| 在线电影国产精品| 精品亚洲国内自在自线福利| 欧美成人女星排行榜| 久久成人综合网| 久久精品亚洲麻豆av一区二区| 久久99国产精品成人| 久久久.com| 成人综合日日夜夜| 一区二区三区av电影| 欧美午夜精品一区二区三区| 婷婷一区二区三区| 精品少妇一区二区三区在线播放| 国产一区二区影院| 亚洲日穴在线视频| 欧美日韩一区二区三区不卡| 五月综合激情网| 久久这里只有精品视频网| 成人激情视频网站| 亚洲精品国产第一综合99久久 | 亚洲午夜视频在线观看| 69精品人人人人| 国产精品一卡二| 亚洲色图清纯唯美| 欧美美女bb生活片| 国产一区久久久| 亚洲精品美腿丝袜| 欧美一区二区人人喊爽| 国产suv精品一区二区三区| 亚洲免费观看在线视频| 日韩午夜电影在线观看| 99久久99久久精品免费看蜜桃| 亚洲一区二区在线免费观看视频| 欧美一区二区三区四区在线观看| 国产·精品毛片| 五月天精品一区二区三区| 久久久久久亚洲综合| 欧日韩精品视频| 福利视频网站一区二区三区| 亚洲一区二区三区四区五区黄 | 欧美一区二区在线看| 国产夫妻精品视频| 午夜久久久影院| 综合激情成人伊人| 26uuu国产日韩综合| 欧美三级电影网站| 9久草视频在线视频精品| 日日夜夜免费精品视频| 国产精品久久久久一区| 2023国产精品自拍| 这里是久久伊人| 色婷婷av一区二区三区gif| 国产一区二区三区观看| 日韩经典中文字幕一区| 中文字幕一区三区| 国产欧美一区二区三区在线看蜜臀 | 99这里只有久久精品视频| 麻豆视频一区二区| 亚洲aⅴ怡春院| 亚洲人成伊人成综合网小说| 欧美变态口味重另类| 欧美日韩和欧美的一区二区| 91无套直看片红桃| 懂色av中文一区二区三区| 国产精品影视网| 国产中文字幕精品| 久久99精品视频| 精彩视频一区二区| 美女视频黄频大全不卡视频在线播放 | 欧美午夜寂寞影院| 欧美自拍偷拍一区| 色老头久久综合| 色欧美日韩亚洲| 一道本成人在线| 91一区二区在线| 日本久久电影网| 日本高清视频一区二区| 91丨九色丨蝌蚪丨老版| 一本一道久久a久久精品| 色综合天天做天天爱| 一本色道**综合亚洲精品蜜桃冫| 色系网站成人免费| 欧美人体做爰大胆视频| 3d成人h动漫网站入口| 欧美一区二区视频网站| 欧美不卡一区二区三区四区| 亚洲精品在线电影| 国产日韩欧美一区二区三区乱码| 国产精品久久久久久户外露出| 国产精品久久久久久久久免费桃花| 综合在线观看色| 亚洲bdsm女犯bdsm网站| 美女国产一区二区三区| 国产福利不卡视频| 色诱视频网站一区| 欧美精品久久天天躁| 精品欧美久久久| 国产精品久久久久国产精品日日| 亚洲美女一区二区三区| 婷婷激情综合网| 国产黑丝在线一区二区三区| 色婷婷精品久久二区二区蜜臂av| 欧美在线观看一区| 日韩精品综合一本久道在线视频| 亚洲h动漫在线| 精品一区二区三区日韩| av在线一区二区| 3d动漫精品啪啪1区2区免费| 国产三级欧美三级日产三级99| 综合在线观看色| 久久精品理论片| 色8久久精品久久久久久蜜| 欧美一区二区久久久| 国产欧美一区二区精品性色超碰| 亚洲精品视频在线看| 青青青爽久久午夜综合久久午夜| 国产不卡免费视频| 欧美精品一卡二卡| 国产精品福利一区| 国产在线不卡一区| 欧美女孩性生活视频| 国产精品青草综合久久久久99| 亚洲一区二区在线播放相泽 | 亚洲精品老司机| 国产成人精品网址| 91精品在线观看入口| 亚洲综合一区在线| 91蜜桃网址入口|