Web
-
스프링부트 @Component 와 @Configuration , @BeanWeb/Backend 2021. 1. 31. 21:43
Bean 이란 - 애플리케이션을 이루는 핵심 객체이다. 스프링 IoC 컨테이너에 의해 인스턴스화, 관리, 생성 된다. @ComponentScan이 서버 실행시 @Component 어노테이션 및 streotype(@Controller, @Servicie, @Repository)이 지정된 클래스들을 찾아 Bean으로 등록해주는 역할을 한다. @Controller, @Servicie, @Repository이나 @Configuration이나 내부적으로 @Component로 이루어져 있는데, 그렇다면 각각 언제 어떻게 사용할까? @Controller, @Servicie, @Repository 는 개발자가 직접 개발한 개발한 클래스를 빈으로 등록하고자 할 경우에 사용된다. @Configuration 과 @Bean의..
-
Springboot - ApplicationTest에서의 에러 // test 건너 뛰기Web/Backend 2020. 11. 4. 22:46
Found multiple occurrences of org.json.JSONObject on the class path: jar:file:/C:/Users/multicampus/.m2/repository/com/vaadin/external/google/android-json/0.0.20131108.vaadin1/android-json-0.0.20131108.vaadin1.jar!/org/json/JSONObject.class jar:file:/C:/Users/multicampus/.m2/repository/org/json/json/20200518/json-20200518.jar!/org/json/JSONObject.class 메이븐 빌드하는 과정에서 난 에러 pom.xml 에서 scope test부분에..
-
JWT ( JSON WEB TOKEN ) 란 ??Web/Backend 2020. 10. 3. 16:58
개념 JWT - Json 포맷을 이용하여 사용자에 대한 속성을 저장하는 Claim 기반의 Web Token 자가수용적(self-contained) - 필요한 모든 정보를 자체적으로 지니고 있다. 웹서버의 경우 http 헤더에 넣어서 전달할 수도, url의 파라미터로 전달할 수도 있다. -- 참고 -- Claim 기반 = 사용자 정보나 데이터 속성 등을 의미. 클레임 토큰 = 토큰 자체가 저런 정보를 가지고 있는 방식인데, JWT는 이 Claim을 JSON을 이용해서 정의 합니다. 용도 회원 인증: JWT 를 사용하는 가장 흔한 시나리오 입니다. 유저가 로그인을 하면, 서버는 유저의 정보에 기반한 토큰을 발급하여 유저에게 전달해줍니다. 그 후, 유저가 서버에 요청을 할 때 마다 JWT를 포함하여 전달합니다..
-
nginx (1) 특징 공부하기Web/Backend 2020. 10. 1. 02:50
nginx - 뜨고있는 apache와 같은 웹 서버 프로그램 " 더 적은자원으로 더 빠른 서비스 " - apache 보다 동작이 단순하고 동시접속처리에 특화되어있다. - 2018년 5월 기준, nginx는 23%, Apache는 25% Apache는 하락세이고 nginx 상승세라고 한다. 역할 1. 정적파일을 처리하는 HTTP 서버로서의 역할 2. Reverse proxy server로서의 역할 "로드밸런싱과 보안" 클라이언트의 요청을 각 Application server에 배분해준다. 클라이언트에서는 80포트로만 요청이 들어오는데, 이 들어오는 요청을 8080, 8081 등 여러 Application server로 보내준다. 일반적으로 리버스 프록시는 각 application server에 요청을 배분..
-
스칼라 서브쿼리, 연관 서브쿼리 동작원리 및 실행순서Web/Backend 2020. 8. 10. 01:04
join을 쓸때도 많지만 join보다 서브쿼리를 사용해야 할때가 있다. 그 중 select절에서 서브쿼리의 실행순서가 궁금해져서 포스팅하게 되었다. 먼저 서브쿼리의 명칭은 다음과 같다. select 절에 있는 서브쿼리 - 스칼라 서브쿼리 from 절에 있는 서브쿼리 - 인라인뷰 where 절에 있는 서브쿼리 - 서브쿼리 where 절에 있는 서브쿼리는 당연히 메인쿼리가 실행되기전에 수행된다. 반면 스칼라 서브쿼리의 동작 원리는 다음과 같다. 1. 메인쿼리를 수행한 후 스칼라 서브쿼리에 필요한 값을 제공한다. 2. 스칼라 서브쿼리를 수행하기 위해 필요한 데이터가 들어있는 블록을 메모리로 로딩한다. 3. 메인쿼리에서 주어진 조건을 가지고 필요한 값을 찾는다. 그리고 입력값(main query에서 주어진 값)..
-
Vue 라이프 사이클Web/Frontend 2020. 8. 4. 23:56
Vue도 일종의 인스턴스이기 때문에 Lifecycle(생명주기)를 갖는다. Vue의 인스턴스가 생성되고 사라지기까지 사용자가 그 과정의 단계에서 로직을 수행할 수 있는 Life Cycle Hook을 제공한다. Hook의 종류는 다음과 같다. beforeCreate created beforeMount mounted beforeUpdate updated beforeDestroy destroyed (이해하기전 참고 : routes는 경로와 컴포넌트으로 이뤄진 컬렉션이다. 실제 이 맵을 보고 라우터가 경로에 따라 그에 맞는 컴포넌트를 렌더링한다.) 1. beforeCreate - vue 인스턴스가 생성된 직후 호출되는 hook data, methods가 정의되어 있지 않고, DOM과 같은 화면요소에도 접근할 수..
-
JPA 사용법 차근차근 알아보기(1) - Entity, saveWeb/Backend 2020. 7. 28. 21:03
엔티티 매핑 @Entitiy - JPA를 사용해 테이블과 매핑할 클래스로 지정하는 어노테이션. - 기본 생성자가 반드시 필요. @ Table - 엔티티와 매핑할 테이블 지정하는 어노테이션. - name : 테이블명 지정할 때 사용. (default는 엔티티명 , Table(name="테이블명")와 같은 형식) 기본키 매핑 기본키를 할당하는 방법으로는 두가지가 있습니다. - 직접할당 : @Id (@Id로 지정한 id 필드에 Set메소드로 직접 할당) - 자동생성 : @GeneratedValue을 추가적으로 작성. 데이터베이스가 자동으로 할당해주는 방법. 4가지 전략이 존재 IDENTITY : 기본 키 생성을 데이터베이스에 위임하는 방법 (데이터베이스에 의존적) - 주로 MySQL, PostgresSQL, ..
-
Vuex의 Store 이해하고 사용해보기 (로그인 토큰 저장)Web/Frontend 2020. 7. 24. 13:50
vuex - vue 전역에서 사용할 전역변수를 관리해주는 라이브러리 store - 전역변수 state - 값을 저장하는 객체 getters - state의 값을 반환하는 함수, computed 속성과 매칭되는 기술요소 actions - mutations 에 값을 보내는 함수 mutations - setter , state의 값을 변경하는 함수 computed 속성이란. 기본적으로 getter역할 , 캐싱된 데이터가 있다면 즉시 반환. filter(), reverse() 등의 추가적인 계산 로직이 들어갈 때 장점이 발휘된다. (watch와의 차이점 : watch 속성은 감시할 데이터를 지정하고 그 데이터가 바뀌면 이런 함수를 실행하라는 방식 반면 computed는 호출할때 실행) import { mapAc..