일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 서버운영
- spring reactive
- reactor core
- Spring Batch
- Spring Framework
- ipTIME
- 공유기 서버
- reactive
- 웹 스터디
- 웹앱
- 웹 커리큘럼
- reactor
- Today
- Total
목록분류 전체보기 (267)
Hello World
사우가 올린 공식 개발 레퍼런스인데 퀄리티가 괜찮아서 링크 공유합니다. 스프링 배치 4.2 레퍼런스 원문 : https://docs.spring.io/spring-batch/docs/4.2.x/reference/html/index-single.html 스프링 웹 리액티브 스택 5.2.6.RELEASE 레퍼런스 원문 : https://docs.spring.io/spring/docs/current/spring-framework-reference/web-reactive.html 리액터 코어 3.3.7.RELEASE 레퍼런스 원문 : https://projectreactor.io/docs/core/release/reference/
스프링 MVC에서 지원하는 @Valid를 통한 데이터 검증은 정말 놀랍다. 특히 브라우저에서 클라이언트가 입력자료를 넘겨줄 때 이 자료를 검증할 수 있는 모델을 매우 손쉽게 만들 수 있다는 점이다. @Valid는 스프링이 만든 기술은 아니며 최근 JSR-303이란 이름으로 채택된 서블릿 2.3 표준스펙 중 하나인데 매번 그렇듯 스프링은 이 새로운 표준을 확장하고 쉽게 사용할 수 있도록 스프링만의 방식으로 재편성해주었다. @Valid가 간소화 될 수 있었던 배경을 이해하고 응용할 수 있게끔 학습하는게 중요하겠지만 먼저 @Valid가 얼마나 대단한지 보여주기 위해 맛보기로 간단한 @Valid 예제를 살펴보고자 한다. 먼저 자바빈 객체를 하나 만들어보자. public class User { @Size(min=..
많이 들어봤고 실제로 업무를 하면서도 많이 사용하는데 그에 비해 이해도는 많이 떨어지는 것중 하나가 세션, 쿠키 인것같다. (적어도 나에게는..) 실제로 이번에 회사에서 발생한 이슈의 원인이 세션 데이터가 지워저서 발생한 이슈 였는데, 이 원인을 다른사람들과 얘기하다보니, 이해도가 부족하여 제대로된 원인분석이 되지 않는것 같았다.그래서 이번기회에 세션과 쿠키에 대해 정리를 한번 해보려고 한다.세션과 쿠키필요성세션과 쿠키에 대해 이야기 하기 전에 HTTP의 특성을 몇가지 살펴보자.HTTP는 요청과 응답을 주고받을때 지속적으로 연결되어 있지 않고, 요청과 응답을 주고받는 순간에만 잠깐 연결되고 끊어진다. 이로인해서 서버와 클라이언트는 현재의 Request에서만 서로를 인지할 수 있다. 이런 HTTP의 특성으..
최근 개발하고 있는 서비스는 API 서버들은 특정 기능만을 제공하고 화면에서의 기능은 대부분 React를 이용하여 Client Side에서 처리하고 있습니다. 이런 구성을 마이크로서비스 아키텍처라고 부를 수도 있을텐데 이번 글의 주제는 마이크로 서비스 아키텍처에 대한 이야기는 아니고 이런 구성시에 API 서버쪽 설정과 관련한 몇가지 삽질한 것에 대한 내용입니다. 웹이나 API 서버 개발을 계속 해오신 분들은 잘 아는 내용이겠지만 저처럼 간만에 하시는 분들을 위한 글입니다.[그림] 시스템 기본 구성위 그림의 시스템 구성에 대해서는 나중에 다른 글로 소개하도록 하겠습니다.CORS 이슈위와 같은 시스템 구성에서 첫번째 만나는 문제는 HTTP를 이용하여 API 서버로 GET, POST와 같은 요청을 보낼때 그 ..
안내본 문서는 블로그의 운영자인 본인이 Stackoverflow에 올린 답변을 정리한 글입니다. Stackoverflow에 올린 답변 중 한국에 있는 다른 개발자들에게도 도움이 될만한 Q&A를 보기 쉽게 정리했습니다. 가능한 경우는 SQLFiddle에 샘플 데이터도 같이 올려서 실습도 해 볼 수 있도록 하였습니다. 또한 전체 Q&A를 묶어서 PDF 파일로도 배포하고 있습니다. 방문해 주시는 많은 분들에게 도움이 되었으면 좋겠습니다.Stackoverflow URLhttp://stackoverflow.com/questions/20342518/on-duplicate-key-update-value-inserting-same-values-twice/20342598질문다음과 같이 INSERT 구문을 사용 중이다.I..
OverviewMySQL에서 전체 데이터를 Scan 하는 쿼리를 질의하여 서비스에 큰 영향이 발생할 수 있습니다.InnoDB 스토리지 엔진의 기본 Isolation Level이 REPEATABLE-READ이기 때문에 발생하는 현상인데, 이것은 세션 변수 일부를 변경하여 문제를 사전에 해결할 수 있습니다.얼마 전 이와 비슷한 장애가 발생하여 원인 분석 및 해결 방안을 포스팅합니다.SymptomsTransaction Isolation Level이 REPEATABLE-READ(MySQL Default) 상태에서 Insert into Select 혹은 Create Table As Select 로 전체 테이블 참조 쿼리 실행 시 참조 테이블에 데이터 변경 작업이 “대기” 상태에 빠지는 현상이 있습니다.mysql>..
1. OSI 7 LayerOSI(Open System Interconnection Reference Model)은 국제표준화기구 - ISO -에서 개발한 모델로 컴퓨터 네트워크 소프트웨어의 개발을 돕기 위해서 7계층으로 나누어 정의한 명세서다. 보통 OSI 7 계층이라고 부른다.컴퓨터 네트워크는 아래로는 물리/전자기 적인 알고리즘과 이들을 이용해서 통신을 하기 위한 물리적인 장비들 그리고 위로는, 컴퓨터 운영체제와 수많은 네트워크 소프트웨어들이 놓이는 전지구적 규모의 광대하고 복잡한 시스템이다. 인터넷 초창기인 ARPNET시절이라면 전체 네트워크 시스템을 이해하는 사람이 있었을 테지만, 지금은 전체 시스템을 이해하고 응용 소프트웨어를 개발할 수 있는 사람은 없다고 장담할 수 있다.이런 복잡 거대한 시스템..
1. Deep copy (깊은 복사)- 같은 내용의 새로운 객체를 생성, 원본의 변화에 복사본이 영향을 받지 않는다. 2. Shallow copy(얕은 복사)- 참조변수만 복사, 원본의 변화에 복사본이 영향을 받는다.?123456789101112131415161718192021222324252627282930313233343536373839404142434445464748import java.util.Arrays; public class CopyTest { public static void main(String[] args) { int[] data = { 0, 1, 2, 3, 4, 5 }; int[] sCopy = null; int[] dCopy = null; sCopy = shallowCopy(data..
자바는 Static block -> Instance block -> 생성자 순으로 초기화가 된다. 먼저 아래와 같은 코드를 실행해 보자. public class TestClass { public static void main (String[] args) { System.out.println("---------------------------"); Parent father = new Parent("father"); System.out.println("---------------------------"); }} class Parent { public String myName = "Parent"; static { System.out.println ("This is first message of Parent c..