batch代码

 在当前文件位置:

1.批量创建文件夹

2.批量复制文件到文件夹

3.批量运行exe可执行文件

@echo off
set time=3
set a=prof
set str=%a%%%i
for /l %%i in (1,1,%time%) do (
    md  %str% )
rem copy IceMEE-Gauss.exe %str%\ )
rem start /d %str%\ IceMEE-Gauss.exe  )
pause

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Batch是一个轻量级的批处理框架,可以帮助我们高效地处理大量数据。下面是一个简单的Spring Batch的示例代码,它会读取一个CSV文件,并把数据写入到数据库中。 首先,我们需要定义一个数据模型类,表示CSV文件中的一行数据: ```java public class User { private String name; private int age; private String email; // 省略getter和setter方法 } ``` 接下来,我们需要定义一个ItemReader,用于读取CSV文件中的数据: ```java public class UserItemReader implements ItemReader<User> { private final String inputFilePath; private boolean read; public UserItemReader(String inputFilePath) { this.inputFilePath = inputFilePath; } @Override public User read() throws Exception, UnexpectedInputException, ParseException, NonTransientResourceException { if (!read) { read = true; BufferedReader reader = new BufferedReader(new FileReader(inputFilePath)); reader.readLine(); // 跳过第一行标题行 String line = reader.readLine(); if (line != null) { String[] fields = line.split(","); User user = new User(); user.setName(fields[0]); user.setAge(Integer.parseInt(fields[1])); user.setEmail(fields[2]); return user; } } return null; } } ``` 上述代码中,我们使用BufferedReader读取CSV文件中的数据,并把数据解析为User对象。在read()方法中,我们使用了一个read标志位,保证只读取一次数据。 接下来,我们需要定义一个ItemWriter,用于把数据写入到数据库中: ```java public class UserItemWriter implements ItemWriter<User> { private final JdbcTemplate jdbcTemplate; public UserItemWriter(DataSource dataSource) { this.jdbcTemplate = new JdbcTemplate(dataSource); } @Override public void write(List<? extends User> items) throws Exception { for (User user : items) { jdbcTemplate.update("INSERT INTO user (name, age, email) VALUES (?, ?, ?)", user.getName(), user.getAge(), user.getEmail()); } } } ``` 上述代码中,我们使用JdbcTemplate执行SQL语句,把数据写入到数据库中。 最后,我们需要定义一个Job,把ItemReader、ItemWriter和数据处理逻辑串联起来: ```java @Configuration @EnableBatchProcessing public class BatchConfiguration { private final JobBuilderFactory jobBuilderFactory; private final StepBuilderFactory stepBuilderFactory; @Autowired public BatchConfiguration(JobBuilderFactory jobBuilderFactory, StepBuilderFactory stepBuilderFactory) { this.jobBuilderFactory = jobBuilderFactory; this.stepBuilderFactory = stepBuilderFactory; } @Bean public ItemReader<User> userItemReader() { return new UserItemReader("input.csv"); } @Bean public ItemWriter<User> userItemWriter(DataSource dataSource) { return new UserItemWriter(dataSource); } @Bean public Step step1(ItemReader<User> userItemReader, ItemWriter<User> userItemWriter) { return stepBuilderFactory.get("step1") .<User, User>chunk(10) .reader(userItemReader) .writer(userItemWriter) .build(); } @Bean public Job importUserJob(JobCompletionNotificationListener listener, Step step1) { return jobBuilderFactory.get("importUserJob") .incrementer(new RunIdIncrementer()) .listener(listener) .flow(step1) .end() .build(); } } ``` 上述代码中,我们使用@EnableBatchProcessing注解启用Spring Batch,并定义了一个Job和一个Step。在Step中,我们指定了ItemReader和ItemWriter,以及每次处理的数据量(chunk)。在Job中,我们把Step串联起来,并指定了Job的名称和ID。 最后,我们还需要定义一个JobCompletionNotificationListener,用于在任务完成时输出一些信息: ```java public class JobCompletionNotificationListener extends JobExecutionListenerSupport { private final JdbcTemplate jdbcTemplate; @Autowired public JobCompletionNotificationListener(DataSource dataSource) { this.jdbcTemplate = new JdbcTemplate(dataSource); } @Override public void afterJob(JobExecution jobExecution) { if (jobExecution.getStatus() == BatchStatus.COMPLETED) { System.out.println("Job completed successfully!"); int count = jdbcTemplate.queryForObject("SELECT COUNT(*) FROM user", Integer.class); System.out.println("Total users inserted: " + count); } } } ``` 上述代码中,我们在任务完成时统计了插入的数据量,并输出到控制台。 这就是一个简单的Spring Batch的示例代码,它可以帮助你快速入门Spring Batch

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值