반응형

Java 69

[에러 해결] java.lang.NumberFormatException: For input string

에러 메시지 java.lang.NumberFormatException: For input string 원인 Kafka Topic에서 JSON 데이터를 받아올 때 위와 같은 에러가 났다. 형변환이 잘 안 돼서 나는 에러인 줄 알았는데.. 알고보니 MyBatis 에러였다. 해결 방법 MyBatis에서 if 조건 걸때 작은따옴표와 큰따옴표의 위치를 바꾸니 해결됐다. 변경 전 변경 후 틀린 그림 찾기 갖지만, 자세히 보면 작은따옴표와 큰따옴표의 위치를 바꿨다. 추가 혹시 이 방법으로 해결되지 않는다면, 마이바티스 if문에서도 toString과 같은 메서드를 사용할 수 있으니 이 방법을 이용해보길 바란다.

Java 2022.07.20

Hexagonal Architecture이란? 기본 개발 방법 (Adapter, Port, Service)

Hexagonal Architecture이란? 기본 개발 방법 (Adapter, Port, Service) Layered Architecture vs Hexagonal Architecture Layered Architecture(계층화 아키텍처, 레이어드 아키텍처)를 적용해서 어플리케이션을 만들 때는 비즈니스 로직, 유효성(valudation) 체크, DB 접근 등의 로직이 Controller나 Service 단에 몰아서 작성되는 경우가 많다. 코드를 한 곳에 몰아서 작성하면 코드 길이가 길어짐에 따라 유지보수나 리팩토링이 어려워지므로 이런 방식은 지양해야 한다. 이를 개선하기 위해 Hexagonal Architecture(헥사고날 아키텍처, 육각형 아키텍처)를 적용하는 방법이 있다. Hexagonal ..

Java 2022.06.08

[STS] 콘솔 로그가 많이 찍혀서 STS가 멈추는 경우 (콘솔 응답없음)

[STS] 콘솔 로그가 많이 찍혀서 STS가 멈추는 경우 (콘솔 응답없음) STS에서 Spring Boot 개발시 콘솔 로그가 많이 찍혀서 STS가 멈춰버리는 경우가 있었다. 로그가 많이 찍히긴 했어도 멈출 상황은 아니었다. 로그를 확인하며 작업을 해야했기에 이를 해결해보려고 했다. 생각해보니 며칠 전부터 STS의 콘솔창 로그가 알록달록하게 보이기 시작했다. 내가 설정을 바꾼 것 같은데 무엇을 바꿨는지 기억이 나지 않았다. [해결 방법] Boot Dashboard에서 우클릭 > Open Config > ANSI console output 체크 해제 이 방법을 통해 STS가 멈춰버리는 현상을 해결했다. ANSI console output 체크를 해제하면 콘솔 창에서 로그 레벨별로 형형색색으로 띄던 게 사라..

Java 2022.06.01

[STS] STS(또는 eclipse) 느릴 때 해결 방법

[STS] STS(또는 eclipse) 느릴 때 해결 방법 STS(또는 이클립스)가 느려서 작업할 수 없다면 아래와 같이 설정 파일의 속성 값을 변경하는 것으로 해결할 수 있다. STS이 설치된 폴더에 SpringToolSuite4.ini 파일도 함께 있을 것이다. (이클립스의 경우 eclipse.ini) 이를 코드 에디터 프로그램을 이용해 연다. -Xms256m -Xmx2048m ini 파일을 건드린 적이 없다면 아마 위와 같이 메모리 영역이 기본 값으로 설정되어 있을 것이다. -Xms1024m -Xmx4096m 나의 경우 위와 같이 메모리 용량을 늘려줬다. 이렇게만 해줘도 STS(또는 이클립스)가 좀 더 빨라진 것을 체감할 수 있다.

Java 2022.05.25

[Java] 어드민페이지 만들기 1편~최종 모음 (JPA, Rest API, API 명세)

[Java] 어드민페이지 만들기 1편~최종 모음 (JPA, Rest API, API 명세) 어드민페이지 포스팅을 하다 보니 글이 여러 개가 나오게 되었다. 이번 페이지는 링크 모음 페이지로써, 필요한 부분만 찾아 들어가기 쉽게 만들었다. 1~2번은 어드민페이지를 만들기 위해 필요한 사전학습 과정이며, 3번부터 어드민페이지를 본격적으로 만들기 시작한다. 아래 순서대로 학습을 이어가면 자바를 이용해 어드민 페이지를 만드는 과정을 이해할 수 있을 것이다. 1. Spring Boot에서 Get / Post 메소드 사용법 @RequestMapping @GetMapping 멀티 파라미터의 경우 객체로 받기 (String 값으로 리턴, JSON 형식으로 리턴) @PostMapping Rest Client 툴을 이용한..

Java 2022.05.11

[Eclipse, STS] 이클립스(또는 STS) 화면 재설정 (레이아웃 이상할 때)

[Eclipse, STS] 이클립스(또는 STS) 화면 재설정 (레이아웃 이상할 때) 이클립스(또는 STS)를 사용하다 보면 가끔 화면 레이아웃이 이상할 때가 있다. 클래스 파일을 열었는데 아래 콘솔창 부분에 파일이 뜬다든지, 모든 파일을 닫았을 때 아래쪽에만 있어야 할 콘솔창이 전체 창 사이즈로 커진다든지.. 등등 이 경우 화면 설정을 초기화해주면 된다. window > Perspective > Reset Perspective 간단한 방법으로 이클립스(또는 STS) 레이아웃 초기화가 끝난다.

Java 2022.05.04

[Java] primitive type의 null값 가능? 불가능?

[Java] primitive type의 null값 가능? 불가능? Java에서 기본형 타입(primitive type, 원시 타입)의 경우 null값을 가질 수 없다. primitive type의 경우 기본값이 있기 때문에 Null값이 애초에 존재하지 않기 때문이다. (참고: 기본형 타입에 null을 아예 넣을 수 없는 것은 아닌데, Wrapper 클래스를 이용하면 null을 넣을 수도 있다.) Java의 Data Type 중 기본형 (Primitive Type) Primitive Type 기본값 boolean false byte 0 short 0 int 0 long 0L lfoat 0.0F double 0.0 char '\u0000' primitive type의 default값은 대부분 0이다. 참고..

Java 2022.04.27

[Java] 이클립스/STS 단축키 모음 (Eclipse, STS)

[Java] 이클립스/STS 단축키 모음 (Eclipse, STS) Ctrl + Shift + L 단축키 전체 목록 보기 Ctrl + +/- 화면 폰트 크기 크게/작게 Ctrl + D 한 줄 삭제 Ctrl + Alt + Shift + ↓ 행 단위 복사 Alt + ↑/↓ 행 단위 이동 Alt + Shift + A 멀티 컬럼 편집 Alt + Shift + A를 누른 후, Shift + ↓/↑으로 멀티 컬럼을 선택하여 수정 수정 완료 시 Alt + Shift + A를 다시 눌러 멀티 컬럼 편집 상태 해제 Ctrl + I 자동 들여쓰기 Ctrl + / 주석 토글 형식으로, 한 번 누르면 주석 처리되고 한 번 더 누르면 주석이 해제된다. Ctrl + Shift + R 파일 찾기 대소문자 구분하지 않음 확장자와 와..

Java 2022.04.21

[어드민 페이지 만들기] 서비스 로직 개발_API 만들기 (Update, Delete)

[어드민 페이지 만들기] 서비스 로직 개발_API 만들기 (Update, Delete) 3. Update update의 경우 create와 URL 주소도 동일하는 등 매우 유사하다. 대신 id 값이 들어있고, 메소드 방식은 PUT이라는 차이점이 있다. request는 어떤 id에 대해서 어떤 값을 업데이트 해달라는 요청이 오면 그 값들을 바꿔주고, response는 동일하게 user 객체를 가지고 해당 정보를 내려주면 된다. UserApiController @Slf4j @RestController @RequestMapping("/api/user") public class UserApiController implements CrudInterface { @Autowired private UserApiLogi..

Java 2022.03.24
반응형