결론
8월 10일에 들었던 강의 내용 정리
과제 2단계 완료하고 3단계 진행 중
오늘 겪은 문제
정말 별 일도 아닌 일에 너무 많은 시간을 버렸다..
변수명이 통일되지 않아서 발생한 에러를 2시간 동안 못 잡은 일
@RequestParam, @PathVariable 헷갈린 일 등등
포트 재미로 8085 바꿨는데, 해당 포트를 사용하고 있는 프로세스가 있어서 해결했다.
본문
@RequestMapping("/api") 중복이 되는 경로를 간편하게 클래스 위에 하나만 써줘도 되는 기능
Jackson은 json 데이터 구조를 처리해주는 라이브러리이다. object <-> json 타입을 변환 가능
public String helloGetRequestParam(@RequestParam(required = false) String name, @RequestParam int age) {
여기서 required = false 이게 있으면 인자를 받지 않아도 에러가 뜨지 않음 **근데 null로 보내준다.
DTO = Data Transfer Object = 데이터 전송 객체
현님의 꿀팁~ 그냥 데이터 보따리라고 생각하면 편합니다!
변수명 에러는 알고보니 진짜 별게 아녀서 자세히 기억조차 나지 않는다. 지회 튜터님이 5분만에 바로 잡아주셨는데, 난 2~3시간을 왜 안되냐면서 붙잡고 있었다. 그냥 안되면 튜터님께 가자
@GetMapping("/get/{id}")
public ScheduleSingleDto getSingleSchedule(@PathVariable int id){
return scheduleService.getSingleSchedule(id);
}
이렇게 해놓고 처음에 @PathVariable 이게 아니라 @RequestParam 이걸로 잘못 써서 에러가 발생했었다.
public List<ResponseTestDto> findNameTest(ApiTest apiTest){
String sql = "SELECT * FROM spartaspring.test_table where name=?;";
return jdbcTemplate.query(sql, new Object[]{apiTest.getName()}, (rs, rowNum) -> {
ResponseTestDto responseTestDto = new ResponseTestDto();
responseTestDto.setName(rs.getString("name"));
responseTestDto.setPw(rs.getString("pw"));
return responseTestDto;
});
}
sql 문 안에 값을 넣어서 사용하고 싶으면 sql 뒤에 new Object[]{apiTest.getName()} 이런 방식으로 사용하면 된다
포트 에러
8085 포트를 쓰려고 했는데 아래와 같은 에러 문구가 떴다 Identify and stop the process that's listening on port 8085 or configure this application to listen on another port. 이건 이미 8085포트가 사용 중이어서 나오는 메세지이다. 나는 근데 이걸 쓸 일이 없는데, 도대체 뭐가 문제인가 싶어서 찾아봤다 cmd에 들어가서 아래와 같은 명령어를 사용해서 어떤 프로세스id가 사용 중인지 확인이 가능하고 아래의 명령어로 그 프로세스 이름이 뭔지 찾을 수 있다. 그래서 해당 프로세스의 서비스를 중지시켜서 8085 포트를 사용할 수 있게 됐다 다행히 나는 이게 쓸모없는 프로그램이라는 것을 알아서 그냥 중지하고 지워버려서 끝냈다. 근데 나중에 혹시 중요한 프로세스가 사용하고 있다면, 중지하기 전에 잘 알아보고 대처를 해야겠다.
netstat -aon | findstr :8085
tasklist /FI "PID eq 24396"
오토인설트
ALTER TABLE spartaspring.schedule MODIFY COLUMN schedule_id INT NOT NULL AUTO_INCREMENT;
'내일배움캠프 > 회고록' 카테고리의 다른 글
| 8월 19일 월요일 (0) | 2024.08.20 |
|---|---|
| 8월 13일 화요일 (0) | 2024.08.14 |
| 8월 9일 금요일 (0) | 2024.08.12 |
| 8월 7일 수요일 (0) | 2024.08.08 |
| 8월 6일 화요일 (0) | 2024.08.07 |