2013년 8월 11일 일요일

[Struts, Struts2, Struts Spring, StrutsFramework, Struts MVC, Struts게시판, 스프럿츠게시판, Struts Action, Struts DAO, struts교육, struts강좌, struts2교육, struts2강좌]멀티 게시판4. 관리자( 2 ) 모델 패키지 관련 파일입니다. [1] <= 수정본1입니다.

오라클자바커뮤니티에서 설립한 오엔제이프로그래밍 실무교육센터
(오라클SQL, 튜닝, 힌트,자바프레임워크, 안드로이드, 아이폰, 닷넷 실무전문 강의)  

ManagerDAO.java  에서

public BoardMasterVO view( String board_code )

<= 요 메소드의 끝부분부터 잘려서 나머지 부분을 올립니다.
/*
    *                개요                :  게시판 객체 리턴
    *                작성일            :        2005-08-10       
    *                작성자        :        김길재
    *                수정자        :
    */
    public BoardMasterVO view( String board_code )
    {
            BoardMasterVO BoardMaster = new BoardMasterVO();
       
        try
                {
                con = DriverManager.getConnection(ConnectionPoolManager.URL_PREFIX+"multiboard");
         
               
            String sql = "SELECT * FROM BOARD_MST WHERE BOARD_CODE = ?";
             
            pstmt = con.prepareStatement(sql);
           
            pstmt.setString( 1 , board_code );
           
            rs = pstmt.executeQuery();

            while(rs.next())
            { 
                    BoardMaster.setBoard_code( rs.getString( "BOARD_CODE" ) );
                    BoardMaster.setBoard_name( rs.getString( "BOARD_NAME" ) );
                    BoardMaster.setTable_color1( rs.getString( "TABLE_COLOR1" ) );
                    BoardMaster.setTable_color2( rs.getString( "TABLE_COLOR2" ) );
                    BoardMaster.setIs_page_count( rs.getString( "IS_PAGE_COUNT" ) );
                    BoardMaster.setIs_search( rs.getString( "IS_SEARCH" ) );
                    BoardMaster.setIs_file( rs.getString( "IS_FILE" ) );
                    BoardMaster.setIs_memo( rs.getString( "IS_MEMO" ) );
                    BoardMaster.setIs_reply( rs.getString( "IS_REPLY" ) );
                    BoardMaster.setMember_level( Integer.toString( rs.getInt( "MEMBER_LEVEL" ) ) );
                    BoardMaster.setList_per_page( Integer.toString( rs.getInt( "LIST_PER_PAGE" ) ) );
                    BoardMaster.setPage_count( Integer.toString( rs.getInt( "PAGE_COUNT" ) ) );
                   
                    //TOP_HTML 읽어오기
                StringBuffer sbuf = new StringBuffer();
                Reader reader = rs.getCharacterStream( "TOP_HTML" );
                char[] buffer = new char[ 1024 ];
                int read;
                while( ( read = reader.read( buffer , 0 , 1024 ) ) != -1 )
                {
                        sbuf.append( buffer, 0 , read );
                }
                reader.close();
               
                BoardMaster.setTop_html( sbuf.toString() );
               
                //LEFT_HTML 읽어오기
                sbuf = new StringBuffer();
                reader = rs.getCharacterStream( "LEFT_HTML" );
                buffer = new char[ 1024 ];
                while( ( read = reader.read( buffer , 0 , 1024 ) ) != -1 )
                {
                        sbuf.append( buffer, 0 , read );
                }
                reader.close();
               
                BoardMaster.setLeft_html( sbuf.toString() );
               
                //RIGHT_HTML 읽어오기
                sbuf = new StringBuffer();
                reader = rs.getCharacterStream( "RIGHT_HTML" );
                buffer = new char[ 1024 ];
                while( ( read = reader.read( buffer , 0 , 1024 ) ) != -1 )
                {
                        sbuf.append( buffer, 0 , read );
                }
                reader.close();
               
                BoardMaster.setRight_html( sbuf.toString() );
               
                //BOTTOM_HTML 읽어오기
                sbuf = new StringBuffer();
                reader = rs.getCharacterStream( "BOTTOM_HTML" );
                buffer = new char[ 1024 ];
                while( ( read = reader.read( buffer , 0 , 1024 ) ) != -1 )
                {
                        sbuf.append( buffer, 0 , read );
                }
                reader.close();
               
                BoardMaster.setBottom_html( sbuf.toString() );
            }
            con.commit();
        }
        catch (Exception e)
                {
                try
                        {
                        con.rollback();
                        }
                catch( Exception e1 )
                        {}
                KKJLog.info( "//////////////////////////////////////////////" );
                KKJLog.info( "view Error : " + e.toString() );
                KKJLog.info( "//////////////////////////////////////////////" );
                return null;
        }
        finally
        {
                try
                {

                        if ( rs != null )
                                rs.close();
                        if ( pstmt != null )
                                pstmt.close();
                        if ( con != null )
                                con.close();
                }
                catch ( Exception ignore )
                {
                }
        }

        return BoardMaster;
   
        }   


/*
    *                개요                :  게시판  마스터 등록
    *                작성일            :        2005-08-05       
    *                작성자        :        김길재
    *                수정자        :
    */
    public String insert( String board_code ,
                                  String board_name ,
                                  String table_color1 ,
                                  String table_color2 ,
                                  String is_page_count ,
                                  String is_search ,
                                  String is_file ,
                                  String is_reply ,
                                  String is_memo ,
                                  String member_level ,
                                  String list_per_page ,
                                  String page_count ,
                                  String top_html ,
                                  String left_html ,
                                  String right_html ,
                                  String bottom_html )
        {
                               
                try
        {
                        con = DriverManager.getConnection(ConnectionPoolManager.URL_PREFIX+"multiboard");
                        con.setAutoCommit(false);
                       
                        sql =  " INSERT INTO BOARD_MST( BOARD_CODE , ";
                        sql += "                        BOARD_NAME , ";
                        sql += "                        TABLE_COLOR1 , ";
                        sql += "                        TABLE_COLOR2 , ";
                        sql += "                        IS_PAGE_COUNT , ";
                        sql += "                        IS_SEARCH , ";
                        sql += "                        IS_FILE , ";
                        sql += "                        IS_REPLY , ";
                        sql += "                        IS_MEMO , ";
                        sql += "                        MEMBER_LEVEL , ";
                        sql += "                        LIST_PER_PAGE , ";
                        sql += "                        PAGE_COUNT , ";
                        sql += "                        TOP_HTML , ";
                        sql += "                        LEFT_HTML , ";
                        sql += "                        RIGHT_HTML , ";
                        sql += "                        BOTTOM_HTML ) ";
                        sql += "                VALUES( ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        ? , ";
                        sql += "                        EMPTY_CLOB() , ";
                        sql += "                        EMPTY_CLOB() , ";
                        sql += "                        EMPTY_CLOB() , ";
                        sql += "                        EMPTY_CLOB() ) ";
                               
                        pstmt = con.prepareStatement(sql);
           
            pstmt.setString( 1 , board_code );
            pstmt.setString( 2 , board_name );
            pstmt.setString( 3 , table_color1 );
            pstmt.setString( 4 , table_color2 );
            pstmt.setString( 5 , is_page_count );
            pstmt.setString( 6 , is_search );
            pstmt.setString( 7 , is_file );
            pstmt.setString( 8 , is_reply );
            pstmt.setString( 9 , is_memo );
            pstmt.setString( 10 , member_level );
            pstmt.setString( 11 , list_per_page );
            pstmt.setString( 12 , page_count );
           
            pstmt.executeUpdate();

           
            //CLOB TOP_HTML 입력
                        sql = "SELECT TOP_HTML FROM BOARD_MST WHERE BOARD_CODE = ? FOR UPDATE";
                        pstmt = con.prepareStatement(sql);
                        pstmt.setString( 1 , board_code );
                        rs = pstmt.executeQuery();
                       
                        if( rs.next() )
                        {
                                CLOB clob = ( ( OracleResultSet ) rs ).getCLOB( 1 );
                                Writer write = clob.getCharacterOutputStream();
                                Reader src = new CharArrayReader( top_html.toCharArray() );
                                char[] buffer = new char[ 1024 ];
                                int read = 0;
                                while( ( read = src.read( buffer , 0 , 1024 ) ) != -1 )
                                {
                                        write.write( buffer , 0 , read );
                                }
                                src.close();
                                write.close();
                        }
                       
                        //CLOB LEFT_HTML 입력
                        sql = "SELECT LEFT_HTML FROM BOARD_MST WHERE BOARD_CODE = ? FOR UPDATE";
                        pstmt = con.prepareStatement(sql);
                        pstmt.setString( 1 , board_code );
                        rs = pstmt.executeQuery();
                       
                        if( rs.next() )
                        {
                                CLOB clob = ( ( OracleResultSet ) rs ).getCLOB( 1 );
                                Writer write = clob.getCharacterOutputStream();
                                Reader src = new CharArrayReader( left_html.toCharArray() );
                                char[] buffer = new char[ 1024 ];
                                int read = 0;
                                while( ( read = src.read( buffer , 0 , 1024 ) ) != -1 )
                                {
                                        write.write( buffer , 0 , read );
                                }
                                src.close();
                                write.close();
                        }
                       
                        //CLOB RIGHT_HTML 입력
                        sql = "SELECT RIGHT_HTML FROM BOARD_MST WHERE BOARD_CODE = ? FOR UPDATE";
                        pstmt = con.prepareStatement(sql);
                        pstmt.setString( 1 , board_code );
                        rs = pstmt.executeQuery();
                       
                        if( rs.next() )
                        {
                                CLOB clob = ( ( OracleResultSet ) rs ).getCLOB( 1 );
                                Writer write = clob.getCharacterOutputStream();
                                Reader src = new CharArrayReader( right_html.toCharArray() );
                                char[] buffer = new char[ 1024 ];
                                int read = 0;
                                while( ( read = src.read( buffer , 0 , 1024 ) ) != -1 )
                                {
                                        write.write( buffer , 0 , read );
                                }
                                src.close();
                                write.close();
                        }
                       
                        //CLOB BOTTOM_HTML 입력
                        sql = "SELECT BOTTOM_HTML FROM BOARD_MST WHERE BOARD_CODE = ? FOR UPDATE";
                       
                        pstmt = con.prepareStatement(sql);
                       
                        pstmt.setString( 1 , board_code );
                       
                        rs = pstmt.executeQuery();
                       
                        if( rs.next() )
                        {
                                CLOB clob = ( ( OracleResultSet ) rs ).getCLOB( 1 );
                                Writer write = clob.getCharacterOutputStream();
                                Reader src = new CharArrayReader( bottom_html.toCharArray() );
                                char[] buffer = new char[ 1024 ];
                                int read = 0;
                                while( ( read = src.read( buffer , 0 , 1024 ) ) != -1 )
                                {
                                        write.write( buffer , 0 , read );
                                }
                                src.close();
                                write.close();
                        }
           
            pstmt.executeUpdate();
            con.commit();
               
                        return "success";
        }
                catch( Exception e )
                {
                try
                        {
                        con.rollback();
                        }
                catch( Exception e1 )
                        {}
                KKJLog.info( "//////////////////////////////////////////////" );
                KKJLog.info( "insert Error : " + e.toString() );
                KKJLog.info( "//////////////////////////////////////////////" );
                return "fail";
                }
        finally
        {
            try
            {
                    if ( rs != null )
                            rs.close();
                if ( pstmt != null )
                        pstmt.close();
                if ( con != null )
                        con.close();
            }
            catch ( Exception ignore )
            {
            }
   
        }
       
        }
   
    /*
    *                개요                :  게시판  마스터 수정
    *                작성일            :        2005-08-05
    *                작성자        :        김길재
    *                수정자        :
    */
    public String update( String board_code ,
                                    String board_name ,
                                    String table_color1 ,
                                    String table_color2 ,
                                    String is_page_count ,
                                    String is_search ,
                                    String is_file ,
                                    String is_reply ,
                                    String is_memo ,
                                    String member_level ,
                                    String list_per_page ,
                                    String page_count ,
                                    String top_html ,
                                    String left_html ,
                                    String right_html ,
                                    String bottom_html )
        {
            try
        {
                        con = DriverManager.getConnection(ConnectionPoolManager.URL_PREFIX+"multiboard");
                        con.setAutoCommit(false);
                       
                        sql =  " UPDATE BOARD_MST SET BOARD_NAME = ? , ";
                        sql += "                      TABLE_COLOR1 = ? , ";
                        sql += "                      TABLE_COLOR2 = ? , ";
                        sql += "                      IS_PAGE_COUNT = ? , ";
                        sql += "                      IS_SEARCH = ? , ";
                        sql += "                      IS_FILE = ? , ";
                        sql += "                      IS_REPLY = ? , ";
                        sql += "                      IS_MEMO = ? , ";
                        sql += "                      MEMBER_LEVEL = ? , ";
                        sql += "                      LIST_PER_PAGE = ? , ";
                        sql += "                      PAGE_COUNT = ? , ";
                        sql += "                      TOP_HTML = EMPTY_CLOB() , ";
                        sql += "                      LEFT_HTML = EMPTY_CLOB() , ";
                        sql += "                      RIGHT_HTML = EMPTY_CLOB() , ";
                        sql += "                      BOTTOM_HTML = EMPTY_CLOB() ";
                        sql += "                WHERE BOARD_CODE = ? ";
               
                               
                        pstmt = con.prepareStatement(sql);
           
            pstmt.setString( 1 , board_name );
            pstmt.setString( 2 , table_color1 );
            pstmt.setString( 3 , table_color2 );
            pstmt.setString( 4 , is_page_count );
            pstmt.setString( 5 , is_search );
            pstmt.setString( 6 , is_file );
            pstmt.setString( 7 , is_reply );
            pstmt.setString( 8 , is_memo );
            pstmt.setString( 9 , member_level );
            pstmt.setString( 10 , list_per_page );
            pstmt.setString( 11 , page_count );
            pstmt.setString( 12 , board_code );
           
            pstmt.executeUpdate();

           
            //CLOB TOP_HTML 입력
        

댓글 없음:

댓글 쓰기