Commit 857d6a6d authored by 霍传世's avatar 霍传世

测试生成上传

parent 5ce9b6db
......@@ -35,6 +35,7 @@
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version>
<optional>true</optional>
</dependency>
......
package com.example.pdfgenerator.Dto;
import lombok.Data;
@Data
public class TaskPoolDto {
private String examId;
private String region;
private String province;
private String school;
private Integer status;
}
package com.example.pdfgenerator.DataProcessing;
import com.example.pdfgenerator.Dto.TaskPoolDto;
import com.example.pdfgenerator.config.MyDataSourceConfig;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.BatchPreparedStatementSetter;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.List;
@SpringBootTest
public class GenerateTaskPool {
@Test
public void GenerateTaskPoolUnit(){
JdbcTemplate reportJdbcTemplate = MyDataSourceConfig.getReportJdbcTemplate();
String sql = "SELECT\n" +
"\texam_id,\n" +
"\tregion,\n" +
"\tprovince,\n" +
"\tschool,\n" +
"\t0 as status\n" +
"FROM\n" +
"\tbase_school_total_score_tda20240919 \n" +
"GROUP BY\n" +
"\tregion,\n" +
"\tprovince,\n" +
"\tschool,\n" +
"\texam_id";
List<TaskPoolDto> taskPoolDtoList = reportJdbcTemplate.query(sql,new Object[]{},new BeanPropertyRowMapper<>(TaskPoolDto.class));
batchInsert(taskPoolDtoList,reportJdbcTemplate);
System.out.println("生成任务已经结束");
}
public void batchInsert(List<TaskPoolDto> taskPoolDtoList,JdbcTemplate reportJdbcTemplate){
String sql = "insert into school_report_task_generate (exam_id,region,province,school,status) values (?,?,?,?,?)";
reportJdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
@Override
public void setValues(PreparedStatement ps, int i) throws SQLException {
TaskPoolDto taskPoolDto = taskPoolDtoList.get(i);
ps.setString(1,taskPoolDto.getExamId());
ps.setString(2,taskPoolDto.getRegion());
ps.setString(3,taskPoolDto.getProvince());
ps.setString(4,taskPoolDto.getSchool());
ps.setInt(5,taskPoolDto.getStatus());
}
@Override
public int getBatchSize() {
return taskPoolDtoList.size();
}
});
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment