반응형
INSERT INTO tbl_name (A,B,C) VALUES 
<foreach collection="_parameter" item="parm" open="(" close=")" separator=",">
    #{parm.val1},#{parm.val2},#{parm.val3}
</foreach>;

Which will generate SQL:

INSERT INTO tbl_name(A, B, C) VALUES (1, 2, 3, 1, 2, 3, ...)



<insert id="insertList" useGeneratedKeys="true" parameterType="java.util.List">
    INSERT INTO tbl_name (A,B,C) VALUES (
    <foreach collection="_parameter" item="parm" open="" close="" separator="),()">
        #{parm.val1},#{parm.val2},#{parm.val3}
    </foreach>
</insert>
)

Which will output SQL like:

INSERT INTO tbl_name(A, B, C) VALUES (1, 2, 3), (1, 2, 3), .....



원문 링크:

http://www.mikereedell.com/2011/03/21/Using-MyBatis-Foreach-to-Insert-Collections.html

반응형

'jsp' 카테고리의 다른 글

XML_ex.jsp  (0) 2011.01.10
log4j 설정  (0) 2011.01.10
tomcat Get방식으로 넘어가는 파라미터 한글인코딩하게 하는법  (0) 2010.12.09
JSP 게시판 페이징  (0) 2010.12.09
반응형

<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %> <%@ page import="java.io.*,java.sql.*,java.util.*,java.net.*" %> <% Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; String url = "jdbc:oracle:thin:@192.168.0.18:1521:XE"; String user = "dist"; String pass = "1111"; String sql = "SELECT * FROM (SELECT * FROM CMT_DIST_MA ORDER BY SEQ_IDN DESC) WHERE ROWNUM <= 10"; //String state = request.getParameter("state") == null ? "001" : (String)request.getParameter("state"); try { Class.forName("oracle.jdbc.driver.OracleDriver"); conn = DriverManager.getConnection(url, user, pass); pstmt = conn.prepareStatement(sql); rs = pstmt.executeQuery(); %> <?xml version="1.0" encoding="UTF-8" ?> <DISTLIST> <% while (rs.next()) { %> <DISTDATA> <SEQ_IDN><%=rs.getInt("SEQ_IDN") %></SEQ_IDN> <USR_NAM><%=rs.getString("USR_NAM") %></USR_NAM> <USR_REG><%=rs.getString("USR_REG") %></USR_REG> <USR_TEL><%=rs.getString("USR_TEL") %></USR_TEL> <USR_FAX><%=rs.getString("USR_FAX") %></USR_FAX> <USR_ADR><%=rs.getString("USR_ADR") %></USR_ADR> <USR_EML><%=rs.getString("USR_EML") %></USR_EML> <USE_PUR><%=rs.getString("USR_PUR") %></USE_PUR> <USE_AFT><%=rs.getString("USR_AFT") %></USE_AFT> <SRV_TYP><%=rs.getString("SRV_TYP") %></SRV_TYP> <SRV_FMT><%=rs.getString("SRV_FMT") %></SRV_FMT> <SRV_WAY><%=rs.getString("SRV_WAY") %></SRV_WAY> <SRV_NAM><%=rs.getString("SRV_NAM") %></SRV_NAM> <SRV_FEE><%=rs.getString("SRV_FEE") %></SRV_FEE> <SAV_YMD><%=rs.getString("SAV_YMD") %></SAV_YMD> <SRV_RGN><%=rs.getString("SRV_RGN") %></SRV_RGN> </DISTDATA> <% } %> </DISTLIST> <% } catch (SQLException se) { System.err.println("IOException : " + se.getMessage()); se.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { try { pstmt.close(); } catch (Exception e) { } try { conn.close(); } catch (Exception e) { } } %>



반응형
반응형

FileName: log4j.properties

log4j.rootLogger=INFO, stdout, rolling
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %-5p [%t] %-17c{2} (%13F:%L) %3x - %m%n
log4j.appender.rolling=org.apache.log4j.DailyRollingFileAppender
log4j.appender.rolling.File=E:/workspace/distBoard/study.log
log4j.appender.rolling.Append=false
log4j.appender.rolling.DatePattern='.'yyyy-MM-dd
log4j.appender.rolling.layout=org.apache.log4j.PatternLayout
log4j.appender.rolling.layout.ConversionPattern=%d %-5p [%t] %-17c{2} (%13F:%L) %3x - %m%n
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
#log4j.logger.java.sql.ResultSet=DEBUG



FileName: BoardView.java

.........
import org.apache.log4j.Logger;
.........

public class BoardView extends Action  {
............
    static Logger log = Logger.getLogger("BoardView.class");
    log.info("pageNo : " + boardForm.getPageNo());
............

Console:

...............
 2011-01-10 13:10:18,218 INFO  [http1-w06 [container1-16]] BoardView.class   (BoardView.java:40)     - pageNo : 1
 2011-01-10 13:10:18,218 DEBUG [http1-w06 [container1-16]] sql.Connection    (JakartaCommonsLoggingImpl.java:27)     - {conn-100016} Connection
 2011-01-10 13:10:18,234 DEBUG [http1-w06 [container1-16]] sql.PreparedStatement (JakartaCommonsLoggingImpl.java:27)     - {pstm-100017} Executing Statement:

        SELECT j.* FROM (
                SELECT k.*, ROWNUM rnum FROM(
                        SELECT
                                NUM,
                                NAME,
                                EMAIL,
                                TITLE,
                                CONTENTS AS content,
                                CRE_DATE
                        FROM STUDY_BOARD
                        ORDER BY NUM DESC
                ) k
        ) j
        WHERE j.rnum BETWEEN '1' AND '10'

반응형

'jsp' 카테고리의 다른 글

Using-MyBatis-Foreach-to-Insert-Collections  (0) 2013.05.10
XML_ex.jsp  (0) 2011.01.10
tomcat Get방식으로 넘어가는 파라미터 한글인코딩하게 하는법  (0) 2010.12.09
JSP 게시판 페이징  (0) 2010.12.09
반응형

jsp 페이지상단에 <%@ page contentType="text/html;charset=euc-kr" %> 삽입

Get방식으로 넘어가는 파라미터 한글인코딩하게 하는법

위치 : 'C:\java\Tomcat 5.5\conf\server.xml' 파일을 아래와 같이 변경.
         URIEncoding="euc-kr" 를 추가 삽입 한후 저장
         톰캣 재시작후 다시 확인 하면 됨.
 
      maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
      enableLookups="false" redirectPort="8443" acceptCount="100"
      connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="euc-kr" />

< Connector >부분에
URIEncoding="euc-kr"
추가


 

반응형

'jsp' 카테고리의 다른 글

Using-MyBatis-Foreach-to-Insert-Collections  (0) 2013.05.10
XML_ex.jsp  (0) 2011.01.10
log4j 설정  (0) 2011.01.10
JSP 게시판 페이징  (0) 2010.12.09
반응형

<SPAN id=tx_marker_caret></SPAN><% int totCnt = 0; // 게시물 전체 수 int totalPage = 0; // 총 페이지수 int pageCnt = 10; // 한페이지에 보여질 게시물수 int pageGroup = 10; // 한페이지에 보여질 페이지 수 //int pageNo = 0; // 현재페이지 int currentPage = (request.getParameter("pageNo")) == null ? 1 : Integer.parseInt(request.getParameter("pageNo")); //현재 화면에서 보여질 페이지의 스타트 번호 int startPageNum = currentPage % pageGroup == 0 ? (currentPage / pageGroup -1) * pageGroup + 1 : (currentPage / pageGroup) * pageGroup + 1; int endPageNum = startPageNum + pageGroup; //현재 화면에서 보여질 페이지의 마지막 번호 int startRow = currentPage * pageCnt - pageCnt; // Limit 시작 int endRow = pageCnt; // Limit 끝 //sql = "SELECT * FROM content ORDER BY idx DESC LIMIT " + startRow + "," + endRow ; Statement stmt_list; ResultSet result_list; Class.forName(driver); connection = DriverManager.getConnection(dbURL, user, pass); stmt_list = connection.createStatement(); String query_list = "SELECT count(*) FROM content"; result_list = stmt_list.executeQuery(query_list); // 게시물 전체수 받아오기 if( result_list.next() ) { totCnt = result_list.getInt(1); } //총 페이지 수 계산. totalPage = totCnt / pageCnt + (totCnt % pageCnt == 0 ? 0:1 ); out.println("totCnt " + totCnt + "<br>"); out.println("totalPage " + totalPage + "<br>"); out.println("pageCnt " +pageCnt + "<br>"); out.println("pageGroup " + pageGroup + "<br>"); out.println("currentPage " + currentPage + "<br>"); out.println("startPageNum " + startPageNum + "<br>"); out.println("endPageNum " + endPageNum + "<br>"); if( startPageNum - pageGroup > 0 ) //out.println(startPageNum - pageGroup); out.println("<a href=./board.jsp?pageNo=" + (startPageNum - 1) + ">[prev]</a>&nbsp;" ); for(int i=startPageNum;i<endPageNum;i++) { if( i <= totalPage) { if( i != currentPage ) out.println("<a href=./board.jsp?pageNo=" + i + ">[" + i + "]</a>&nbsp;" ); else out.println("<b>[" + i + "]</b>&nbsp;" ); } } if( endPageNum < totalPage ) { out.println("<a href=./board.jsp?pageNo=" + endPageNum + ">[next]</a>&nbsp;" ); } %>



반응형

'jsp' 카테고리의 다른 글

Using-MyBatis-Foreach-to-Insert-Collections  (0) 2013.05.10
XML_ex.jsp  (0) 2011.01.10
log4j 설정  (0) 2011.01.10
tomcat Get방식으로 넘어가는 파라미터 한글인코딩하게 하는법  (0) 2010.12.09

+ Recent posts