0
스프링을 배치하여 DB로부터 데이터를 읽고 org.hibernate.hql.internal.ast.QuerySyntaxException지고 리더 동면 시도 : 결과 [결과]와 매핑되지스프링 배치 절전 CursorItemReader는
<import resource="/context-model.xml"/>
<batch:job id="MainJob">
<!-- File Load Step -->
<batch:step id="stepDataReadFromDB">
<batch:tasklet>
<batch:chunk reader="DataReaderDB" processor ="" dummyProcessor" writer="dummyWriter" commit-interval="2"></batch:chunk>
</batch:tasklet>
</batch:step>
</batch:job>
<bean id="DataReaderDB" class="org.springframework.batch.item.database.HibernateCursorItemReader">
<property name="sessionFactory" ref="sessionFactory" />
<property name="queryString" value="from Result" />
<property name="useStatelessSession" value="false" />
</bean>
<bean id="transactionManager" class="org.springframework.batch.support.transaction.ResourcelessTransactionManager"/>
<bean id="jobLauncher" class="org.springframework.batch.core.launch.support.SimpleJobLauncher">
<property name="jobRepository" ref="jobRepository"/>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="DataSource" />
<property name="mappingLocations" value="classpath:META-INF/spring/batch/hibernate/*.hbm.xml" />
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect"> org.hibernate.dialect.OracleDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">true</prop>
</props>
</property>
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"/>
<tx:annotation-driven transaction-manager="transactionManager"/>
<bean id="DataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@******"/>
<property name="username" value="UN"/>
<property name="password" value="PW"/>
</bean>
Hiber.hib .XML :
<hibernate-configuration>
<session-factory>
<mapping class="org.core.reader.Result"/>
</session-factory>
</hibernate-configuration>
Entity 클래스
@Entity
@Table(name = "RESULT")
public class Result {
@Id
@Column(name = "SID", nullable = false)
int sID;
@Column(name = "COLUMN1")
String studentName;
나는 DB.I 필요에서 데이터를 읽을 수 없습니다입니다 요청으로부터의 데이터에 대응하는 최대 절전 모드를 사용하여 오라클로부터 데이터를 페치한다. 위와 같이 구성했지만 표시된 오류가 발생했습니다.
누군가 나를 도와 줄 수 있습니까?
구성 파일의 코드 스 니펫 위에 붙여 넣었습니다.
Shazin 님, 고맙습니다. 패키지 이름을 여기에 추가했습니다. ** ** –
Ravi