

for (ํ์
๋ณ์ : ๋ฐฐ์ด ๋๋ ์ปฌ๋ ์
) { // ๋ฐ๋ณต ์คํํ ์ฝ๋ }
- ํ์ ๋ณ์ → ๋ฐ๋ณตํ๋ฉด์ ๊บผ๋ผ ๊ฐ์ ํ์ ๊ณผ ์์ ์ ์ฅํ ๋ณ์
- ๋ฐฐ์ด ๋๋ ์ปฌ๋ ์ → ๋ฐ๋ณตํ ๋์
- : (์ฝ๋ก ) → “~์์ ํ๋์ฉ ๊บผ๋ธ๋ค” ๋ผ๋ ์๋ฏธ

์ปจํธ๋กค๋ฌ-์๋น์ค-๋ ํฌ์งํ ๋ฆฌ๋ก ์ฐ๊ฒฐ
@Controller
public class UserController {
private final UserService userService;
public UserController(UserService userService){
this.userService = userService;
}
}
ctrl+c , vํด์ service์ ๋ฃ๊ณ ์ปค์์๊ฒ ์ํค๊ธฐ
@UserService.java ์ฌ๊ธฐ์ @UserRepository.java์ ํ์ดํ๋ผ์ธ์ผ๋ก ์ฐ๊ฒฐํ๋ ์ฝ๋ ์ง์ค
@Service
public class UserService {
private final UserRepository userRepository;
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}
}

@train.csv ์ฌ๊ธฐ์์ ์คํค๋ง๋ฅผ ํ๋๋ก ํ๋ ์ฝ๋๋ฅผ ์์ฑํด์ค

๋กฌ๋ณต์ ์ฌ์ฉํ๋ ์ด์

DTO ๋ @Data
VO๋ @Getter

**๋กฌ๋ณต(Lombok)**์ ์คํ๋ง ํ๋ก์ ํธ์์ ์๋ฐ์ ๋ฐ๋ณต์ ์ธ ์ฝ๋๋ฅผ ์๋์ผ๋ก ๋ง๋ค์ด์ฃผ๋ ์์ฐ์ฑ ํฅ์ ๋๊ตฌ์ ๋๋ค. ํต์ฌ์ ๊ฐ๋ ์ฑ ํฅ์ + ์ฝ๋ ๊ฐ๊ฒฐํ + ์ ์ง๋ณด์์ฑ ๊ฐ์ ์ ๋๋ค.

register์์ ๊ฐ์ ธ์์ ์ ๋ถ๋ถ๋ง ๋ฐ๊ฟ์ค



passenger์ ๋ค user ๋ก ๋ฐ๊พธ๊ธฐ

messenger์ ๋ด์์ ๋ณด๋



์ด ๋ถ๋ถ์ ์๋์ผ๋ก ๊ณ ์ณ์ค์ผํจ
int count = 0;
for (CSVRecord record : records) {
UserDTO user = new UserDTO();
user.setPassengerId(record.get("PassengerId"));
user.setName(record.get("Name"));
user.setGender(record.get("Sex"));
user.setAge(record.get("Age"));
user.setPclass(record.get("Pclass"));
user.setSurvived(record.get("Survived"));
user.setSibSp(record.get("SibSp"));
user.setParch(record.get("Parch"));
user.setTicket(record.get("Ticket"));
user.setFare(record.get("Fare"));
user.setCabin(record.get("Cabin"));
user.setEmbarked(record.get("Embarked"));
user.add(user);
package com.seoeunjin.api.user.controller;
import java.io.FileReader;
import java.io.InputStreamReader;
import java.io.Reader;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;
import org.apache.commons.csv.CSVRecord;
import org.springframework.boot.autoconfigure.security.SecurityProperties.User;
import org.springframework.core.io.ClassPathResource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import com.seoeunjin.api.common.domain.Messenger;
import com.seoeunjin.api.user.domain.UserDTO;
import com.seoeunjin.api.user.service.UserService;
import lombok.RequiredArgsConstructor;
@Controller
@RequiredArgsConstructor
public class UserController {
private final UserService userService;
@GetMapping("/train/top5")
public Messenger printTop5Passengers() {
try {
String csvFilePath = "src/main/resources/static/csv/train.csv";
// CSV ํ์ผ ์ฝ๊ธฐ
FileReader reader = new FileReader(csvFilePath);
CSVParser parser = new CSVParser(reader, CSVFormat.DEFAULT.withFirstRecordAsHeader());
List<UserDTO> users = new ArrayList<>();
int count = 0;
// ์ฒ์ 5๋ช
์ ๋ฐ์ดํฐ๋ง ์ฝ๊ธฐ
for (CSVRecord record : parser) {
if (count >= 5)
break;
UserDTO user = new UserDTO();
user.setUserId(record.get("PassengerId"));
user.setName(record.get("Name"));
user.setGender(record.get("Sex"));
user.setAge(record.get("Age"));
user.setPclass(record.get("Pclass"));
user.setSurvived(record.get("Survived"));
user.setSibSp(record.get("SibSp"));
user.setParch(record.get("Parch"));
user.setTicket(record.get("Ticket"));
user.setFare(record.get("Fare"));
user.setCabin(record.get("Cabin"));
user.setEmbarked(record.get("Embarked"));
users.add(user);
count++;
}
parser.close();
reader.close();
Messenger messenger = new Messenger();
return messenger;
} catch (Exception e) {
Messenger messenger = new Messenger();
messenger.setCode(500);
messenger.setMessage("csv ํ์ผ์ ์ฝ๋ ์ค ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.");
return messenger;
}
}}
์ด๋ ๊ฒ ์์ฑ์ด ๋์์ต๋๋น.
'Project ESG+AI > [์ผ์ KPMG]ESG ๋ฐ์ดํฐ ํ์ฉ ํ์คํ ๊ฐ๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| 11์ผ์ฐจ. (0) | 2025.10.23 |
|---|---|
| 10์ผ์ฐจ. ํฐ๋ฏธ๋์ csv ํ์ผ ๋ด์ฉ์ด ๋ํ๋๊ฒ ํด์ค (0) | 2025.10.22 |
| 8์ผ์ฐจ. (0) | 2025.10.20 |
| 7์ผ์ฐจ. (0) | 2025.10.17 |
| 6์ผ์ฐจ. ๊ณ์ฐ๊ธฐ์ ํ์ ๊ณ์ฐ๊ธฐ, ์ฃผ๋ฏผ ๋ฒํธ ์ ๋ ฅ ํ ์ถ๋ ฅ ๊ฐ ์์ฑํด์ค (0) | 2025.10.16 |