반응형

전체 글 194

[Feasibility Study] 타당성 조사란

타당성 조사(Feasibility Study)에 대한 블로그 글 타당성 조사란 무엇인가요? 타당성 조사는 새로운 프로젝트, 제품, 서비스 등을 시작하기 전에 그 실현 가능성과 경제적 타당성을 평가하는 중요한 과정입니다. 이 과정을 통해 프로젝트의 성공 가능성을 높이고, 실패 위험을 최소화할 수 있습니다. 타당성 조사의 주요 요소 시장 타당성: 시장의 수요, 경쟁 상황 분석을 통해 제품이나 서비스의 시장 내 성공 가능성을 평가합니다. 기술적 타당성: 프로젝트나 제품이 기술적으로 실행 가능한지를 평가합니다. 여기에는 필요한 기술, 자원, 전문 지식 등이 포함됩니다. 경제적 타당성: 비용과 예상 수익을 비교하여 프로젝트나 제품의 경제적 수익성을 분석합니다. 법적 및 규제적 타당성: 프로젝트나 제품이 관련 법률..

비즈니스 2024.01.30

[Spring] Security 6 버전 인메모리 사용자 설정 간단한 예제

권한 설정과 표현식 Spring Security 5에서는 **AuthenticationManagerBuilder**를 사용하여 메모리 인증을 설정할 수 있었지만, Spring Security 6에서는 몇 가지 변경이 있을 수 있습니다. 1. PassworEncoder 사용 필수 먼저, Spring Security 6에서는 비밀번호 암호화에 대한 설정이 강화되었으므로 **{noop}**을 사용하는 것이 더 이상 권장되지 않습니다. 대신에 비밀번호 인코더를 명시적으로 지정해야 합니다. 그래서 아래와 같이 PasswordEncoder를 빈으로 등록하는 소스코드를 먼저 작성합니다. @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswor..

Back-end/Spring 2024.01.30

[Swagger] Spring 3.0 이상 버전에서 스웨거 적용하는 방법

0. 기존 SpringFox로 설치할 경우 발생하는 문제 기존 방법대로 springfox 스웨거를 implementaion하면 에러가 발생합니다. 기존 방식 implementation 'io.springfox:springfox-swagger2:2.9.2' implementation 'io.springfox:springfox-swagger-ui:2.9.2' 기존 방식대로 했을 경우 아래와 같은 에러가 발생하는 것을 확인 할 수 있습니다. print 결과 Action: Correct the classpath of your application so that it contains compatible versions of the classes org.springframework.plugin.core.suppor..

Back-end/Spring 2024.01.29

[EC2] mysql 설치시 conflicting requests 발생 해결방법

0. 문제 상황 EC2: Amazon Linux 2023 환경에서 mysql을 설치하려고 하니 에러문구 Error: Problem: conflicting requests 이라는 문구와 함께 아래처럼 에러가 발생했습니다. 1. 해결방법 지원하지 않는 버전의 설치를 진행했기 때문입니다. 아래의 명령어로 다시 설치 진행해보시면 정상 진행됩니다. 해결방법 sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el9-1.noarch.rpm sudo dnf install mysql-community-server

Back-end 2024.01.29

[Spring] Access-Control-Allow-Origin header is present 해결방법

"Access-Control-Allow-Origin" 헤더가 브라우저에서 발생하는 보안 정책 중 하나입니다. 이 헤더는 웹 페이지가 다른 도메인에서 리소스를 요청할 때 CORS(Cross-Origin Resource Sharing) 정책을 적용하도록 브라우저에 지시합니다. 로컬 테스트 서버에서 이 에러가 발생한다면, 보통은 서버 측에서 CORS를 허용하지 않아서 발생합니다. 해결하기 위해서는 서버에서 CORS 정책을 설정해야 합니다. Spring Boot에서는 아래와 같은 방법들로 해결할 수 있습니다. Spring Boot에서 CORS를 허용하려면 다음과 같이 설정할 수 있습니다. application.yml 설정 @CrossOrigin 애노테이션 사용 1. application 설정 예를 들어, 모든 ..

Back-end/Spring 2024.01.27

[Spring] 시큐리티 Security Form Login 인증 기본 설정 (스프링 3.0 버전 이상, 시큐리티 6.0 버전 이상, WebSecurityConfigurerAdapter 대체)

websecurityconfigureradapter 대체되는 방식으로 form login을 사용하는 기본 예제를 알려드립니다. 스프링 3.0 이상 버전은 스프링 시큐리티 6.0 버전 이상만 사용가능하게 되면서, 기존의 방식으로는 사용불가능합니다. 스프링 3.0 버전 이상부터는 websecurityconfigureradapter deprecated 됨에 따라서, @Bean을 사용하고 SecurityFilterChain를 리턴하는 함수로 사용해야합니다. 해당 함수는 아래 예제들에서 자세히 설명드리겠습니다. 1. Form Login 인증 아래 예제를 통해서 어떻게 동작하는지 살펴보도록 하겠습니다. 1-1. formLogin 기본적인 내용 입력하기 @Bean public SecurityFilterChain fi..

Back-end/Spring 2024.01.10

[Spring] 시큐리티 Security 의존성 추가 방법

1. 의존성 추가 1-1. build.gradle에 의존성 추가 dependencies{ implementation 'org.springframework.boot:spring-boot-starter-security' } 가장 먼저 해야할 것은 의존성을 추가하는 것입니다. 의존성을 추가하고, 스프링을 실행하게 되면 아래와 같이 패스워드를 제공해주는 로그를 확인 할 수 있습니다. 1-2. 정상적으로 의존 됐는지 확인하는 방법 그리고 크롬으로 localhost:8080/ 을 접속해보면 아래와 같이 로그인 창으로 바로 접속되는 것을 확인 할 수 있습니다. id는 user, password는 위에서 공유된 내용을 입력하면 본인이 만든 api를 사용할 수 있습니다. 2. 사용자 정의 보안 기능 구현 2-1. app..

Back-end/Spring 2024.01.10

[Spring] mybatis에서 카멜케이스로 자동 변환 옵션(application.yml)

1 사용해야하는 이유 보통 디비에서는 스네이크 표기법 credit_limit 자바에서는 카멜케이스 표기법 creditLimit 이런식으로 자주 사용하게 되는데 Mybatis에서 아무런 설정을 하지 않으면, 아래 처럼 select 문에 alias를 사용해서 직접 매핑해줘야한다. select credit_limit as 'creaditLimit' from customer 하지만, 몇개 변수라면 상관없지만 무수히 많은 변수가 존재한다면 정말 귀찮은 일이다. 2 . 설정 방법 application.yml에서 옵션으로 쉽게 변경가능하다. mybatis: configuration: map-underscore-to-camel-case: true #db는 스네이트 표기법, dto는 카멜케이스 사용 시 다른 블로그에서는..

Back-end/Spring 2024.01.08

[mySql] 공식 샘플 데이터 (Example Database)

0. 필요성 안녕하세요. 사이드 프로젝트를 진행하다가 보면, 데이터들이 많이 필요합니다. 저는 주로 mySql로 사이드 프로젝트를 진행하는데요. 백엔드 사이드 프로젝트에서 데이터를 만드는 일이 쉬운일이 아닙니다. 엔터티간의 관계도 생각해야하고, 테이블을 생성하게 되면 데이터도 다 넣어야하고... 그럴 때는 mySql 공식 홈페이지에서 제공하는 Sample 데이터를 사용하면 매우 용이합니다. 1. mySql 샘플 데이터 링크 https://dev.mysql.com/doc/index-other.html MySQL :: Other MySQL Documentation Other MySQL Documentation This page provides additional documentation. There's ev..

SQL 2024.01.08

[Error] No serializer found for class 해결방법

0. 현상 cohttp://m.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class 아래 캡쳐로 내가 responsebody로 리턴할 클래스가 없다는 표현이 나오는 에러가 발생했다. 1. 원인 - Controller에서 @ResponseBody를 사용해서 json으로 리턴하는 방식으로 구현했는데, @ResponseBody에서 객체를 json으로 변환하려면 객체의 클래스에 Getter가 존재해야한다. - Setter만 필요해 보였던 클래스라서 Getter를 따로 입력하지 않았는데, 그게 문제가 된 것 같다. 2. 해결방법 2-1. @Getter 추가 - 일반적인 방법은 Getter를 추가하면 됩니다. ..

Back-end/Spring 2024.01.05
반응형