复制代码代码如下:
<%@ ภาษาเพจ = "java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
-
เส้นทางสตริง = request.getContextPath();
สตริง basePath = request.getScheme() + "://"
+ request.getServerName() + /// + request.getServerPort()
+ เส้นทาง + "/";
-
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<หัว>
<meta content="width=device-width, Initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>微客服</title>
<style type="text/css">
ร่างกาย{
การจัดแนวข้อความ: กึ่งกลาง;
ระยะขอบ: 0;
ช่องว่างภายใน: 0;
สี: #500f60;
พื้นหลัง: url("../images/bj_4.jpg");
พื้นหลังซ้ำ: ไม่ซ้ำ;
สิ่งที่แนบมากับพื้นหลัง: เลื่อน;
ขนาดพื้นหลัง:100% 100%;
ล้น-x: ซ่อนเร้น;
-
ลี่{
รายการสไตล์ประเภท: ไม่มี;
-
เป็น:ลิงค์{
รายการสไตล์ประเภท: ไม่มี;
-
img{
ความกว้าง: 100%;
-
#คงที่{
ระยะขอบ: 0 อัตโนมัติ;
การจัดแนวข้อความ: ซ้าย;
ความกว้าง: 90%;
ขอบบน: 20px;
-
.aa{
ช่องว่างภายในซ้าย: 16px;
-
#บอท{
เส้นขอบ: 3px #590303 ทึบ;
รัศมีเส้นขอบ: 6px 6px 6px 6px;
-moz-border-รัศมี: 6px;
ความกว้าง: 90%;
ขอบซ้าย: 5%;
-
.เท็กซ์{
ขอบบน: ไม่มี;
ขอบล่าง: ไม่มี;
ขอบซ้าย: ไม่มี;
เส้นขอบขวา: ไม่มี;
พื้นหลัง: แก้ไขแล้ว;
-
</สไตล์>
</หัว>
<script type="text/javascript">
$(ฟังก์ชั่น() {
แถว var = 5;
//动态加评论信息
ฟังก์ชั่น loadCommentInfo (หน้า) {
$("#หน้า").ข้อความ(หน้า);
$.ajax({
ชนิด : "โพสต์",
url : "<%=basePath%>findClickCommentByPage.action",
ข้อมูล: "page="+page+"&row="+row,
ความสำเร็จ : ฟังก์ชั่น (ข้อมูล) {
รายการ var = data.list;
แถว var = "";
$("#ความคิดเห็น").empty();
สำหรับ ( var i = 0; i < list.length; i++) {
แถว = "<h3><span style=/"สี: #000; ขนาดตัวอักษร: 0.5em; ช่องว่างภายในซ้าย: 70%;/">"+list[i].time+"</span></h3>"+
"<h3 style=/"padding-left: 12px;/">"+list[i].content+"</h3>";
ถ้า (รายการ [i] .repcontent! = null) {
แถว+="<h3 style=/"padding-left: 12px; การตัดคำ: แบ่งคำ; การแบ่งคำ: ปกติ;/">回复:"+list[i].repcontent+"</h3>";
-
"<hr size=/"5px;/" color=/"#f0f/">";
$(แถว).appendTo($("#ความคิดเห็น"));
-
$("#pagetag").val(หน้า);
-
-
-
ฟังก์ชั่น getTotalContent() {
$.ajax({
ชนิด : "โพสต์",
url : "<%=basePath%>getTotalNum.action",
ความสำเร็จ : ฟังก์ชั่น (ข้อมูล) {
$("#count").text(data.total);
ถ้า(parseInt(data.total)==0){
$("#หน้า").ข้อความ(0);
-
var pagenum = parseInt(data.total/row);
$("#totalpage").text(parseInt(data.total%row==0?pagenum:pagenum+1));
-
-
-
$("#submit").คลิก(ฟังก์ชั่น(){
เนื้อหา var = $("#content").val();
ถ้า(เนื้อหา==""){
alert("内容不能为空!");
กลับ;
-
$.post("<%=basePath%>addClickComment.action","content="+content,function(data){
ถ้า (data.success == จริง) {
alert("发表成功!");
$("#content").val("");
loadCommentInfo(parseInt($("#pagetag").val()));
getTotalContent();
-
-
-
$("#pre").คลิก(ฟังก์ชั่น(){
หน้า var = parseInt($("#pagetag").val());
ถ้า(หน้า>1){
หน้าหนังสือ--;
loadCommentInfo(หน้า);
-
-
$("#ถัดไป").คลิก(ฟังก์ชั่น(){
หน้า var = parseInt($("#pagetag").val());
ถ้า(หน้า<parseInt($("#totalpage").text())){
หน้า++;
loadCommentInfo(หน้า);
-
-
window.onload = loadCommentInfo (1);
window.onload = getTotalContent();
-
</สคริปต์>
<ร่างกาย>
<input type="hidden" id="pagetag" value="1">
<div id="คงที่">
<div style="text-align: left; z-index: 999">
<img src="../pic/top4.jpg">
<a href="<%=basePath%>jsp/index.jsp"><img src="../pic/fan_2.png"></a>
</div>
<button style="พื้นหลัง: #520202; border-top: none;border: 3px #520202 solid; border-radius: 2px 2px 2px 2px;-moz-border-radius: 6px; color: #FFEA00;" id="pre">上一页</button>
<button style="พื้นหลัง: #520202; border-top: none;border: 3px #520202 solid; border-radius: 2px 2px 2px 2px;-moz-border-radius: 6px;float: right; color: #FFEA00; " id="ถัดไป">เพิ่มเติม</button>
<p style="พื้นหลัง: #520202; color: #FFEA00;">第<span id="page"></span>/<span id="totalpage"></span>页</p>
<h1>评论(<span id="count"></span>)</h1>
<hr size="5px;" สี="#590303">
<div id="ความคิดเห็น">
</div>
<h2>发表评论</h2>
<h3>您的评论:</h3>
<div id="บอท">
<textarea แถว="7" cols="100%" id="content"></textarea>
</div>
<button style="margin-left:80%; border-top: none;border: 3px #520202 solid; border-radius: 6px 6px 6px 6px;-moz-border-radius: 6px; color: #FFEA00; พื้นหลัง: #520202;" id="submit">发表</button>
</div>
</ร่างกาย>
</html>
dao层
复制代码代码如下:
แพ็คเกจ dfml.daoImpl;
นำเข้า java.sql.SQLException;
นำเข้า java.util.List;
นำเข้า javax.annotation.Resource;
นำเข้า org.hibernate.Criteria;
นำเข้า org.hibernate.HibernateException;
นำเข้า org.hibernate.Query;
นำเข้า org.hibernate.Session;
นำเข้า org.hibernate.criterion.Order;
นำเข้า org.springframework.orm.hibernate3.HibernateCallback;
นำเข้า org.springframework.orm.hibernate3.HibernateTemplate;
นำเข้า org.springframework.stereotype.Component;
นำเข้า dfml.dao.ClickCommentDao;
นำเข้า dfml.pojo.ClickComment;
@ส่วนประกอบ
ClickCommentDaoImpl คลาสสาธารณะใช้ ClickCommentDao {
HibernateTemplate ส่วนตัว hibernateTemplate;
@ทรัพยากร
โมฆะสาธารณะ setHibernateTemplate (HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = ไฮเบอร์เนตเทมเพลต;
-
//添加一条评论信息
@แทนที่
addClickComment บูลีนสาธารณะ (ClickComment clickComment) {
บูลีน isSuccess = false;
พยายาม {
hibernateTemplate.save (คลิกความคิดเห็น);
คือความสำเร็จ = จริง;
} จับ (ข้อยกเว้นจ) {
isSuccess = เท็จ;
e.printStackTrace();
-
กลับเป็นความสำเร็จ;
-
//分页查找评论信息
@SuppressWarnings("ไม่ได้เลือก")
@แทนที่
รายการสาธารณะ <ClickComment> findClickCommentByPage (หน้า int สุดท้าย แถว int สุดท้าย) {
รายการ <ClickComment> รายการ = this.hibernateTemplate
.executeFind(ใหม่ HibernateCallback<Object>() {
@แทนที่
วัตถุสาธารณะ doInHibernate (เซสชันเซสชัน)
พ่น HibernateException, SQLException {
เกณฑ์ c = session.createCriteria (ClickComment.class);
c.setFirstResult((หน้า - 1) * แถว);
c.setMaxResults(แถว);
c.addOrder(Order.desc("เวลา"));
กลับ c.list();
-
-
รายการส่งคืน;
-
//得到评论的个数
@SuppressWarnings({ "ไม่ได้เลือก", "rawtypes" })
@แทนที่
สาธารณะยาว getClickCommentCount () {
สุดท้าย String hql = "เลือกจำนวน (*) จาก ClickComment";
ผลลัพธ์แบบยาว = null;
ผลลัพธ์ = (ยาว) hibernateTemplate.execute (ใหม่ HibernateCallback () {
วัตถุสาธารณะ doInHibernate (เซสชัน arg0)
พ่น HibernateException, SQLException {
แบบสอบถามแบบสอบถาม = arg0.createQuery(hql);
กลับ query.uniqueResult();
-
-
ส่งคืนผลลัพธ์;
-
//更新评论信息
@แทนที่
การอัปเดตบูลีนสาธารณะ ClickComment (ClickComment clickComment) {
บูลีน isSuccess=false;
พยายาม {
hibernateTemplate.update (คลิกความคิดเห็น);
คือความสำเร็จ=จริง;
} จับ (ข้อยกเว้นจ) {
e.printStackTrace();
isSuccess=เท็จ;
-
กลับเป็นความสำเร็จ;
-
//根据id查找评论信息
@แทนที่
ClickComment สาธารณะ findClickCommentById (int id) {
กลับ (ClickComment) hibernateTemplate.find("จาก ClickComment โดยที่ id = ?",
รหัส).get(0);
-
//删除评论信息
@แทนที่
บูลีนสาธารณะ DeleteClickComment (ClickComment clickComment) {
บูลีน isSuccess=false;
พยายาม {
hibernateTemplate.delete (คลิกความคิดเห็น);
คือความสำเร็จ=จริง;
} จับ (ข้อยกเว้นจ) {
e.printStackTrace();
isSuccess=เท็จ;
-
กลับเป็นความสำเร็จ;
-
//查询所有的评论
@SuppressWarnings("ไม่ได้เลือก")
@แทนที่
รายการสาธารณะ <ClickComment> findAllClickComment() {
กลับ hibernateTemplate.find("จาก ClickComment");
-
-
เสา 配置
复制代码代码如下:
<ชื่อแพ็คเกจ = "clickComment" ขยาย = "json-default" เนมสเปซ = "/">
<ชื่อการกระทำ = "addClickComment" method = "addClickComment">
<ชื่อผลลัพธ์ = "เพิ่ม" ประเภท = "json">
<param name="root">แผนที่</param>
</ผล>
</การกระทำ>
<ชื่อการกระทำ = "findClickCommentByPage" method = "findClickCommentByPage">
<ชื่อผลลัพธ์ = "findByPage" type = "json">
<param name="root">แผนที่</param>
</ผล>
</การกระทำ>
<ชื่อการกระทำ = "getTotalNum" method = "getTotalNum">
<ชื่อผลลัพธ์ = "รวม" ประเภท = "json">
<param name="root">แผนที่</param>
</ผล>
</การกระทำ>
<ชื่อการกระทำ = "updateClickComment" method = "updateClickComment">
<ชื่อผลลัพธ์ = "อัพเดต" type = "json">
<param name="root">แผนที่</param>
</ผล>
</การกระทำ>
<ชื่อการกระทำ = "findAllClickComment" method = "findAllClickComment">
<ชื่อผลลัพธ์ = "รายการ" ประเภท = "json">
<param name="root">แผนที่</param>
</ผล>
</การกระทำ>
<ชื่อการกระทำ = "deleteClickComment" method = "deleteClickComment">
<ชื่อผลลัพธ์ = "ลบ" ประเภท = "json">
<param name="root">แผนที่</param>
</ผล>
</การกระทำ>
การกระทำ
复制代码代码如下:
แพ็คเกจ dfml.action;
นำเข้า java.sql.Date;
นำเข้า java.text.SimpleDateFormat;
นำเข้า java.util.HashMap;
นำเข้า java.util.List;
นำเข้า java.util.Map;
นำเข้า javax.annotation.Resource;
นำเข้า org.springframework.context.annotation.Scope;
นำเข้า org.springframework.stereotype.Component;
นำเข้า com.opensymphony.xwork2.ActionSupport;
นำเข้า dfml.dao.ClickCommentDao;
นำเข้า dfml.pojo.Activity;
นำเข้า dfml.pojo.ClickComment;
@Component("คลิกความคิดเห็นการกระทำ")
@Scope("ต้นแบบ")
ClickCommentAction คลาสสาธารณะขยาย ActionSupport {
serialVersionUID ยาวสุดท้ายแบบคงที่ส่วนตัว = 1L;
ClickCommentDao ส่วนตัว clickCommentDao;
แผนที่ส่วนตัว <String, Object> แผนที่;
เนื้อหาสตริงส่วนตัว;// 评论内容
เนื้อหาสตริงส่วนตัว // 回复评论
หน้า int ส่วนตัว
แถว int ส่วนตัว
แถว int ส่วนตัว
รหัสส่วนตัวส่วนตัว;
setId โมฆะสาธารณะ (int id) {
this.id = ไอดี;
-
แผนที่สาธารณะ <String, Object> getMap() {
แผนที่ขากลับ;
-
@ทรัพยากร
โมฆะสาธารณะ setClickCommentDao (ClickCommentDao clickCommentDao) {
this.clickCommentDao = คลิกความคิดเห็นDao;
-
setContent โมฆะสาธารณะ (เนื้อหาสตริง) {
this.content = เนื้อหา;
-
โมฆะสาธารณะ setRepcontent (ตัวแทนสตริง) {
this.repcontent = ตัวแทนเนื้อหา;
-
setPage โมฆะสาธารณะ (หน้า int) {
this.page = หน้า;
-
โมฆะสาธารณะ setRow (แถว int) {
this.row = แถว;
-
setRows โมฆะสาธารณะ (แถว int) {
this.rows = แถว;
-
// 添加评论 用于微信用户
สตริงสาธารณะ addClickComment() {
บูลีน isSuccess = false;
map = ใหม่ HashMap<String, Object>();
ClickComment clickComment = ใหม่ ClickComment();
รูปแบบ SimpleDateFormat = SimpleDateFormat ใหม่ ("yyyy-MM-dd HH:mm:ss");
clickComment.setTime(format.format(วันที่ใหม่(System.currentTimeMillis())));
clickComment.setContent(เนื้อหา);
พยายาม {
isSuccess = clickCommentDao.addClickComment(คลิกแสดงความคิดเห็น);
} จับ (ข้อยกเว้นจ) {
isSuccess = เท็จ;
e.printStackTrace();
-
map.put("ความสำเร็จ", isSuccess);
กลับ "เพิ่ม";
-
//分页查找评论 用户微信用户
สตริงสาธารณะ findClickCommentByPage() {
map = ใหม่ HashMap<String, Object>();
map.put("list", clickCommentDao.findClickCommentByPage(หน้า, แถว));
กลับ "findByPage";
-
// 查询评论条数 用于微信用户
สตริงสาธารณะ getTotalNum(){
map = ใหม่ HashMap<String, Object>();
map.put("รวม", clickCommentDao.getClickCommentCount());
ส่งคืน "รวม";
-
//回复评论 用于后台管理
สตริงสาธารณะ updateClickComment(){
บูลีน isSuccess=false;
map=new HashMap<String, Object>();
ClickComment clickComment =clickCommentDao.findClickCommentById(id);
ถ้า (คลิกความคิดเห็น! = null) {
clickComment.setRepcontent (ตัวแทนเนื้อหา);
isSuccess=clickCommentDao.updateClickComment(คลิกความคิดเห็น);
-
map.put("ความสำเร็จ", isSuccess);
กลับ "อัปเดต";
-
//查询所有评论 用于后台管理
สตริงสาธารณะ findAllClickComment(){
map=new HashMap<String, Object>();
รายการ <ClickComment> รายการ=clickCommentDao.findClickCommentByPage(หน้า, แถว);
รายการ <ClickComment> lists=clickCommentDao.findAllClickComment();
map.put("แถว", รายการ);
map.put("ทั้งหมด", lists.size());
map.put("รายการ", รายการ);
กลับ "รายการ";
-
//删除评论 用于后台管理
สตริงสาธารณะ DeleteClickComment(){
บูลีน isSuccess=false;
map=new HashMap<String, Object>();
ClickComment clickComment =clickCommentDao.findClickCommentById(id);
ถ้า (คลิกความคิดเห็น! = null) {
isSuccess=clickCommentDao.deleteClickComment(คลิกแสดงความคิดเห็น);
-
map.put("ความสำเร็จ", isSuccess);
กลับ "ลบ";
-
-
โปโจ
复制代码代码如下:
แพ็คเกจ dfml.pojo;
นำเข้า java.io.Serializable;
นำเข้า javax.persistence.Entity;
นำเข้า javax.persistence.GeneratedValue;
นำเข้า javax.persistence.Id;
//评论表
@เอนทิตี้
ClickComment คลาสสาธารณะใช้ Serializable {
serialVersionUID ยาวสุดท้ายแบบคงที่ส่วนตัว = 1L;
รหัสจำนวนเต็มส่วนตัว
เวลาสตริงส่วนตัว;// 评论时间
เนื้อหาสตริงส่วนตัว;// 评论内容
ชื่อสตริงส่วนตัว;// 评论人
เนื้อหาสตริงส่วนตัว // 回复评论
@รหัส
@สร้างมูลค่า
getId จำนวนเต็มสาธารณะ () {
รหัสส่งคืน;
-
setId โมฆะสาธารณะ (รหัสจำนวนเต็ม) {
this.id = ไอดี;
-
สตริงสาธารณะ getRepcontent() {
ส่งคืนเนื้อหา;
-
โมฆะสาธารณะ setRepcontent (ตัวแทนสตริง) {
this.repcontent = ตัวแทนเนื้อหา;
-
สตริงสาธารณะ getTime() {
เวลาส่งคืน;
-
setTime โมฆะสาธารณะ (เวลาสตริง) {
นี้.เวลา = เวลา;
-
สตริงสาธารณะ getContent () {
ส่งคืนเนื้อหา
-
setContent โมฆะสาธารณะ (เนื้อหาสตริง) {
this.content = เนื้อหา;
-
สตริงสาธารณะ getName() {
ชื่อผู้ส่งคืน;
-
setName โมฆะสาธารณะ (ชื่อสตริง) {
this.name = ชื่อ;
-
-