배치 수행시 사용되는 입력 데이터를 등록하여 사용할 수 있는 관리 환경을 제공한다.
<bean id="TestJob.TestStep1.FixedFlatFileItemReader" class="org.springframework.batch.item.file.FlatFileItemReader" scope="step"> <property name="resource" value="file:./src/main/resources/egovframework/batch/data/inputs/txtData.txt" /> <property name="lineMapper"> <bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper"> <property name="lineTokenizer"> <bean class="org.springframework.batch.item.file.transform.FixedLengthTokenizer"> <property name="names" value="name, credit" /> <property name="columns" value="1-9, 10-11" /> </bean> </property> <property name="fieldSetMapper"> <bean class="org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper"> <property name="targetType" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep2.DelimitedFlatFileItemReader" class="org.springframework.batch.item.file.FlatFileItemReader" scope="step"> <property name="resource" value="file:./src/main/resources/egovframework/batch/data/inputs/csvData.csv" /> <property name="lineMapper"> <bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper"> <property name="lineTokenizer"> <bean class="org.springframework.batch.item.file.transform.DelimitedLineTokenizer"> <property name="delimiter" value="," /> <property name="names" value="name,credit" /> </bean> </property> <property name="fieldSetMapper"> <bean class="org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper"> <property name="targetType" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep3.EgovFixedFlatFileItemReader" class="org.springframework.batch.item.file.FlatFileItemReader" scope="step"> <property name="resource" value="file:./src/main/resources/egovframework/batch/data/inputs/txtData.txt" /> <property name="lineMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper"> <property name="lineTokenizer"> <bean class="egovframework.brte.core.item.file.transform.EgovFixedLengthTokenizer"> <property name="columns" value="1-9,10-11" /> </bean> </property> <property name="objectMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovObjectMapper"> <property name="type" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> <property name="names" value="name,credit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep4.EgovDelimitedFlatFileItemReader" class="org.springframework.batch.item.file.FlatFileItemReader" scope="step"> <property name="resource" value="file:./src/main/resources/egovframework/batch/data/inputs/csvData.csv" /> <property name="lineMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper"> <property name="lineTokenizer"> <bean class="egovframework.brte.core.item.file.transform.EgovDelimitedLineTokenizer"> <property name="delimiter" value="," /> </bean> </property> <property name="objectMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovObjectMapper"> <property name="type" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> <property name="names" value="name,credit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep5.FixedMultiResourceItemReader" class="org.springframework.batch.item.file.MultiResourceItemReader" scope="step"> <property name="resources" value="file:./src/main/resources/egovframework/batch/data/inputs/*.txt" /> <property name="delegate" ref="TestJob.TestStep5.delegatingReader" /> </bean> <bean id="TestJob.TestStep5.delegatingReader" class="org.springframework.batch.item.file.FlatFileItemReader"> <property name="lineMapper"> <bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper"> <property name="lineTokenizer"> <bean class="org.springframework.batch.item.file.transform.FixedLengthTokenizer"> <property name="names" value="name,credit" /> <property name="columns" value="1-9,10-11" /> </bean> </property> <property name="fieldSetMapper"> <bean class="org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper"> <property name="targetType" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep6.DelimitedMultiResourceItemReader" class="org.springframework.batch.item.file.MultiResourceItemReader" scope="step"> <property name="resources" value="file:./src/main/resources/egovframework/batch/data/inputs/*.csv" /> <property name="delegate" ref="TestJob.TestStep6.delegatingReader" /> </bean> <bean id="TestJob.TestStep6.delegatingReader" class="org.springframework.batch.item.file.FlatFileItemReader"> <property name="lineMapper"> <bean class="org.springframework.batch.item.file.mapping.DefaultLineMapper"> <property name="lineTokenizer"> <bean class="org.springframework.batch.item.file.transform.DelimitedLineTokenizer"> <property name="delimiter" value="," /> <property name="names" value="name,credit" /> </bean> </property> <property name="fieldSetMapper"> <bean class="org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper"> <property name="targetType" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep7.EgovFixedMultiResourceItemReader" class="org.springframework.batch.item.file.MultiResourceItemReader" scope="step"> <property name="resources" value="file:./src/main/resources/egovframework/batch/data/inputs/*.txt" /> <property name="delegate" ref="TestJob.TestStep7.delegatingReader" /> </bean> <bean id="TestJob.TestStep7.delegatingReader" class="org.springframework.batch.item.file.FlatFileItemReader"> <property name="lineMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper"> <property name="lineTokenizer"> <bean class="egovframework.brte.core.item.file.transform.EgovFixedLengthTokenizer"> <property name="columns" value="1-9,10-11" /> </bean> </property> <property name="objectMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovObjectMapper"> <property name="type" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> <property name="names" value="name,credit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep.EgovDelimitedMultiResourceItemReader" class="org.springframework.batch.item.file.MultiResourceItemReader" scope="step"> <property name="resources" value="file:./src/main/resources/egovframework/batch/data/inputs/*.csv" /> <property name="delegate" ref="TestJob1.TestStep.delegatingReader" /> </bean> <bean id="TestJob.TestStep.delegatingReader" class="org.springframework.batch.item.file.FlatFileItemReader"> <property name="lineMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper"> <property name="lineTokenizer"> <bean class="egovframework.brte.core.item.file.transform.EgovDelimitedLineTokenizer"> <property name="delimiter" value="," /> </bean> </property> <property name="objectMapper"> <bean class="egovframework.brte.core.item.file.mapping.EgovObjectMapper"> <property name="type" value="egovframework.brte.sample.domain.trade.CustomerCredit" /> <property name="names" value="name,credit" /> </bean> </property> </bean> </property> </bean>
<bean id="TestJob.TestStep1.IbatisPagingItemReader" class="org.springframework.batch.item.database.IbatisPagingItemReader"> <property name="queryId" value="getAllCustomerCredits" /> <property name="sqlMapClient"> <bean class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="file:./src/main/resources/egovframework/sqlmap/brte/sql-map-config.xml" /> </bean> </property> </bean>
<bean id="TestJob.TestStep2.CustomizedJdbcCursorItemReader" class="org.springframework.batch.item.database.JdbcCursorItemReader"> <property name="dataSource" ref="dataSource" /> <property name="sql" value="SELECT name,credit FROM customer" /> <property name="rowMapper"> <bean class="egovframework.brte.sample.domain.trade.CustomerCreditRowMapper" /> </property> </bean>
<bean id="TestJob.TestStep3.SqlPagingQueryJdbcItemReader" class="org.springframework.batch.item.database.JdbcPagingItemReader" scope="step"> <property name="dataSource" ref="dataSource" /> <property name="rowMapper"> <bean class="egovframework.brte.sample.domain.trade.CustomerCreditRowMapper" /> </property> <property name="queryProvider"> <bean class="org.springframework.batch.item.database.support.SqlPagingQueryProviderFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="sortKey" value="name" /> <property name="selectClause" value="SELECT name,credit" /> <property name="fromClause" value="FROM customer" /> <property name="whereClause" value="WHERE credit > :credit" /> <property name="pageSize" value="2" /> </bean> </property> <property name="parameterValues"> <map> <entry key="credit" value="10000" /> </map> </property> </bean>
구분 | 항목명 | 설명 |
---|---|---|
File | Resource | 입력 대상이 되는 파일의 경로 및 파일명 설정 |
File | Field Name | 구분자, 고정길이 등에 의해 구분되어 Mapping 할 VO의 Field 설정 |
File | Column Length | 고정길이 방식으로 읽기 위한 고정길이 값 설정 |
File | Delimiter | 구분자 방식으로 읽기 위한 구분자 값 설정 |
File | VO Class | 데이터를 객체화 할 클래스 설정 |
DB | iBatis Statement | 사용자가 정의 해놓은 iBatis 설정 파일에서 사용할 쿼리 ID |
DB | Configuration File | SqlMapCofig 설정 파일 경로 및 파일명 설정 |
DB | Sql | 데이터베이스에 접근할 쿼리 설정 |
DB | Row Mapper | ResultSet의 데이터를 VO로 Mapping 하도록 사용자가 RowMapper 인터페이스를 구현한 클래스 |
DB | PageSize | 쿼리 실행 시마다 데이터베이스에서 읽어오는 엔티티의 수 설정 |
DB | Sql-SortColumn | 쿼리 결과를 정렬하여 가져올 수 있는 기준 컬럼 설정 |
DB | Sql-SELECT | 쿼리의 SELECT 절 |
DB | Sql-FROM | 쿼리의 FROM 절 |
DB | Sql-WHERE | 쿼리의 WHERE 절 |
DB | Datasource Bean ID | 데이터베이스 연결을 위해 사용할 데이터소스의 빈ID |
DB | Database Type | 데이터베이스 종류 설정 |
구분 | 항목명 | 설명 | 항목의 하위 구성 요소 |
---|---|---|---|
File | FixedFlatFileItemReader | 스프링에서 제공하는 LineMapper, Tokenizer, FieldSetMapper를 사용하여 파일의 데이터를 고정길이 방식으로 읽는 ItemReader | org.springframework.batch.item.file.FlatFileItemReader, org.springframework.batch.item.file.mapping.DefaultLineMapper, org.springframework.batch.item.file.transform.FixedLengthTokenizer, org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper |
File | DelimitedFlatFileItemReader | 스프링에서 제공하는 LineMapper, Tokenizer, FieldSetMapper를 사용하여 파일의 데이터를 구분자 방식으로 읽는 ItemReader | org.springframework.batch.item.file.FlatFileItemReader, org.springframework.batch.item.file.mapping.DefaultLineMapper, org.springframework.batch.item.file.transform.DelimitedLineTokenizer, org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper |
File | EgovFixedFlatFileItemReader | 전자정부에서 제공하는 LineMapper, Tokenizer, ObjectMapper를 사용하여 파일의 데이터를 고정길이 방식으로 읽는 성능 개선된 ItemReader | org.springframework.batch.item.file.FlatFileItemReader, egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper, egovframework.brte.core.item.file.transform.EgovFixedLengthTokenizer, egovframework.brte.core.item.file.mapping.EgovObjectMapper |
File | EgovDelimitedFlatFileItemReader | 전자정부에서 제공하는 LineMapper, Tokenizer, ObjectMapper를 사용하여 파일의 데이터를 구분자 방식으로 읽는 성능 개선된 ItemReader | org.springframework.batch.item.file.FlatFileItemReader, egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper, egovframework.brte.core.item.file.transform.EgovDelimitedLineTokenizer, egovframework.brte.core.item.file.mapping.EgovObjectMapper |
File | FixedMultiResourceItemReader | 스프링에서 제공하는 LineMapper, Tokenizer, FieldSetMapper를 사용하여 파일의 데이터를 고정길이 방식으로 읽는 ItemReader이며, 복수개의 파일을 읽음 | org.springframework.batch.item.file.MultiResourceItemReader, org.springframework.batch.item.file.mapping.DefaultLineMapper, org.springframework.batch.item.file.transform.FixedLengthTokenizer, org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper |
File | DelimitedMultiResourceItemReader | 스프링에서 제공하는 LineMapper, Tokenizer, FieldSetMapper를 사용하여 파일의 데이터를 구분자 방식으로 읽는 ItemReader이며, 복수개의 파일을 읽음 | org.springframework.batch.item.file.MultiResourceItemReader, org.springframework.batch.item.file.mapping.DefaultLineMapper, org.springframework.batch.item.file.transform.DelimitedLineTokenizer, org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper |
File | EgovFixedMultiResourceItemReader | 전자정부에서 제공하는 LineMapper, Tokenizer, ObjectMapper를 사용하여 파일의 데이터를 고정길이 방식으로 읽는 성능 개선된 ItemReader이며, 복수개의 파일을 읽음 | org.springframework.batch.item.file.MultiResourceItemReader, egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper, egovframework.brte.core.item.file.transform.EgovFixedLengthTokenizer, egovframework.brte.core.item.file.mapping.EgovObjectMapper |
File | EgovDelimitedMultiResourceItemReader | 전자정부에서 제공하는 LineMapper, Tokenizer, ObjectMapper를 사용하여 파일의 데이터를 구분자 방식으로 읽는 성능 개선된 ItemReader이며, 복수개의 파일을 읽음 | org.springframework.batch.item.file.MultiResourceItemReader, egovframework.brte.core.item.file.mapping.EgovDefaultLineMapper, egovframework.brte.core.item.file.transform.EgovDelimitedLineTokenizer, egovframework.brte.core.item.file.mapping.EgovObjectMapper |
File | CustomizeFileReader | 사용자가 등록한 파일 ItemReader | 사용자 정의 |
DB | IbatisPagingItemReader | 스프링에서 제공하는 SqlMapClient를 사용하여 DB데이터를 Ibatis방식으로 읽는 ItemReader이며, 페이지 단위로 읽음 | org.springframework.batch.item.database.IbatisPagingItemReader, org.springframework.orm.ibatis.SqlMapClientFactoryBean |
DB | CustomizedJdbcCursorItemReader | 사용자가 정의한 RowMapper 를 사용하여 DB데이터를 Jdbc방식으로 읽는 ItemReader이며, 커서 단위로 읽음 | org.springframework.batch.item.database.JdbcCursorItemReader, RowMapper를 상속 받아 구현한 사용자 지정 Mapper Class |
DB | SqlPagingQueryJdbcItemReader | 스프링에서 제공하는 SqlProvider와 사용자가 정의한 RowMapper를 사용하여 DB데이터를 Jdbc방식으로 읽는 ItemReader이며, 페이지 단위로 읽음 | org.springframework.batch.item.database.JdbcPagingItemReader, RowMapper를 상속 받아 구현한 사용자 지정 Mapper Class, org.springframework.batch.item.database.support.SqlPagingQueryProviderFactoryBean |
DB | CustomizeDBReader | 사용자가 등록한 DB ItemReader | 사용자 정의 |