Mysql
 sql >> база данни >  >> RDS >> Mysql

Spring Batch - JdbcCursorItemReader изхвърля OutOfMemoryError с голяма MySQL таблица

Има проблем в MySql JDBC драйвер, който причинява зареждане на целия набор от данни в паметта, независимо от параметрите, които сте предали на метода за създаване на израза. Вижте http://dev. mysql.com/doc/refman/5.0/en/connector-j-reference-implementation-notes.html за това как правилно да отворите курсора.

Ето как го правя:

<bean class="org.springframework.batch.item.database.JdbcCursorItemReader">
  <property name="verifyCursorPosition" value="false" />
   <property name="dataSource" ref="remoteDataSource" />
   <property name="rowMapper">
     <bean class="org.springframework.jdbc.core.SingleColumnRowMapper" />
   </property>
   <property name="fetchSize">
     <util:constant static-field="java.lang.Integer.MIN_VALUE" />
   </property>
   <property name="sql">
     <value>SELECT foo, bar FROM baz</value>
  </property>
</bean>



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. android listview актуализиране/опресняване на данните, без да затваряте приложението

  2. Могат ли съхранените процедури да върнат набор от резултати?

  3. проверка на потребителското състояние (активен, неактивен) на уеб страница

  4. как да получите време за зареждане в милисекунди или микросекунди в mysql

  5. Индексът за решаване за потребител на таблица е повреден; опитайте се да го поправите