게시판 리스트등 가지고 오는데 유용하겠다.
Stmt.setFetchSize
를 이용할것..
=====
참고: ResultSet에서도 FetchSize 적용가능. 양쪽에 차이점과 성능 테스트는 시간날때 정리 필요
e244. Setting the Number of Rows to Prefetch When Executing a SQL Query
When a SQL query is executed, the number of rows of data that a driver physically copies from the database to the client is called the fetch size. If you are performance-tuning a particular query, you might be able to improve performance by adjusting the fetch size to better match the use of the query.
The fetch size can be set on a statement, in which case, all result sets created from that statement will use that fetch size. The fetch size can also be set on a result set at any time. In this case, the next time data needs to be fetched from the database, the driver will copy over as many rows as is specified by the current fetch size.
try { // Get the fetch size of a statement Statement stmt = connection.createStatement (); int fetchSize = stmt.getFetchSize(); // Set the fetch size on the statement stmt.setFetchSize(100); // Create a result set ResultSet resultSet = stmt.executeQuery("SELECT * FROM my_table"); // Change the fetch size on the result set resultSet.setFetchSize(100); } catch (SQLException e) { }
====
http://sangchin.byus.net/FlashHelp/Java_sql/getfetchsize.html
3. Do batch retrieval using Statement
You can get the default number of rows that is provided by the driver. You can improve performance by increasing number of rows to be fetched at a time from database using setFetchSize() method of the statement object.
Initially find the default size by using
Statement.getFetchSize(); and then set the size as per your requirement
Statement.setFetchSize(30);
http://www.precisejava.com/javaperf/j2ee/JDBC.htm
'프로그래밍 > 프로그래밍팁' 카테고리의 다른 글
JDK 1.5 부터 등장한 ThreadPool (0) | 2008.02.27 |
---|---|
SQL Batch (0) | 2007.11.28 |
Java Application의 Locking 처리문제 (0) | 2007.08.21 |
업그레이드된 개발자 되기 (6) | 2007.08.20 |
LinkedHashMap을 이용한 간단한 Cache 만들기.. (0) | 2007.07.28 |