Рубрики
Без рубрики

Пример пакета Spring – База данных MySQL В XML

– Пример пакета Spring – База данных MySQL В XML

В этом уроке мы покажем вам, как считывать данные из базы данных MySQL с помощью JdbcCursorItemReader и JdbcPagingItemReader для чтения , и запишите его в XML-файл.

Используемые инструменты и библиотеки

  1. Мавен 3
  2. Затмение 4.2
  3. JDK 1.6
  4. Пружинный сердечник 3.2.2.ВЫСВОБОЖДЕНИЕ
  5. Пружина OXM 3.2.2. ВЫПУСК
  6. Весенняя партия 2.2.0.ВЫПУСК
  7. Драйвер MySQL Java 5.1.25

P.S Этот пример – MySQL jdbc (читатель) – XML (писатель).

1. Структура каталогов проектов

Просмотрите окончательную структуру проекта, стандартный проект Maven.

2. База данных

Таблица “пользователи”, содержит только 5 записей, позже прочитайте ее с помощью jdbc.

id, user_login, password, age

'1','mkyong','password','30'
'2','user_a','password','25'
'3','user_b','password','10'
'4','user_c','password','25'
'5','user_d','password','40'

3. Устройство для считывания предметов

Создайте сопоставитель строк для сопоставления значений базы данных с объектом “пользователь”.

package com.mkyong;

public class User {

	int id;
	String username;
	String password;
	int age;

	//... getter and setter methods

}
package com.mkyong;

import java.sql.ResultSet;
import java.sql.SQLException;
import org.springframework.jdbc.core.RowMapper;

public class UserRowMapper implements RowMapper {

	@Override
	public User mapRow(ResultSet rs, int rowNum) throws SQLException {

		User user = new User();

		user.setId(rs.getInt("id"));
		user.setUsername(rs.getString("user_login"));
		user.setPassword(rs.getString("user_pass"));
		user.setAge(rs.getInt("age"));

		return user;
	}

}

Пример чтения данных из базы данных.

  
	
	
	
		
	
  

Для больших записей вы можете использовать Средство чтения JdbcPagingItemReader .

  
	
	
	  
		
		
		
		
		
	  
	
	
	   
		
	   
	
	
	
		
	
  

4. Автор элементов

Запись данных в XML-файл.

	
		
		
		
	
	
	
		
			
				
			
		
	

5. Весенние пакетные Задания

Задание для чтения данных из MySQL и записи их в XML-файл.



        
  
  

  
	
	
	
		
	
  

  
	
	  
		
	  
	
  

  
	
	
	
  
	
  
	
		
			
		
	
  	



        
	
		
		
		
		
	

	
	

6. Запустите Его

Создайте класс Java и запустите пакетное задание.

package com.mkyong;

import org.springframework.batch.core.Job;
import org.springframework.batch.core.JobExecution;
import org.springframework.batch.core.JobParameters;
import org.springframework.batch.core.JobParametersBuilder;
import org.springframework.batch.core.launch.JobLauncher;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class App {

  public static void main(String[] args) {
	App obj = new App();
	obj.run();
  }

  private void run() {

	String[] springConfig = { "spring/batch/jobs/job-extract-users.xml" };

	ApplicationContext context = new ClassPathXmlApplicationContext(springConfig);

	JobLauncher jobLauncher = (JobLauncher) context.getBean("jobLauncher");
	Job job = (Job) context.getBean("testJob");

	try {

		JobParameters param = new JobParametersBuilder().addString("age", "20").toJobParameters();
			
		JobExecution execution = jobLauncher.run(job, param);
		System.out.println("Exit Status : " + execution.getStatus());
		System.out.println("Exit Status : " + execution.getAllFailureExceptions());

	} catch (Exception e) {
		e.printStackTrace();
	}
	System.out.println("Done");

  }

}

Выход. Извлекает всех “пользователей, возраст которых > 20” в XML-файл.



	
		1
		mkyong
		password
		30
	
	
		2
		user_a
		password
		25
	
	
		4
		user_c
		password
		25
	
	
		5
		user_d
		password
		40
	

Скачать Исходный Код

Рекомендации

  1. Весенний пакет – База данных для чтения и записи
  2. StaxEventItemWriter javadoc
  3. JdbcPagingItemReader javadoc для чтения страниц

Оригинал: “https://mkyong.com/spring-batch/spring-batch-example-mysql-database-to-xml/”