package com.huahuan.web.blog; import com.huahuan.database.DatabaseAccess; import com.huahuan.database.EasyMapsManager; import com.huahuan.servletutil.ServletUtil; import com.huahuan.table.Bloglog; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; 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 = "BlogLogServlet", urlPatterns = {"/BlogLogServlet.jsp"}) public class BlogLogServlet extends HttpServlet { /** * 下面是模式关键字 可以自行删除和增加自定义模式,关键字一定要大写 默认模式为OTHER=0,所以OTHER不能删除 */ public final static int OTHER = 0;//其它 public final static int SHOWLOGLIST = 1;//显示列表 public final static int SHOWONE = 2; public final static int UPDATE = 3; public final static int DELETE = 4; public final static int INSERT = 5; public final static int SHOWPOSTLIST = 6; 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) { switch (event) { case OTHER: try { request.getRequestDispatcher("/index.jsp").forward(request, response); } catch (ServletException ex) { Logger.getLogger(BlogLogServlet.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(BlogLogServlet.class.getName()).log(Level.SEVERE, null, ex); } break; case SHOWLOGLIST: showLogList(request, response); break; case SHOWONE: showOne(request, response); break; case UPDATE: updateLog(request, response); break; case DELETE: deleteLog(request, response); break; case INSERT: insertLog(request, response); break; case SHOWPOSTLIST: showpostlist(request, response); break; } } // <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 showLogList(HttpServletRequest request, HttpServletResponse response) { try { //显示空间主人的个人资料 int host = Integer.parseInt(request.getParameter("host")); DatabaseAccess dao = new DatabaseAccess(); EasyMapsManager emm = new EasyMapsManager(dao); String sql = "SELECT `yhb`.`yhm`, `yhb`.`id`, `yhb`.`yhtx`, `yhb`.`qx` FROM `yhb` WHERE `yhb`.`id`=?"; emm.setPreparedParameter(host); ArrayList<HashMap> hostlist = emm.executeQuery(sql); request.setAttribute("host", hostlist.get(0)); //空间主人的日志信息 Pagger pagger = new Pagger(15); ServletUtil.loadByParams(request, pagger, true); sql = "select * from bloglog where host=?"; emm.setPreparedParameter(host); ArrayList hostloglist = emm.executeQuery(sql, pagger); dao.close(); request.setAttribute("pagger", pagger); request.setAttribute("hostloglist", hostloglist); request.getRequestDispatcher("/web/blog/blog_log.jsp").forward(request, response); } catch (Exception ex) { } } private void showpostlist(HttpServletRequest request, HttpServletResponse response) { try { //显示空间主人的个人资料 int host = Integer.parseInt(request.getParameter("host")); request.setAttribute("host", request.getParameter("host")); DatabaseAccess dao = new DatabaseAccess(); EasyMapsManager emm = new EasyMapsManager(dao); String sql = "SELECT `yhb`.`yhm`, `yhb`.`id`, `yhb`.`yhtx`, `yhb`.`qx` FROM `yhb` WHERE `yhb`.`id`=?"; emm.setPreparedParameter(host); ArrayList<HashMap> hostlist = emm.executeQuery(sql); request.setAttribute("host", hostlist.get(0)); //空间主人的发帖(主题)信息 Pagger pagger = new Pagger(15); ServletUtil.loadByParams(request, pagger, true); sql = "SELECT `ftb`.`bkid`, `ltbk`.`bkmc`, `ftb`.`tzbt`, `ftb`.`ftid`, `ftb`.`tznr`,`ftb`.`ftsj`, `ftb`.`ftr` FROM `ftb` INNER JOIN `ltbk` ON `ftb`.`bkid` = `ltbk`.`bkid` WHERE `ftb`.`ftr` = ? ORDER BY `ftb`.`ftsj` DESC"; emm.setPreparedParameter(host); ArrayList hostpostlist = emm.executeQuery(sql, pagger); request.setAttribute("hostpostlist", hostpostlist); dao.close(); request.getRequestDispatcher("/web/blog/blog_post.jsp").forward(request, response); } catch (Exception ex) { } } private void showOne(HttpServletRequest request, HttpServletResponse response) { int lid = Integer.parseInt(request.getParameter("lid")); Bloglog bl = new Bloglog(); bl.setLid(lid); Hyberbin hyberbin = new Hyberbin(bl); Bloglog bloglog = hyberbin.showOnebyKey("lid"); request.setAttribute("bloglog", bloglog); } private void updateLog(HttpServletRequest request, HttpServletResponse response) { int lid = Integer.parseInt(request.getParameter("lid")); Bloglog bl = new Bloglog(); Hyberbin hyberbin = new Hyberbin(bl); ServletUtil.loadByBean(request, bl, true); hyberbin.updateByKey("lid"); } private void deleteLog(HttpServletRequest request, HttpServletResponse response) { int lid = Integer.parseInt(request.getParameter("lid")); Bloglog bl = new Bloglog(); bl.setLid(lid); Hyberbin hyberbin = new Hyberbin(bl); hyberbin.addParmeter(lid); hyberbin.dellOneByKey("lid"); } private void insertLog(HttpServletRequest request, HttpServletResponse response) { Bloglog bl = new Bloglog(); Hyberbin hyberbin = new Hyberbin(bl); ServletUtil.loadByBean(request, bl, true); hyberbin.updateByKey("lid"); } }