⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 noteaction.java

📁 是一个网站的博客系统
💻 JAVA
字号:
package com.opensource.blog.web.action;

import java.util.*;
import javax.servlet.http.*;

import org.apache.struts.action.*;
import com.opensource.blog.exception.*;
import com.opensource.blog.model.*;
import com.opensource.blog.service.*;
import com.opensource.blog.service.cache.app.*;
import com.opensource.blog.web.form.*;

public class NoteAction
    extends Action {

  private BlogCache blogCache;

  private NoteService noteService;

  private ArticleService articleService;

  private BlogService blogService;

  public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm,
                               HttpServletRequest servletRequest,
                               HttpServletResponse servletResponse) {

    ActionMessages errors = new ActionMessages();
    NoteForm form = (NoteForm) actionForm;

    if (form.getAction().equalsIgnoreCase("add")) {

      HttpSession session = servletRequest.getSession();
      String authCode = (String) session.getAttribute("authcode");
      if (authCode == null || !authCode.equals(form.getAuthCode())) {
        errors.add("error.note.authcode", new ActionMessage("error.note.authcode"));
        saveErrors(servletRequest, errors);
        return actionMapping.findForward("error");
      }

      Blog blog = this.getBlogCache().getFromCache(form.getUsername());
      if (blog == null) {
        errors.add("error.blogblog.getinfo", new ActionMessage("error.blogblog.getinfo"));
        saveErrors(servletRequest, errors);
        return actionMapping.findForward("error");
      }

      Article art = this.getArticleService().findArticleByID_BlogID(form.getArtid(), form.getBlogid());
      if (art == null) {
        errors.add("error.read.getart", new ActionMessage("error.read.getart"));
        saveErrors(servletRequest, errors);
        return actionMapping.findForward("error");
      }

      Note note = new Note();
      note.setArtid(form.getArtid());
      note.setBlogid(form.getBlogid());
      note.setContent(form.getContent());
      note.setEmail(form.getEmail());
      note.setFace(0);
      note.setHomepage(form.getHomepage());
      note.setName(form.getName());
      note.setCreatetime(new Date());
      note.setIp(servletRequest.getRemoteAddr());

      try {
        note = this.getNoteService().saveNote(note);
      }
      catch (BlogException ex) {
        errors.add("error.note.add.error", new ActionMessage("error.note.add.error"));
        saveErrors(servletRequest, errors);
        return actionMapping.findForward("error");
      }
      int total = this.getNoteService().getNoteCountByArtID(form.getArtid());
      art.setCommentnum(total);
      try {
        this.getArticleService().saveArticle(art);
      }
      catch (BlogException ex1) {
        ex1.printStackTrace();
      }

      total = this.getNoteService().getNoteCountByBlogID(form.getBlogid());
      blog.setNotetotal(total);
      try {
        this.getBlogService().saveBlog(blog);
      }
      catch (BlogException ex2) {
        ex2.printStackTrace();
      }

      this.getBlogCache().removeFromCache(form.getUsername());
      /*
             ActionForward f = new ActionForward("/read.do?artid=" + form.getArtid() +
                                          "&blogid=" + form.getBlogid() + "&username=" +
                                          form.getUsername(), true);*/
      ActionForward f = new ActionForward("/" + form.getUsername() + "-" + form.getBlogid() + "-" +
                                          form.getArtid() + ".html", true);
      return f;

    }

    return actionMapping.findForward("error");
  }

  public BlogCache getBlogCache() {
    return blogCache;
  }

  public NoteService getNoteService() {
    return noteService;
  }

  public ArticleService getArticleService() {
    return articleService;
  }

  public BlogService getBlogService() {
    return blogService;
  }

  public void setBlogCache(BlogCache blogCache) {
    this.blogCache = blogCache;
  }

  public void setNoteService(NoteService noteService) {
    this.noteService = noteService;
  }

  public void setArticleService(ArticleService articleService) {
    this.articleService = articleService;
  }

  public void setBlogService(BlogService blogService) {
    this.blogService = blogService;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -