java如果实现一个简单的留言板功能
用户输入文本
不用注册,发表后显示内容,IP,时间内容存入sql server数据库

解决方案 »

  1.   

    public class MsgBoardAction extends DispatchAction {
    /*
     * Generated Methods
     */
    public ActionForward addMsg(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
    // TODO Auto-generated method stub
    MsgBoard msg=(MsgBoard)form;
    msg.setM_ip(request.getRemoteAddr());
    if(DaoFactory.getMsgBoardDao().insertMsgBoard(msg)){
    sendError(request,"恭喜你留言成功!");
    }else{
    sendError(request,"不好意思,留言没有被记录!");
    return mapping.findForward("error");
    }
    return mapping.findForward("msg");


    public ActionForward getAllMsg(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
    // TODO Auto-generated method stub
    String page_str=request.getParameter("page");
    // System.out.println("page_str");
    int page=1;
    if(page_str!=null && !page_str.equalsIgnoreCase("")){
    page=Integer.parseInt(page_str);
    }
    int perpage=4;
    int totalpage;
    int sum=DaoFactory.getMsgBoardDao().getMsgCount();
    int mod=sum%perpage;//计算页数
    if(mod==0){
    totalpage=sum/perpage;
    }else{
    totalpage=(sum/perpage)+1;
    }
    HttpSession session=request.getSession();
    request.setAttribute("perpage", Integer.valueOf(perpage));
    request.setAttribute("totalpage", Integer.valueOf(totalpage));
    request.setAttribute("sum", Integer.valueOf(sum));
    session.setAttribute("msgs", DaoFactory.getMsgBoardDao().getAll(page,perpage));
    return mapping.findForward("addmsg");


    public ActionForward getBackAllMsg(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
    // TODO Auto-generated method stub
    String page_str=request.getParameter("page");
    // System.out.println("page_str");
    int page=1;
    if(page_str!=null && !page_str.equalsIgnoreCase("")){
    page=Integer.parseInt(page_str);
    }
    int perpage=20;
    int totalpage;
    int sum=DaoFactory.getMsgBoardDao().getMsgCount();
    int mod=sum%perpage;//计算页数
    if(mod==0){
    totalpage=sum/perpage;
    }else{
    totalpage=(sum/perpage)+1;
    }
    HttpSession session=request.getSession();
    request.setAttribute("perpage", Integer.valueOf(perpage));
    request.setAttribute("totalpage", Integer.valueOf(totalpage));
    request.setAttribute("sum", Integer.valueOf(sum));
    session.setAttribute("msgs", DaoFactory.getMsgBoardDao().getAll(page,perpage));
    return mapping.findForward("backmsg");


    public ActionForward deleteMsg(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
    // TODO Auto-generated method stub
    String m_id_str=request.getParameter("m_id");
    // System.out.println("page_str");
    int m_id=-1;
    if(m_id_str!=null && !m_id_str.equalsIgnoreCase("")){
    m_id=Integer.parseInt(m_id_str);
    }
    int sum=DaoFactory.getMsgBoardDao().deleteMsgBoard(m_id);
    if(sum==0){
    return mapping.findForward("error");
    }else{
    return mapping.findForward("backmsgindex");
    }

    }

    /**
     * 自定义错误处理
     * param:display The error messages what u want to display
     * */
    public void sendError(HttpServletRequest request,String display){
    ActionMessages errors = new ActionMessages();
    errors.add(ActionMessages.GLOBAL_MESSAGE,new ActionMessage("message.common", display));
    saveMessages(request,errors);
    }