반응형 *:;전체보기;:*696 VSCode 추천 Extensions 개발 능률 향상! 이번 포스팅에서는 개발 능률을 향상 시킬 수 있는 VSCode 의 Extension을 추천드리려 합니다. 1. ident-rainbow indent-rainbow는 위의 이미지와 같이 들여쓰기 정도를 색상으로 보여주는 Extension 입니다. 들여쓰기가 이상하다면 붉은 색으로 표출되어 바로 파악이 가능합니다. 코드 자동정렬 단축키 (Alt + Shift + f) 로 변화를 확인하세요! 2. Rainbow Brackets Rainbow Brackets은 괄호의 색상을 짝에 맞게 변경해주어 열린 부분과 닫는 부분을 파악하는데 도움을 줍니다. 3. Prettier - Code formatter 코드를 분석하여 일관된 코드 스타일을 유지시켜주는 코드 포메터 입니다. 여러 옵션들을 설정하여 팀의 코드 스타일 유.. 알짜정보/IT정보 2022. 12. 7. Custom Annotation 생성하기 @interface 알짜만 빼먹기 @Annotation을 생성하는 방법에 대해 알아보겠습니다. 1. annotation의 생성 annotation은 @interface로 생성할 수 있습니다. public @interface CustomAnotation{}; 이렇게 생성한 어노테이션은 어디에든 붙여서 사용할 수 있습니다. @CustomAnnotation @RequiredArgsConstructor public class TestController { @CustomAnnotation private final TestService service; @CustomAnnotation @GetMapping(value="hello") public String getPage(){ return "hello" } } 2. Meta Annotation의 종류.. Programing/JAVA 2022. 11. 15. SpringBoot + JWT + Security + JPA 인증 구현, JWT란? 해당 포스팅은 인프런의 무료강의를 참고하여 작성되었습니다. Link: https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-jwt/dashboard 이해하기 쉽게 설명되어 있으니 참고하시면 좋을 것 같습니다. Link: https://jwt.io/ JWT.IO JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties. jwt.io 1. JWT (Json Web Tokens) 란? JWT는 RFC 7519 웹 표준으로 지정된 JSON 객체를 사용해서 토큰 자체에 정보를 저장.. Programing/Springboot 2022. 11. 14. @Builder Annotation 알짜만 빼먹기 / 객체 생성 방법 @Builder Annotation은 lombok 라이브러리의 annotation 입니다. lombok의 적용은 아래의 Link를 확인하세요. Link : https://aljjabaegi.tistory.com/481 Java 필수 라이브러리 Lombok 사용, 적용방법 Java 필수 라이브러리 Lombok 사용, 적용방법 Lombok 라이브러리는 VO(Value Object) 나 DTO(Data Transfer Object) 생성 시 혁신적으로 코드를 줄여주는 라이브러리 입니다. 얼마나 혁신적으로 코드를 줄이는지 aljjabaegi.tistory.com Eclipse 이외의 다른 IDE에선 extension 설치로 사용 가능합니다. 1. @Builder Annotaion @Builder Annotati.. Programing/Design Patterns 2022. 11. 10. SpringBoot RestAPI 404 Not Found message Custom, @ControllerAdvice @ExceptionHandler SpringBoot 로 API를 개발할 때 RequestMapping 되어있지 않은 주소로 요청하면 아래와 같은 에러 메시지를 전송합니다. { "timestamp": "2022-11-09T09:35:14.441+00:00", "status": 404, "error": "Not Found", "message": "No message available", "path": "/api/" } 기존에 API 에서 전송하던 구조와 다르면 제공받는 입장에서도 처리하기 껄끄럽기 때문에 기존 응답 구조에 맞게 설정을 해주는 것이 좋습니다. 그럼 응답 구조에 맞게 처리하는 방법을 알아보겠습니다. 우선 application.yml 파일에 설정을 추가해 주어야 합니다. 1. spring boot properties 설정 [ap.. Programing/Springboot 2022. 11. 9. Spring Boot Banner 변경하기, 배너 변경하기 Spring Boot 프로젝트가 실행이 되면 위와 같은 베너가 출력되는 것을 보신적이 있으실꺼에요. 이번 포스팅에서는 요 베너를 변경하는 방법을 알아보겠습니다. 1.banner.txt 생성 Spring Boot 프로젝트에서 배너는 resources 하위에 banner.txt 파일의 텍스트를 읽어 출력합니다. 해당 경로에 파일을 추가해 줍니다. 2.banner 텍스트 복사 Link : http://patorjk.com/software/taag/ Text to ASCII Art Generator (TAAG) patorjk.com 위 사이트로 이동하여 텍스트를 입력하고 Test All 버튼을 클릭합니다. 그럼 아래와 같이 모든 텍스트가 출력됩니다. 마음에 드는 것을 골라 Select & Copy 버튼을 클릭하.. Programing/Springboot 2022. 11. 8. Vite 기반 React Project 생성하기 Vite의 장단점 등에 대한 소개는 아래의 링크를 참조하세요! 1.Vite 소개 Link : https://vitejs-kr.github.io/ Vite Vite, 차세대 프런트엔드 개발 툴 vitejs-kr.github.io 2. Node.js 설치 시작하기를 보시면 Vite는 Node.js가 설치 되어 있어야 합니다. 아래의 링크로 이동하여 Node.js를 설치해주세요. Link : https://nodejs.org/ko/download/ 다운로드 | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 3.프로젝트 생성 command 창을 열어 프로젝트를 생성할 폴더로 이동 후 아래와 같이.. Programing/React 2022. 11. 8. Java Functional Interface 알짜만 빼먹기 Predicate/Spplier/Consumer/Function Java Functional Interface 알짜만 빼먹기 Predicate/Spplier/Consumer/Function Functional Interface 정의 Functional Interface 는 구현해야하는 abstract method가 한 개만 정의되어 있는 Interface를 말합니다. public interface TestInterface { public String getName(); } Java에서는 위와 같이 메소드가 하나만 있는 Interface를 Functional Interface 로 인식합니다. 하지만 여러 사람이 개발하다보면 실수로 메소드를 추가할 수 있기 때문에 @FunctionalInterface annotation을 붙여주는게 좋습니다. (물론 추가 시 컴파일 에러.. Programing/JAVA 2022. 10. 5. Java Optional 알짜만 빼먹기 사용법/등장이유 Java Optional 알짜만 빼먹기 사용법/등장이유 이번 포스팅에서는 Java Optional에 대해서 알아보도록 하겠습니다. 언제? 왜? Optional 은 Java 8에서 등장을 하게 됩니다. Java 8에서는 Optional 외에 default method, lambda, stream 등 다양한 신규 문법이 등장했습니다. 이는 개인적인 생각으로, 함수형 프로그래밍을 하기 위해 등장했다고 생각합니다. Optional 은 Null Pointer Exception이 발생하지 않도록 하는 Wrapper class로 Null인 value에 접근하더라도 Null Pointer Exception이 발생하지 않습니다. Optional 객체 생성 Optional은 empty(), ofNullable(), of(.. Programing/JAVA 2022. 10. 3. Spring Springboot properties 암호화 jasypt 적용 방법, 설정파일 암호화 Spring Springboot properties 암호화 jasypt 적용 방법, 설정파일 암호화 properties 값을 암호화 하는 라이브러리인 jasypt 적용 방법을 알아보도록 하겠습니다. springboot는 gradle, yml을 사용하고 spring은 maven, properties 를 사용하니 필요에 따라 확인하시기 바랍니다. Springboot jasypt-spring-boot-starter 를 의존성 주입합니다. 1. jasypt 의존성 주입 implementation group: 'com.github.ulisesbocchio', name: 'jasypt-spring-boot-starter', version: '3.0.3' config 파일을 작성합니다. 2. config 파일 작성 .. Programing/Security 2022. 9. 30. Java Collection 반복문 정리 for, while, iterator, stream Java Collection 반복문 정리 for, while, iterator, stream 이번 포스팅에서는 Java Collection의 반복문에 대해서 알아보겠습니다. Array : 배열 배열의 반복문 1. 기본 for문 Integer num[] = new Integer[] {1,2,3,4,5}; for(int i=num.length-1; i>=0; i--) { System.out.println(num[i]); } 2. 확장 for문 Integer num[] = new Integer[] {1,2,3,4,5}; for(Integer number : num) { System.out.println(number); } 3. while Integer num[] = new Integer[] {1,2,3,4,5.. Programing/JAVA 2022. 9. 29. springboot thymeleaf properties 값 가져오기 springboot thymeleaf properties 값 가져오기 Springboot project에서 properties 파일이나 yml 파일에 설정된 값을 thymeleaf에서 가져오는 방법을 알아보겠습니다. 우선 환경설정 파일에 저장된 값을 가져올 때는 아래와 같이 사용합니다. ${@environment.getProperty('properties.key')} 그리고 환경 변수 값을 가져오기 위해선 아래의 taglib을 추가하셔야 합니다. 예를들어 카카오지도의 키를 properties active에 따라 다르게 하기 위해선 아래와 같이 설정합니다. thymeleaf에서 사용하기 application.yml spring: profiles: active: dev . . . spring: config:.. Programing/JavaScript 2022. 9. 28. gradle project 배포 시 compiler error 해결 방법 gradle project 배포 시 compiler error 해결 방법 gradle 프로젝트 배포 시 Gradle tasks에서 compile 에러가 발생하는 경우가 있습니다. 에러 코드 전체 에러 코드는 아래의 '더보기'를 클릭하세요! 더보기 org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':compileJava'. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:147) at org.gradle.internal.Try$Failure.ifSucce.. Programing/Springboot 2022. 9. 26. 카카오 지도 키 발급 방법 2022.08 카카오 지도 키 발급 방법 2022.08 카카오 지도 키를 발급하는 방법을 알아보겠습니다. 아래의 링크로 이동해주세요! Link : https://apis.map.kakao.com/ 위와 같은 화면이 나타나면 용도에 맞는 종류를 선택합니다. (web) 화면이 이동되면 좌측 하단에 열쇠모양 아이콘을 클릭하세요! (마우스 오버 시 '키 발급' 표출) 로그인 페이지로 이동되면 로그인을 진행해주세요. 로그인 후 위 화면이 나오면 '시작하기'를 클릭하세요. 화면이 이동되면 애플리케이션 추가하기를 클릭해주세요! 앱 이름과 사업자명을 입력 후 '저장' 버튼을 클릭 합니다. 앱이 추가되면 하단에 추가된 앱을 클릭하세요! 화면이 이동되면 왼쪽 메뉴에서 플랫폼을 선택하세요. 사용할 용도에 맞는 플랫폼 등록 버튼을 클릭합니.. 알짜정보 2022. 8. 23. Spring lombok @RequiredArgsConstructor Spring lombok @RequiredArgsConstructor @RequiredArgsConstructor 은 lombok 에서 제공하는 annotation입니다. 이 annotation을 추가하게 되면 클래스의 final 이나 @NonNull인 필드값을 파라미터로 받는 생성자를 자동으로 만들어 줍니다. 예를들어 아래와 같이 User 라는 클래스가 있을 때 클래스 변수를 초기화하지 않고 final로 설정하면 반드시 생성자가 필요하게됩니다. (Spring 에서는 getter/setter 보다는 생성자 주입 방식을 권장합니다.) public class User { private final String userId; private final String userName; @NonNull private .. Programing/Springboot 2022. 6. 28. 이전 1 2 3 4 5 6 7 8 ··· 47 다음 💲 추천 글 반응형