로깅이란? 로깅이란? @Slf4j @slf4j로 서버에서 일어나는 일들을 기록하는 어노테이션이다. 코드에서 System.out.println으로 결과를 확인 하는 것은 서버에 큰 무리를 준다고 한다. 로깅을 실제 코드에서 적용해보면 이렇게 log.info();로 사용할 수 있다. 결과값은 아래 사진처럼 기존에 toString형식으로만 나오는게 아니라 어디서 실행됐고 언제 실행됐는지 볼 수 있다. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.22
Lombok(롬복) 사용하기 (리팩토링) DTO를 작성할 때 getter, setter, 생성자, tostring 등 쓸일이 많다. 하지만 여러 개의 DTO를 작성할 때마다 작성하기엔 시간이 오래걸린다. 물론 eclipse로 쓸때는 단축키로 빨리 칠 수는 있지만 롬복의 어노테이션을 사용하면 더 빠르게 작성하고, 유지보수성도 올라간다. 필드부만 입력하면 나머지는 자동으로 작성해주기 때문에 수정사항이 있더라도 필드부만 고쳐주면 나머지는 자동으로 고쳐지기 때문에 편리하다. 리팩토링이란? 기존의 코드를 개선하여 재구성하는 것을 의미함 build.gradle 파일의 dependencies에 드래그 친 부분을 추가해준다. 그 후 우측 상단에 gradle 새로고침 버튼(load gradle change을 눌러준다. 이렇게 하고 DTO를 바꿔봤더니 이런 오류.. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.22
JPA 웹으로 연동하여 사용해보기 JPA는 지속적으로 공부해야 할 것 같아서 공부하는 것들을 그때그때 추가로 게시글을 작성할 예정이다. 스프링부트 프로젝트를 만들 때 h2를 연동했었다. src - main - resource - application.properties파일에 spring.h2.console.enabled=true 를 추가한다. 이는 h2 데이터베이스 콘솔을 활성화 하는 코드이다. http://localhost:8080/h2-console로 h2 데이터 베이스에 접속 할 수 있다. 물론 학습용이고 보안상으로는 안좋다고 한다. 서버를 실행하고 위 URL에 접속하면 이런 인터페이스가 보일텐데 위와 같이 두고 JDBC URL에다가 인텔리제이 콘솔창에서 JDBC를 검색하면 위와 같이 뜰 것이다. 해당 드래그 쳐져있는 부분과 같은 .. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.22
form으로 데이터 주고 받기 HTML로 form 태그안에 화면을 만들고, DTO와 컨트롤러를 이용해서 데이터를 주고 받는 내용을 해보았다. form태그란? - 아래 코드가 HTML 코드이다. form태그는 하나의 울타리라고 생각하면 되는데 그 제출 버튼을 누르게 되면 form이라는 울타리 안에 있는 데이터만 넘어가게 하고, form태그의 action이라는 곳에 적힌 주소로 넘겨준다. {{>layouts/header}} 제목 내용 제출 {{>layouts/footer}} Controller - 지정한 주소를 통해 데이터를 컨트롤 할 수 있는 메서드가 모인 곳 package com.example.firstproject.controller; import com.example.firstproject.dto.ArticleForm; impor.. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.19
인텔리제이 단축키 메모장 필요할 때 찾아보고 사용하는 단축키와 자동완성키 자동완성은 Ctrl + Space와 Tab키로 하는 것 같다. 사용해 본것들 추가 예정 sout + Tab System.out.println(); Ctrl + Y 한 줄 지우기 Alt + Shift + 위아래 커서 있는 줄 위아래로 옮기기 Ctrl + D 한줄 아래로 복사 Alt + Insert VO 자동완성 (기본생성자, toString 등등) Ctrl + Shift + F10 Run psvm + Tab Java main 메소드 생성 Shift + F6 변수명 일괄적으로 바꾸기 Alt + Enter 자동완성 선택 Ctrl + Shift + Enter 문장 중간에서 다음줄로 내려가기 (아랫줄 내용 있으면 한줄 내림, 메서드 작성 시 매개변수() 다음 누르면.. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.18
field 'xxx' may be 'final' 인텔리제이를 처음 접하여 배우면서 여러가지 에러가 많이 뜬다 생각이 들었지만, 알고보니 그냥 경고였다. field 'xxx' may be 'final' 해당 문구도 final로 바꾸는게 어떻냐는 문구였다. 신경쓰여서 이런 경고를 끄는 곳을 찾았다. Settings -> Editor -> Inspections -> Java -> Code style issues -> Field may be 'final' 체크 해제 여기서 눈에 거슬리는 여러 경고를 끌 수 있을 것 같다. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.18
[Spring Boot/스프링부트] mustache로 변수 사용해보기 1. 컨트롤러 폴더 생성 2. 컨트롤러 파일 생성 package com.example.firstproject.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; @Controller public class FirstController { @GetMapping("/hi") public String hello(Model model){ model.addAttribute("username", "홍길동"); return "greetings"; // templates/greetings.m.. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.15
사소한 기본 개념 정리 공부 할 때 많이 사용하는 주소 localhost : 주소 / 내 컴퓨터 내에서 사용하는 주소 8080 : 포트번호 / 내 컴퓨터의 8080번 방 hello.html : 실행한 프로젝트 내에 존재하는 파일 이름 아래 세가지를 사용하는 패턴 View Templates - 웹페이지를 하나의 틀로 만들고 변수를 대입 예를 들어 사용자마다 마이페이지를 들어갈 때, 사용자가 회원가입을 새로 할 때마다 각자의 마이페이지가 만들어지는것이 아닌 하나의 마이페이지 틀에 각 사용자의 정보를 담아 보여줌 Model - 데이터를 담당 Controller - 처리과정 담당 IntelliJ의 mustache html과 유사함 [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.15
[IntelliJ/인텔리제이] Hello world 띄워보기 Java폴더 안에는 자바코드로 이루어진 파일들이 들어간다. resources폴더 안에는 외부 파일들이 들어간다. 메인 메소드가 있는 파일이 하나 만들어져 있다. 먼저 실행하는 방법은 왼쪽에서 파일에 마우스 오른쪽 버튼 누르고 Run으로 시작되는 메뉴로 실행하는 것과 코드상에서 재생버튼으로 실행하는 방법이 있다. [Spring Boot] 스프링부트 (IntelliJ)/Spring boot 2023.12.15