2013년 8월 11일 일요일

스트럿츠 멀티 게시판5. 사용자 부분입니다. ( 1 - 1 ) struts-config.xml 과 Action 관련 파일들입니다.

////////////////// struts-config.xml ///////////////////////
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
     
    <!-- ========== Form Bean Definitions ================================== -->
    <form-beans>
       
               
        <!--  =================================================== -->
        <!--  ======================board======================== -->
        <!--  =================================================== -->
        <form-bean name="BoardForm" type="board.model.BoardForm"/>         
       
        <!--  =================================================== -->
        <!--  ======================memo======================== -->
        <!--  =================================================== -->
        <form-bean name="MemoForm" type="board.model.MemoForm"/>         
       
        <!--  =================================================== -->
        <!--  ======================search======================= -->
        <!--  =================================================== -->
        <form-bean name="SearchForm" type="board.model.SearchForm"/>         

       
    </form-beans>
   
 
    <!-- ========== Global Forward Definitions =============================== -->
    <global-forwards>
   
             
        <!--  =================================================== -->
        <!--  ======================board======================== -->
        <!--  =================================================== -->
        <forward name="board_list"                      path="/board/board_list.jsp" />
        <forward name="search_action_success"          path="/board/search_action_success.jsp" />
        <forward name="board_view"                      path="/board/board_view.jsp" />
        <forward name="board_process_success"          path="/board/process_success.jsp" />
        <forward name="board_process_fail"              path="/board/process_fail.jsp" />
       
       
        <!--  =================================================== -->
        <!--  ======================memo======================== -->
        <!--  =================================================== -->
        <forward name="memo_process_success"            path="/board/memo_process_success.jsp" />
        <forward name="memo_process_fail"              path="/board/memo_process_fail.jsp" />
       
       
       
    </global-forwards>
   
    <!-- ========== Action Mapping Definitions =============================== -->
    <action-mappings>
       
             
        <!--  =================================================== -->
        <!--  ======================board======================== -->
        <!--  =================================================== -->
        <action         
                path="/board/board_form"
                type="board.action.BoardFormAction"
                name="BoardForm"                       
                validate="false">
        </action>
       
        <action         
                path="/board/board_link"
                type="board.action.BoardLinkAction">
        </action> 
       
        <action         
                path="/board/forward_insert"
                forward="/board/board_insert.jsp">
        </action>
       
        <action         
                path="/board/forward_update"
                forward="/board/board_update.jsp">
        </action> 
       
        <action         
                path="/board/forward_reply"
                forward="/board/reply_insert.jsp">
        </action> 

        <!--  =================================================== -->
        <!--  ======================memo========================= -->
        <!--  =================================================== -->
                <action         
                path="/board/memo_form"
                type="board.action.MemoAction"
                name="MemoForm"                       
                validate="false">
        </action>
       
        <action         
                path="/board/memo_link"
                type="board.action.MemoAction">
        </action>
       
        <!--  =================================================== -->
        <!--  ======================search======================= -->
        <!--  =================================================== -->
                <action         
                path="/board/search"
                type="board.action.SearchAction"
                name="SearchForm"                       
                validate="false">
        </action>
    </action-mappings> 
   
    <!-- LANGUAGE SETTING  -->
    <controller
            contentType="text/html;charset=euc-kr"
            debug="3"           
            locale="true"
            nocache="true"   
            processorClass="multiboard.MyFilter"/>
           
</struts-config>

////////// BoardFormAction.java ////////////////////////
/*
*                개요                :  게시판  > 폼관련 액션
*                작성일            :        2005-08-12       
*                작성자        :        김길재
*                수정자        :
*                파일명        :        /board.action.BoardFormAction
*                버전                :        1.0
*                이력          :        2005-08-12 : 초기 작성
*/

package board.action;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.upload.FormFile;

import manager.model.ManagerDAO;
import board.model.BoardForm;
import board.model.BoardDAO;
import multiboard.KKJLog;

public class BoardFormAction extends Action
{
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request , HttpServletResponse response )
    {
            String forward = null;
        String result = null;
       
       
        String action = ((BoardForm)form).getAction();
       
        BoardDAO boardDAO = new BoardDAO();
       
        ManagerDAO managerDAO = new ManagerDAO();
               
       
        KKJLog.info( "///////////////////////////////////" );
        KKJLog.info( "///////////////////////////////////" );
        KKJLog.info( "///////////////////////////////////" );
        KKJLog.info( "BoardFormAction's info" );
       
        if( action.equals( "insert" ) )
        {
                KKJLog.info( "action name = " + action );
               
                String board_code = ((BoardForm)form).getBoard_code();
                  String title = ((BoardForm)form).getTitle();
                String content_type = ((BoardForm)form).getContent_type();
                String content = ((BoardForm)form).getContent();
                FormFile file_name = ((BoardForm)form).getFile_name();
                String member_id = ((BoardForm)form).getMember_id();
               
                KKJLog.info( "board_code = " + board_code );
                KKJLog.info( "title = " + title );
                KKJLog.info( "content_type = " + content_type );
                KKJLog.info( "content = " + content );
                KKJLog.info( "member_id = " + member_id );
               
                KKJLog.info( "BoardFormAction called insert()" );
               
                result = boardDAO.insert( board_code ,
                                                  title ,
                                                                      content_type ,
                                                                          content ,
                                                                          file_name ,
                                                                          member_id );
               
                if ( result.equals( "success" ) )
            {
                          forward = "board_process_success";
                         
                          ((BoardForm)form).setTitle( "" );
                ((BoardForm)form).setContent( "" );
               
            }
            else if ( result.equals( "fail" ) )
            {
                    forward = "board_process_fail";
            }
           
            request.setAttribute( "action" , action );
            request.setAttribute( "board_code" , board_code );
        }
        else if( action.equals( "update" ) )
        {
                KKJLog.info( "action name = " + action );
               
                String board_code = ((BoardForm)form).getBoard_code();
                String board_no = ((BoardForm)form).getBoard_no();
                String board_grade = ((BoardForm)form).getBoard_grade();
                String write_date = ((BoardForm)form).getWrite_date();
                String current_page = ((BoardForm)form).getCurrent_page();
                  String title = ((BoardForm)form).getTitle();
                String content_type = ((BoardForm)form).getContent_type();
                String content = ((BoardForm)form).getContent();
                FormFile file_name = ((BoardForm)form).getFile_name();
                               
                KKJLog.info( "board_code = " + board_code );
                KKJLog.info( "board_no = " + board_no );
                KKJLog.info( "board_grade = " + board_grade );
                KKJLog.info( "write_date = " + write_date );
                KKJLog.info( "current_page = " + current_page );
                KKJLog.info( "title = " + title );
                KKJLog.info( "content_type = " + content_type );
                KKJLog.info( "content = " + content );
               
               
                KKJLog.info( "BoardFormAction called update()" );
               
                result = boardDAO.update( board_code ,
                                                  board_no ,
                                                  board_grade ,
                                                  write_date ,
                                                  title ,
                                                                      content_type ,
                                                                          content ,
                                                                          file_name );
               
                if ( result.equals( "success" ) )
            {
                          forward = "board_process_success";
                         
                          ((BoardForm)form).setTitle( "" );
                ((BoardForm)form).setContent( "" );
               
            }
            else if ( result.equals( "fail" ) )
            {
                    forward = "board_process_fail";
            }
           
            request.setAttribute( "action" , action );
            request.setAttribute( "board_code" , board_code );
            request.setAttribute( "board_no" , board_no );
            request.setAttribute( "board_grade" , board_grade );
            request.setAttribute( "write_date" , write_date );
            request.setAttribute( "current_page" , current_page );
        }
        else if( action.equals( "reply_insert" ) )
        {
                KKJLog.info( "action name = " + action );
               
                String board_code = ((BoardForm)form).getBoard_code();
                String board_no = ((BoardForm)form).getBoard_no();
                String board_grade = ((BoardForm)form).getBoard_grade();
                String current_page = ((BoardForm)form).getCurrent_page();
                String title = ((BoardForm)form).getTitle();
                String content_type = ((BoardForm)form).getContent_type();
                String content = ((BoardForm)form).getContent();
                FormFile file_name = ((BoardForm)form).getFile_name();
                String member_id = ((BoardForm)form).getMember_id();
                String is_search = ((BoardForm)form).getIs_search();
               
                KKJLog.info( "board_code = " + board_code );
                KKJLog.info( "board_no = " + board_no );
                KKJLog.info( "board_grade = " + board_grade );
                KKJLog.info( "current_page = " + current_page );
                KKJLog.info( "title = " + title );
                KKJLog.info( "content_type = " + content_type );
                KKJLog.info( "content = " + content );
                KKJLog.info( "member_id = " + member_id );
                KKJLog.info( "is_search = " + is_search );
               
                KKJLog.info( "BoardFormAction called reply_insert()" );
               
                result = boardDAO.reply_insert( board_code ,
                                                        board_no ,
                                                        board_grade ,
                                                        title ,
                                                                            content_type ,
                                                                                content ,
                                                                                file_name ,
                                                                                member_id );
               
                if ( result.equals( "success" ) )
            {
                          forward = "board_process_success";
                         
                          ((BoardForm)form).setTitle( "" );
                ((BoardForm)form).setContent( "" );
               
            }
            else if ( result.equals( "fail" ) )
            {
                    forward = "board_process_fail";
            }
           
            request.setAttribute( "action" , action );
            request.setAttribute( "board_code" , board_code );
            request.setAttribute( "current_page" , current_page );
            request.setAttribute( "is_search" , is_search );
        }
       
       
        KKJLog.info( "forward = " + forward );
        KKJLog.info( "///////////////////////////////////" );
        KKJLog.info( "///////////////////////////////////" );
        KKJLog.info( "///////////////////////////////////" );
       
       
        return ( mapping.findForward( forward ) );
                 
    }

}

////////////// BoardLinkAction.java //////////////////////
/*
*                개요                :  게시판  > 링크 관련 액션
*                작성일            :        2005-08-10       
*                작성자        :        김길재
*                수정자        :
*                파일명        :        /board.action.BoardLinkAction
*                버전                :        1.0
*                이력          :        2005-08-10 : 초기 작성
*/

package board.action;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.ArrayList;

import board.model.BoardDAO;
import board.model.MemoDAO;
import multiboard.KKJLog;

public class BoardLinkAction extends Action
{
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request , HttpServletResponse response )
        {
            String forward = "";
                String result = "";
               
                String action = request.getParameter( "action" );
                String board_code = request.getParameter( "board_code" );
               
                BoardDAO boardDAO = new BoardDAO();
               
                KKJLog.info( "///////////////////////////////////" );
                KKJLog.info( "///////////////////////////////////" );
                KKJLog.info( "///////////////////////////////////" );
                KKJLog.info( "BoardLinkAction's info" );
           
                //리스트 화면   
                if( action.equals( "list" ) )
                {
                        KKJLog.info( "action name = " + action );
                       
                        String current_page = request.getParameter( "current_page" );
                        String is_search = request.getParameter( "is_search" );
                       
                        List BoardList = new ArrayList();
                       
                        //검색이 포함된 경우와 일반 검색인 경우 다른 메소드를 사용한다.
                        if( is_search == null || is_search.equals( "false" ) )
                        {
                                KKJLog.info( "BoardLinkAction called list( String , String )" );
                                BoardList = boardDAO.list( board_code , current_page );
                        }
                        else if( is_search.equals( "true" ) )
                        {
                                String search_type = request.getParameter( "search_type" );
                                String search_keyword = request.getParameter( "search_keyword" );
                               
                                System.out.println( "search_keyword~~~~2 = " + search_keyword );
                               
                                KKJLog.info( "BoardLinkAction called list( String , String , String , String)" );
                                BoardList = boardDAO.list( board_code , current_page , search_type , search_keyword );
                        }
                       
                       
                        request.setAttribute( "BoardList" , BoardList );
                       
                        forward = "board_list";
                }
                //내용 보기
                if( action.equals( "view" ) )
                {
                        KKJLog.info( "action name = " + action );
                       
                        String board_no = request.getParameter( "board_no" );
                        String board_grade = request.getParameter( "board_grade" );
                        String write_date = request.getParameter( "write_date" );
                       
                        //조회수 업데이트
                KKJLog.info( "BoardLinkAction called update_hit( )" );
               
                        boardDAO.update_hit( board_code , board_no , board_grade , write_date );
                       
                        MemoDAO MemoDAO = new MemoDAO();
                       
                        KKJLog.info( "BoardLinkAction called board.model.MemoDAO.list( )" );
                       
                        List MemoList = MemoDAO.list( board_code , board_no , board_grade , write_date );
                       
                        request.setAttribute( "MemoList" , MemoList );
                       
                        forward = "board_view";
                }
                if( action.equals( "delete" ) )
                {
                        KKJLog.info( "action name = " + action );
                       
                        String board_no = request.getParameter( "board_no" );
                        String board_grade = request.getParameter( "board_grade" );
                        String write_date = request.getParameter( "write_date" );
                        String current_page = request.getParameter( "current_page" );
                       
                       
                        //조회수 업데이트
                KKJLog.info( "BoardLinkAction called delete( )" );
               
                        result = boardDAO.delete( board_code , board_no , board_grade , write_date );
                       
                        if ( result.equals( "success" ) )
            {
                          forward = "board_process_success";
                         
                  }
            else if ( result.equals( "fail" ) )
            {
                    forward = "board_process_fail";
            }
                }
               
               
                KKJLog.info( "forward = " + forward );
                KKJLog.info( "///////////////////////////////////" );
                KKJLog.info( "///////////////////////////////////" );
                KKJLog.info( "///////////////////////////////////" );
               
                return ( mapping.findForward( forward ) );
        }

}

댓글 없음:

댓글 쓰기