package com.huahuan.web.blog;
import com.huahuan.database.DatabaseAccess;
import com.huahuan.database.EasyMapsManager;
import com.huahuan.servletutil.ServletUtil;
import com.huahuan.table.Bloglogreply;
import com.huahuan.tools.Util;
import java.io.IOException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jplus.hyb.database.Hyberbin;
import org.jplus.util.Pagger;
/**
*
* @author hp
*/
@WebServlet(name = "BlogReplyServlet", urlPatterns = {"/BlogReplyServlet.jsp"})
public class BlogLogReplyServlet extends HttpServlet {
/**
* 下面是模式关键字 可以自行删除和增加自定义模式,关键字一定要大写 默认模式为OTHER=0,所以OTHER不能删除
*/
public final static int OTHER = 0;//其它
public final static int SHOWLIST = 1;//显示列表
public final static int INSERT = 2;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("textml;charset=UTF-8");
excute(ServletUtil.setModel(request.getParameter("mode"), this), request, response);
}
/**
* 主执行方法
*
* @param event 方法ID
*/
private void excute(int event, HttpServletRequest request, HttpServletResponse response) {
try {
switch (event) {
case OTHER:
request.getRequestDispatcher("/index.jsp").forward(request, response);
break;
case SHOWLIST:
showList(request, response);
break;
case INSERT:
logReply(request, response);
break;
}
} catch (ServletException ex) {
Logger.getLogger(BlogLogReplyServlet.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(BlogLogReplyServlet.class.getName()).log(Level.SEVERE, null, ex);
}
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
/**
* 显示列表
*/
private void showList(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
int log = Integer.parseInt(request.getParameter("log")), pageSize = 15, page;
String pageString = request.getParameter("page");
page = Util.isEmpty(pageString) ? 1 : Integer.parseInt(pageString);
DatabaseAccess dao = new DatabaseAccess();
EasyMapsManager emm = new EasyMapsManager(dao);
String sql = "SELECT `bloglogreply`.* FROM `bloglogreply`;";
String range = " limit " + pageSize * (page - 1) + "," + pageSize * page;
String where = " where log=?";
emm.setPreparedParameter(log);
ArrayList logReplyList = emm.executeQuery(sql + where + range);
Pagger pagger = new Pagger(pageSize);
pagger.setCurrent(page);
pagger.setItems(emm.executeQuery(sql + where).size());
dao.close();
request.setAttribute("pagger", pagger);
request.setAttribute("logReplyList", logReplyList);
request.getRequestDispatcher("").forward(request, response);
}
private void logReply(HttpServletRequest request, HttpServletResponse response) {
Bloglogreply blr = new Bloglogreply();
Hyberbin hyberbin = new Hyberbin(blr);
ServletUtil.loadByBean(request, blr, true);
hyberbin.insert("rid");
}
}