웹 개발
intellij 단축키
intellij 단축키 alt+inset : getter and setter 자동 생성 단축키 ctrl + shift + enter : 웬만한 단축키 alt + enter : 오버라이딩 ctrl + alt + v : 자동 객체 이름 생성 ctrl + shift + t : 메서드 테스트 생성 alt + entet : 스태틱함수로 코드 줄이기 ctrl + e : 페이지 기록 ctrl + n : 클래스 검색 shift + f6 : 이름 변경 ctrl + alt : implement 조회 출력화면 color 적용 (application.properties) spring.output.ansi.enabled=always ctrl + alt + m : 자동 함수 생성 ctrl + shift + f : 찾는 값 전체 ..

스프링 DB 1편 - 자바 예외 처리
자바 예외 계층 Object : 모든 객체의 최상위 부모는 Object이다. Throwable : 최상위 예외이다. Error : 애플리케이션에서 복구 불가능한 시스템 예외이므로, 해당 예외를 잡으려고 하면 안된다. Exception : 체크 예외로 애플리케이션 로직에서 사용할 수 있는 실질적인 최상위 예외로 컴파일러가 체크하는 예외이다. RuntimException : 언체크 예외로 런타임 예외로 라고도 부르며 컴파일러가 체크하지 않는 언체크 예외이다. 예외 기본 규칙 예외는 잡아서 처리하거나, 밖으로 던지거나 둘 중 하나이다. 예외를 처리하지 못하면 호출한 곳으로 예외를 계속 던지게 된다. 예외를 잡거나 던질 때 지정한 예외 뿐만 아니라 그 예외의 자식들도 함께 처리된다. 예외를 처리하지 못하고 계속..

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
타임리프타임리프는 백엔드 서버에서 HTML 파일을 동적으로 렌더링하는 용도로 사용된다. 자세한 내용은 타임리프 게시글에서 확인 https://mjcoding.tistory.com/entry/%EC%8A%A4%ED%94%84%EB%A7%81-MVC-2%ED%8E%B8-%ED%83%80%EC%9E%84%EB%A6%AC%ED%94%84 스프링 MVC 2편 - 타임리프타임리프란? 타임리프는 백엔드 서버에서 HTML 파일을 동적으로 렌더링하는 용도로 사용된다. 타임리프를 사용하면 작성한 파일은 HTML을 유지하기 때문에 파일을 직접 열어서도, 뷰 템플릿을 거mjcoding.tistory.com 메세지, 국제화만약에 상품명이라는 단어를 상품이름으로 변경하려면 어떻게 해야할까? 하나하나 찾아서 변경하는 방법을 취할..

스프링 DB 1편 - 데이터 접근 핵심 원리
JDBC란 Java Database Connectivity 자바에서 데이터베이스에 접속할 수 있도록 도와주는 자바 API이다. JDBC의 등장 배경 기존에 JDBC가 없던 시절 DB마다 애플케이션과 연결되는 코드가 달랐기 때문에 DB를 다른 종류로 변경하면 DB안에 있는 코드도 변경해야 했었으며, 연결하는 방법들이 전부 다 달라서 새로 학습을 해야 했었다. 이런 문제를 해결하기 위해 JDBC가 등장하게 됐다. JDBC 표준 인터페이스 표준 인터페이스를 사용하여 Connection, Statement , ResultSet만을 사용해서 개발을 할수 있다. 해당 인터페이스를 DB에 맞도록 구현하여 라이브러리로 제공하는 이것을 JDBC 드라이버라고 한다. MYSQL DB에 접근할 수 있는 것을 MySQL JDB..
스프링 MVC 2편 - 타임리프
타임리프란? 타임리프는 백엔드 서버에서 HTML 파일을 동적으로 렌더링하는 용도로 사용된다. 타임리프를 사용하면 작성한 파일은 HTML을 유지하기 때문에 파일을 직접 열어서도, 뷰 템플릿을 거치더라도 동적으로 변경된 결과를 확인할 수 있다. 타임리프 적용 방법 build.gradle 파일에서 타임리프 라이브러리 추가 dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' } 타임리프 사용 선언 텍스트 - text, utext th:text ${data} 기본적인 데이터 출력 [[${data}]] 태그 바깥에서 데이터를 출력 [[${data}]] 이스케이프 타임리프에서 th:text 나 [[${data}]]..