본문 바로가기
728x90
320x100

💻 하나씩 차곡차곡/Back-end56

[스프링(Spring)] 롬복(Lombok) (롬복이란 / 자주 쓰는 기능 / @Data 사용을 지양해야 하는 이유 등) 롬복(Lombok) 이란?롬복(Lombok)은 자바 개발자들이 코드 작성을 더욱 편리하게 할 수 있도록 도와주는 라이브러리이다. 롬복(Lombok)의 특징컴파일 시점에 코드를 추가한다.별도의 라이브러리를 추가로 설치해야 한다.IDE의 플러그인을 지원한다. [자주 쓰는 기능] @Getter, @Setter클래스의 필드에 대한 getter, setter 메서드를 자동으로 생성해 준다.코드의 양을 줄이고, 가독성을 높일 수 있다.[사용전]public class User { private String name; private int age; public String getName() { return name; } public void setName(String name) .. 2024. 8. 2.
[스프링(Spring)] HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 방법 (@RequestParam, @RequestBody, @ModelAttribute 이해하기) HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 가장 많이 사용하는 3가지 방법과 스프링과 연계하여 @RequestParam, @RequestBody, @ModelAttribute 어노테이션에 대해 이해해보자!  [HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 방법]가장 많이 사용하는 3가지 방법을 정리하였다.  1. GET - 쿼리 파라미터 형식으로 요청하기HTTP message body 없이, URL의 쿼리 파라미터에 데이터를 포함해서 전달하는 방식이다.요청형태 -> /url?username=hello&age=20검색, 필터, 페이징 등에서 많이 사용한다.*** 이 때 주로 사용하는 (혹은 적절한) 스프링 어노테이션@RequestParam@GetMapping(.. 2024. 8. 2.
[스프링(Spring)] 어노테이션(Annotation)이란? (특징, 원리, 자주 쓰는 어노테이션 정리) 스프링에서 사용하는 어노테이션이 무엇인지, 어노테이션의 특징과 자주 쓰는 어노테이션에 대해서 정리해보자.   어노테이션(Annotation)이란?어노테이션은 자바의 메타데이터(metadata)로, 코드에 대한 부가 정보를 제공하는 데 사용되며, 주석(comments)과 비슷하지만, 주석은 프로그램의 동작에 영향을 미치지 않는 반면, 어노테이션은 프로그램의 컴파일, 배포, 실행 과정에서 다양한 기능을 수행하도록 영향을 줄 수 있다. 어노테이션의 원리스프링 프레임워크는 어노테이션을 사용하여 다양한 설정을 간편하게 처리하는데, 주로 **리플렉션(reflection)**과 프록시(proxy) 패턴을 사용하여 어노테이션의 동작을 구현한다.리플렉션: 런타임 시에 클래스, 메소드, 필드 등에 대한 정보를 동적으로 분.. 2024. 8. 2.
[스프링부트(Spring boot)/Log4jdbc] 콘솔창에 쿼리문 + 테이블형태 결과값 로그 남기기 오늘은 아래와 같이 콘솔창에 쿼리문이랑 결과값이 테이블 형태로 예쁘게(?) 찍히는 걸 해보겠음.  [참고]스프링부트에서는 자체적으로 Log관련들을 제공하고 application.properties를 수정하면 로그에 쿼리문이 찍힐 수 있도록 제공하기는한데 쿼리문이 뭔, 한줄로 주르르르륵 찍혀가지고 안보느니만 못한 형태로 나옴. 그래서 나는 Log4jdbc 를 Dependency에 추가하여 위와 같이 조금 더 편리하게 볼 수 있도록 할 예정!나는 스프링부트 3.2.6 버전 / Mybatis / gradle / IntelliJ 을 사용하고 있기 때문에 이 스택에 맞춰 해볼 것임. 1. build.gradle 수정dependencies { implementation 'org.springframework.boot.. 2024. 6. 11.
[Spring boot(스프링부트)/Mybatis] Xml에 카멜표기법 설정하기 Mybatis를 사용하여 xml을 사용할 때 예를들어 데이터베이스의 MEMBER_ID 컬럼이고 Java의 Dto 변수명이 memberd일 경우, 자동으로 카멜변환을 해주지 못해서 급한대로 아래처럼 alias를 따로 줬었음. 그리 번거로운 일은 아니지만, 컬럼이 많아질수록 alias를 매번 줘야하는 번거로움이 있었음. 그래서, 자동으로 카멜표기법으로 변환할 수 있도록 설정을 변경해보기! SELECT MEMBER_ID AS mermberId , MEMBER_NAME AS memberName , PASSWORD , JOIN_DATE AS joinDate FROM MEMBER_TB W.. 2024. 6. 7.
[IntelliJ(인텔리제이)] xml에 뜨는 밑줄, 노란선 없애보기 인텔리제이에서 스프링부트, 마이바티스 조합으로 개발하다보면 xml을 사용해야 하는 일이 생기는데 xml에 쿼리문을 작성하면 아래와 같은 밑줄이 떠서 굉장히 성가시게 만든다. 이걸 없애보자. 1. 상단메뉴[IntelliJ] - [Settings] 을 연다. 2. 좌측메뉴[Inspections] 검색 - [SQL] - [No data source cofigured]을 체크 해제 해준다. 만약에 그걸로도 밑줄이 안없어진다면? [SQL : SQL dialect detection] 체크해제! [SQL : unresolved reference] 까지 해제! [해결완료!] 노란줄 없어짐! 2024. 4. 1.
728x90
320x100