지대한
11 months ago
5 changed files with 110 additions and 37 deletions
@ -1,35 +0,0 @@ |
|||||||
package com.palnet.biz.scheduler.temp; |
|
||||||
|
|
||||||
import org.springframework.stereotype.Service; |
|
||||||
|
|
||||||
import java.io.File; |
|
||||||
|
|
||||||
/** |
|
||||||
* packageName : com.palnet.biz.scheduler.temp |
|
||||||
* fileName : AdmDistrictInsert |
|
||||||
* author : dhji |
|
||||||
* date : 2023-10-26(026) |
|
||||||
* description : |
|
||||||
* =========================================================== |
|
||||||
* DATE AUTHOR NOTE |
|
||||||
* ----------------------------------------------------------- |
|
||||||
* 2023-10-26(026) dhji 최초 생성 |
|
||||||
*/ |
|
||||||
@Service |
|
||||||
public class TempAdmDistrictService { |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public static void main(String[] args) { |
|
||||||
File directory = new File("./document/district_code"); |
|
||||||
if(!directory.exists()) return; |
|
||||||
|
|
||||||
File[] files = directory.listFiles(); |
|
||||||
for(File file : files) { |
|
||||||
if(!file.isDirectory()) { |
|
||||||
|
|
||||||
} |
|
||||||
} |
|
||||||
System.out.println("end..."); |
|
||||||
} |
|
||||||
} |
|
@ -0,0 +1,84 @@ |
|||||||
|
package com.palnet.exec; |
||||||
|
|
||||||
|
import com.palnet.biz.jpa.entity.ComAdmDistrictBas; |
||||||
|
import com.palnet.biz.jpa.repository.com.ComAdmDistrictBasRepository; |
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
import java.io.BufferedReader; |
||||||
|
import java.io.File; |
||||||
|
import java.io.FileReader; |
||||||
|
import java.util.ArrayList; |
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* packageName : com.palnet.biz.scheduler.temp |
||||||
|
* fileName : AdmDistrictInsert |
||||||
|
* author : dhji |
||||||
|
* date : 2023-10-26(026) |
||||||
|
* description : |
||||||
|
* =========================================================== |
||||||
|
* DATE AUTHOR NOTE |
||||||
|
* ----------------------------------------------------------- |
||||||
|
* 2023-10-26(026) dhji 최초 생성 |
||||||
|
*/ |
||||||
|
@Slf4j |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Service |
||||||
|
public class TempAdmDistrictService { |
||||||
|
|
||||||
|
private final ComAdmDistrictBasRepository comAdmDistrictBasRepository; |
||||||
|
|
||||||
|
// 로컬에서만 돌리도록
|
||||||
|
@Deprecated |
||||||
|
public void readAdmDistrictCode() { |
||||||
|
// File directory = new File("./document/district_code");
|
||||||
|
File directory = new File("../document/district_code"); |
||||||
|
log.info(">>> directory : {}", directory.getPath()); |
||||||
|
log.info(">>> directory : {}", directory.getAbsolutePath()); |
||||||
|
if (!directory.exists()) return; |
||||||
|
File[] files = directory.listFiles(); |
||||||
|
for (File file : files) { |
||||||
|
if (file.isFile()) { |
||||||
|
try (BufferedReader br = new BufferedReader(new FileReader(file))) { |
||||||
|
List<ComAdmDistrictBas> entities = new ArrayList<>(); |
||||||
|
// 첫줄 무시
|
||||||
|
String line = br.readLine(); |
||||||
|
while ((line = br.readLine()) != null) { |
||||||
|
// log.info("line :: {}", line);
|
||||||
|
String[] row = line.split("\\|"); |
||||||
|
String admSectGbn = row[0]; |
||||||
|
// admSectGbn가 L만 추출
|
||||||
|
if (!"L".equals(admSectGbn)) continue; |
||||||
|
if (row.length < 9) continue; |
||||||
|
// log.info("row length : {}::{}", row.length, line);
|
||||||
|
// ADM_SECT_GBN|ADM_CD|ADM_SECT_NM|LOWEST_ADM_SECT_NM|DEL_YMD
|
||||||
|
// |CHG_BEF_ADM_SECT_GBN|CRE_YMD|CHG_BEF_ADM_SECT_CD|COL_ADM_SECT_CD
|
||||||
|
ComAdmDistrictBas entity = ComAdmDistrictBas.builder() |
||||||
|
// .admSectGbn(row[0])
|
||||||
|
.admCd(row[1]) |
||||||
|
.admSectNm(row[2]) |
||||||
|
.lowestAdmSectNm(row[3]) |
||||||
|
.delYmd(row[4]) |
||||||
|
.chgBefAdmSectGbn(row[5]) |
||||||
|
.creYmd(row[6]) |
||||||
|
.chgBefAdmSectCd(row[7]) |
||||||
|
.colAdmSectCd(row[8]) |
||||||
|
.build(); |
||||||
|
// log.info("entity :: {}", entity);
|
||||||
|
entities.add(entity); |
||||||
|
|
||||||
|
} |
||||||
|
log.info(">>> entities size : {}/{}", entities.get(0).getAdmSectNm(), entities.size()); |
||||||
|
comAdmDistrictBasRepository.saveAll(entities); |
||||||
|
} catch (Exception e) { |
||||||
|
log.error("error : {}||{}", e.getMessage(), file.getName()); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
|
log.info(">>>> end...."); |
||||||
|
} |
||||||
|
|
||||||
|
} |
@ -0,0 +1,18 @@ |
|||||||
|
package com.palnet.exec; |
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test; |
||||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||||
|
import org.springframework.boot.test.context.SpringBootTest; |
||||||
|
import org.springframework.test.context.ActiveProfiles; |
||||||
|
|
||||||
|
@ActiveProfiles("local") |
||||||
|
@SpringBootTest |
||||||
|
class TempAdmDistrictServiceTest { |
||||||
|
|
||||||
|
@Autowired |
||||||
|
private TempAdmDistrictService service; |
||||||
|
@Test |
||||||
|
void readAdmDistrictCode() { |
||||||
|
service.readAdmDistrictCode(); |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue