-
스프링 부트 핵심 가이드 2주차 : 4~5장책 공부/스프링 부트 핵심 가이드 2023. 12. 2. 00:01
📖 책 정보 나를 위한 모바일 가이드 04장 스프링 부트 애플리케이션 개발하기 1. 프로젝트 생성 2. 메이븐 Maven 3. 그레이들 Gradle 4. MVC 패턴 간략하게 알아보기 5. 웹서버 port 번호 변경하기 05장 API를 작성하는 다양한 방법 1. GET / DELETE API 만들기 2. POST / PUT API 만들기 3. ResponseEntity 활용 4. Swagger : REST API 명세를 문서화 해주는 도구 5. Logback : 로깅 라이브러리 04장 스프링 부트 애플리케이션 개발하기 프로젝트 생성 메이븐 Maven 그레이들 Gradle MVC 패턴 간략하게 알아보기 웹서버 port 번호 변경하기 키워드 spring initializr 인텔리제이 IDEA 얼티밋 Arti..
-
controller에서 날짜 입력 받을때 형식 지정Spring Boot 🍃 2023. 12. 2. 00:01
@DateTimeFormat 어노테이션을 이용해서 입력받을 날짜 형식을 지정할 수 있다. void getDate( @RequestParam @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate date ) { System.out.println(date); } 만약 controller에서 dateFormat으로 지정한 형태와 다른 형태인 데이터를 보내면 에러남! controller 에서 2023-05-22 형태로 데이터 입력 받을 준비를 했는데 👇 클라이언트에서 2023/05/22 형태로 보냈을 때 👇 클라이언트에서 2023-05-22 형태로 보냈을 때
-
spring boot 프로젝트 git 업로드 시, API key 및 DB 접속정보 숨기기Spring Boot 🍃 2023. 12. 2. 00:01
보고 배운 블로그 : @minnseong 이번 실습에서 사용하는 open api key는 1분에 60번 초과 호출시 과금 된다고 하니 비공개로 숨기는편이 좋을것 같다 🙊 1. src/main/resource 위치에 properties 설정 파일 추가 application-관리할이름.properties 라는 이름으로 파일을 생성한 후, 파일 안에 Key=value 형태로 입력을 해준다. 2. application.properties 파일에 추가해준 설정 파일 include src/main/resource 위치에 기존에 있는 spring boot 설정 파일인 application.properties 파일을 열어서 1번에서 생성해준 application-관리할이름.properties파일을 include 시켜준..
-
MySQL8 계정 삭제 / 추가 / 권한부여 / 권한삭제 / 비밀번호 변경DB/MySQL 2023. 12. 2. 00:01
계정 삭제 보고 배운 사이트 : infotake.tistory 특정 IP 대역 기준 삭제 drop mysql.user '계정명'@'192.168.%'; 모든 IP 대역 기준 삭제 drop mysql.user '계정명'@'%'; 실행 확인 drop user 'zhyun'@'%'; 테스트 해보니 쿼리에서 host( 허용ip대역 )를 적어주지 않으면 자동으로 host를 전역 % 으로 인식해서 실행한다. 그렇기 때문에, select 쿼리를 사용해서 host 정보 확인 후 drop문 작성을 해주어야 할 것 같다. 계정 추가 보고 배운 사이트 : infotake.tistory 특정 IP 대역 기준 생성 create user '계정명'@'192.168.%' identified by '패스워드'; 모든 IP 대역 기준..
-
Windows Mysql Cli 접속하기DB/MySQL 2023. 12. 2. 00:01
이글을 쓰는 이유는 내 컴퓨터에 mysql server 버전을 설치했었던 기억이 있는데 비밀번호를 뭘로 했는지 기억이 안났기 때문이다..ㅋㅋㅋ🥲 메모의 중요성...🙈 비밀번호를 알아내야 하는데 터미널에서 mysql 명령어가 안먹어서 작성! mysql server 버전을 windows에 설치 한 이후부터 작성. 먼저, windows 터미널에서 mysql 명령어가 먹히지 않아서 알아보니 환경변수 등록이 되어있지 않았기 때문임을 알아내어 환경변수 추가! 1. Windows 환경변수 추가 1. 윈도우 버튼 위에서 우클릭 - 시스템 클릭 2. 고급 시스템 설정 진입 3. 환경변수 버튼 클릭 4. 시스템 변수 항목에서 Path 찾아서 클릭으로 편집창 띄움 5. 새로 만들기 클릭해서 Mysql server 폴더의 b..
-
PersistenceSpring Boot 🍃 2023. 12. 2. 00:01
Persistence : 영속성 이 용어는 data 영속성이 있다 없다 이런 식으로 보통 사용하는데, data를 생성했던 프로그램이 종료되더라도 data는 없어지지 않는 것을 의미한다. Persistence Framework 영속성을 갖는 data를 관리하는 프레임워크 종류 1. SQL Mapper SQL을 개발자가 직접 작성해줘야 한다. - JDBC Java Database Connectivity 2. ORM Object Relation Mapping Object와 DB 테이블을 매핑. 함수를 사용해서 동작을 호출하면, ORM 내부적으로 SQL을 만들어서 실행시켜주기 때문에, 개발자가 SQL을 작성할 필요가 없다. 단점으로는, 복잡한 쿼리를 자바 메서드만으로 해결하는 것이 불편할 때도 있다는 것! - ..
-
깃 이그노어 .gitignore 파일 생성 site프로젝트 관련/Git 2023. 12. 2. 00:01
링크 https://www.toptal.com/developers/gitignore/ 내 커스텀 1 windows에서 intelliJ로 spring 프로젝트에 사용 선택 옵션 : git / intellij+all / windows / gradle / java https://www.toptal.com/developers/gitignore/api/git,intellij+all,windows,gradle,java 내 커스텀 2 선택 옵션 : git , intellij+all , windows , macos , linux , java , gradle , maven https://www.toptal.com/developers/gitignore/api/git,intellij+all,windows,macos,linu..
-
productive-box프로젝트 관련/Git 2023. 12. 2. 00:01
나의 productive-box 가 업데이트를 1주일이 넘게 안한 걸 어제 발견했다. 어제는 일이 있어서 못하고 🙈 오늘을 상큼하게 시작해볼 겸 이 문제를 해결해보려고 뒤적거리고 있다. 1. 업데이트 히스토리 발견 repository 에서 Actions 탭에 가보니 이런게 있었다. 왜 업데이트를 실패했을까?? 로그로 보이는 파일을 찾았는데 이유를 찾아볼 수 없었다... 2023-05-19T17:32:45.5127586Z Requested labels: ubuntu-latest 2023-05-19T17:32:45.5127752Z Job defined at: zhyunk/productive-box/.github/workflows/schedule.yml@refs/heads/master 2023-05-19T17..
-
스프링 부트 핵심 가이드 1주차 : 개발 준비 학습책 공부/스프링 부트 핵심 가이드 2023. 12. 2. 00:01
📖 책 정보 날 위한 모바일 가이드 01장 스프링 부트란? 1. 스프링 프레임워크 2. 스프링 vs 스프링 부트 02장 개발에 앞서 알면 좋은 기초 지식 1. 서버 간 통신 2. 스프링 부트의 동작 방식 3. 레이어드 아키텍처 4. 디자인 패턴 5. REST API 01장 스프링 부트란? 스프링 프레임워크 스프링 vs 스프링 부트 키워드 스프링 엔터프라이즈급 개발 스프링 핵심 가치 IoC DI AOP aspect OOP 핵심기능 부가기능 스프링 부트 의존성 관리 Auto Configuration @Component bean @Component 시리즈 어노테이션 대표 5개 내장 WAS 모니터링 1. 스프링 프레임워크 스프링 프레임워크는 자바 기반의 애플리케이션 프레임워크로 , 엔터프라이즈급 애플리케이션을 ..
-
실습 내용과 함께 읽어보는 간략한 사용자 정의 Annotation 작성을 정리해보고 싶었는데Spring Boot 🍃 2023. 12. 2. 00:01
하루 지났다고 기억이 전혀 나질 않는다 한번 실습한거 안까먹고 영원히 기억하는 사람이었으면 얼마나 좋을까? ㅋㅋ 우선 파일 이름부터 나열! 그 전에 이 어노테이션을 정의 하게 된 이유와 사용 목적에 대해 알아보는게 좋을 것 같다. 그리고 다음엔 실습 후 바로 정리하기로 다짐..😠 이 어노테이션의 명칭은 AccountLock 이고 기능은 Account 계좌에 계좌 잔액 사용 / 사용 취소 요청 시 2중 3중 다중 접근 시도를 사전에 차단하는 Lock을 관리하는 기능이다. 왜 굳이 어노테이션을 만들어서 사용했을까? 일단, 어노테이션을 사용하면 코드의 가독성이 좋아진다. 메서드에 기능을 나열하지 않고 메서드 이름/ 클래스이름 근처에 어노테이션 호출만 해두면 되기 때문이다. 그리고 선언적 프로그래밍이 가능해진다..