일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- paraller
- $emit()
- 커스텀 로그인
- 오라클 병렬처리
- 리덕스 공식문서
- EBS
- REDIS
- 컴포넌트 주도
- Express
- VUE
- .getClass()
- AWS
- exiting abnormally
- 리덕스
- quert
- 리액트
- 애그리거트
- 오라클
- 자바
- 도커빌드
- react
- ACCESS_REFUSED
- vue.js
- rabbitmq 에러
- 트리 회전
- Java Reflextion API
- redux
- forNmae()
- 자료구조
- 네임드 뷰
- Today
- Total
목록전체 글 (86)
개발정리
마운트 직후 라우터에서 params를 불러올때 undefined 가 불러지는 문제입니다. 해결 this.$router.currentRoute._value.params 를 사용하면 해결됩니다.
@GetMapping("/{count}") public ResponseEntity getItems(@PathVariable int count) { Page pages=itemService.getItems(count); List items=new ArrayList(); for(Item item:pages.getContent()){ ItemDTO itemDTO=ItemDTO.builder().id(item.getId()).content(item.getContent()).title(item.getTitle()) .price(item.getPrice()).place(item.getPlace()).build(); itemDTO.setPhotos(new ArrayList()); itemDTO.getPhotos()...
이때 까지는 항상 컴포넌트 마다 axios를 임포트 해와서 CRUD를 구현 해 왔다. 하지만 그때마다 요청의 헤더에 토큰을 주입해서 전달하기 여간 귀찮은 일이 아닙니다. 그래서 찾아보던중 axios의 인터셉터 설정을 하면 요청마다 일일이 토큰을 주입하지 않아도 된다는 것을 알게되었습니다. 해결 import { createApp } from 'vue' import router from './index.js' import App from './App.vue' import mitt from 'mitt'; import axios from 'axios'; axios.interceptors.request.use((config)=>{ const token = localStorage.getItem('token'); i..
스프링의 트랜잭션 지원 모델의 장점들 글로벌 트랜잭션 로컬 트랜잭션 스프링 프레임워크의 일관된 프로그래밍 모델 전통적으로,EE애플리케이션 개발자들은 두가지 트랜잭션 매니지먼트중 하나를 선택했어야 했습니다. 바로 글로벌 또는 로컬 트랜잭션 입니다.두가지 모두 심오한 제약조건이 있습니다. 다음에 오는 두가지 섹션에서 글로벌과 로컬에 대해 살펴봅시다. 글로벌 트랜잭션 글로벌 트랜잭션은 당신이 여러개의 트랜잭션 리소스들과 작업하도록 해줍니다. 전형적으로 관계형 데이터베이스와 메시지 큐 입니다. 애플리케이션 서버는 JTA를 통해 글로벌 트랜잭션을 관리합니다. 더욱이,JTA UserTransaction은 보통 JNDI에서 소스를 받아야 합니다.그 뜻은 당신은 JTA를 사용하기위해 JNDI를 사용해야 한다는 것 입니..
종합적인 트랜잭션 지원은 스프링 프레임워크를 사용하는 가장 강렬한 이유입니다. 스프링 프레임워크는 트랜잭션 매니지먼트를 위한 일관된 추상화를 제공합니다. 트랜잭션 매니지먼트는 다음과 같은 장점을 가집니다. 다른 트랜잭션 API 에 걸쳐 일관된 프로그래밍 모델(ex. JTA,JDBC,Hibernate,JPA) 선언적 트랜잭션 매니지먼트 지원 JTA와 같은 복잡한 트랜잭션 API보다 프로그래밍 방시의 간단한 API Spring의 data access abstraction과 훌륭한 통합 참조 https://docs.spring.io/spring-framework/reference/data-access/transaction.html

일단 한번 STOMP 엔드포인트가 드러나면 , 스프링 애플리케이션이 STOMP 브로커가 됩니다. 이장은 서버단의 메세지 흐름에 대해 설명합니다. spring-messaging 모듈은 메세지 애플리케이션을 위한 기본적인 기능을 제공합니다. 여기에서 메세지 애플리케이션은 스프링 통합 에서 비롯되었으며 나중에 스프링 프레임워크로 추출되어 통합되었습니다. 다음은 사용가능한 메세징 추상을 설명합니다. Message:메세지의 간단한 표현,헤더와 페이로드를 포함 MessageHandler:메세지를 다루기 위한 핸들러 MessageChannel:프로듀서와 컨슈머 사이의 느슨한 결합을 가능케 하는 메세지를 전달하는 채널 SubscribableChannel:MessageHandler 구독자가 있는 MessageChanne..

개요 STOMP는 본래 엔터프라이즈 메세지 브로커와 연결되는 스크립팅 언어를 위해 만들어졌습니다. 이것은 보통 사용되는 메세지 패턴의 작은 부분을 보내기 위해 디자인되었습니다. STOMP는 어떠한 신뢰성 있는 two-way 스트리밍 네트워크에 사용될 수 있습니다.(ex.TCP,웹 소켓) 비록, STOMP는 Text 지향 프로토콜이지만, 메세지 내용은 text와 바이너리 둘다 가능. STOMP는 프레임 기반 프로토콜입니다. (여기서 프레임은 HTTP에서 사용되는 프레임) 다음은 STOMP의 프레임 구조입니다. 클라이언트들은 SEND나 SUBSCRIBE 명령을 사용할 수 있습니다. destination 헤더에는 메세지가 무엇에 대한 것인지 와 누가받을 것인지가 묘사되어 있습니다. 이것은 간단한 pub/sub..

웹소켓 -웹 소켓 프로토콜은 클라이언트와 서버 사이의 양방향,전이중 통신을 설정하는 표준화된 방식을 제공합니다. -이것은 HTTP와 다른 TCP프로토콜 입니다. 그러나 80번과 443번 포트 번호를 사용하며 HTTP 위에서 동작하도록 디자인 되었습니다. -웹소켓은 웹소켓 프로토콜로 바꾸기 위해서 HTTP upgrade요청과 함께 시작 됩니다. 1번:upgrade헤더 2번:upgrade 커넥션 사용 보통의 200status 코드 대신,웹소켓을 사용하는 서버는 다음과 같은 output을 리턴 합니다. 1번:프로토콜 스위치 성공적인 핸드쉐이크 이후,http upgrade 요청 아래에서 메세지를 주고받기 위한 tcp socket이 열려있습니다. HTTP VS WebSocket 비록 웹소켓이 http와 호환이 되..