基于核格平台的点击量加一功能:
页面html部分:
<div class="operate_div"><ul><li>来源:<span>%{tableTr.source}</span></li><li>作者:<span>%{tableTr.author}</span></li><li>审核:<span>%{tableTr.news_check}</span></li><li>日期:<span>%{tableTr.creation_date}</span></li><li>点击数:<span>%{tableTr.click_num+1}</span></li></ul></div>
注:①click_num是数据库中点击量的字段,给click_num先加一是为了加上当前阅读人的点击量;
②在页面中应当引用相应的js文件。
js部分代码:
$(function(){var location = window.location.search;var index = location.indexOf("=");var id = location.slice(index+1);$.ajax({url:'/CDKQ/loadClickNum.svt',type:'post',data:{"cdkql_news_id":id},success:function(){}});})
java部分代码( loadClickNumServlet.java ):
import java.io.IOException;import java.util.HashMap;import java.util.Map;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.hibernate.SQLQuery;import com.sunsheen.jfids.system.base.composite.data.query.QueryParameterImpl;import com.sunsheen.jfids.system.database.IdsSession;import com.sunsheen.jfids.system.servlet.Servlet;import com.sunsheen.jfids.util.IdsDataBaseUtil;@SuppressWarnings("serial")@Servlet(value="/loadClickNum.svt", anonymous=true)public class loadClickNumServlet extends HttpServlet {/*该servlet用于浏览量的增加*/private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {//获取前台参数String cdkql_news_id = req.getParameter("cdkql_news_id");//初始化sql变量String sql = null;//将前台参数保存在map中Map<String, String> map = new HashMap<String, String>();map.put("cdkql_news_id", cdkql_news_id);sql ="update cdkql_news set click_num=click_num+1 WHERE cdkql_news_id=:cdkql_news_id";//增加浏览量IdsSession session = IdsDataBaseUtil.getHibernateSession();try {session.beginTransaction();//开启事务SQLQuery query = session.createSQLQuery(sql);new QueryParameterImpl().initParameter(query, map);query.executeUpdate();session.commit();} catch (Exception e) {session.rollback();//回到初始状态} finally{session.close();//关闭事务}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {doGet(req, resp);}}
注: 平台的版本不同相应的创建session名字不同。
版权声明:本文为Sakura_Momoko原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。