전체 글(363)
-
JPA 영속성 관리 - persistence context(영속성컨텍스트)
JPA 영속성 관리 - persistence context(영속성컨텍스트)JPA가 제공하는 기능은 크게 엔티티와 테이블을 매핑하는 설계부분과 매핑한 엔티티를 실제 사용하는 부분으로 나눌 수 있다. 엔티티 매니저 팩토리와 엔티티 매니저EntityManager는 엔티티를 저장하고, 수정하고, 삭제하고, 조회하는 등 엔티티와 관련된 모든 일을 처리한다. 이름 그대로 엔티티를 관리하는 관리자다. 개발자 입장에서 엔티티 매니저는 엔티티를 저장하는 가상의 데이터베이스로 생각하면 될 듯 싶다. 그러면 엔티티 매니저 팩토리란 무엇인가? 바로 이 엔티티 매니저를 생성해주는 공장역할을 하는 객체이다. 보통 엔티티 매니저 팩토리는 생성비용이 크게 때문에 하나만 생성해서 모든 스레드가 공유할 수 있도록 설계되었고, 엔티티 매..
2019.01.15 -
객체지향 design pattern - strategy pattern 예제
https://tourspace.tistory.com/3?category=788398 위의 포스트된 글 일부에 스트레티지 패턴이 설명되어있으며, 예제코드도 나와있음.
2019.01.04 -
java - synchronized 란? 사용법?
java - synchronized 란? 사용법? 멀티스레드를 잘 사용하면 프로그램적으로 좋은 성능을 낼 수 있지만, 멀티스레드 환경에서 반드시 고려해야할 점인 스레드간 동기화라는 문제는 꼭 해결해야합니다. 예를 들어 스레드간 서로 공유하고 수정할 수 있는 data가 있는데 스레드간 동기화가 되지 않은 상태에서 멀티스레드 프로그램을 돌리면, data의 안정성과 신뢰성을 보장할 수 없습니다. 따라서 data의 thread-safe 를 하기 위해 자바에서는 synchronized 키워드를 제공해 스레드간 동기화를 시켜 data의 thread-safe를 가능케합니다. 자바에서 지원하느 Synchronized 키워드는 여러개의 스레드가 한개의 자원을 사용하고자 할 때,현재 데이터를 사용하고 있는 해당 스레드를 ..
2019.01.04 -
Lucene library를 이용한 간단한 색인/검색(루씬 라이브러리이용)
Lucene library를 이용한 간단한 색인/검색(루씬 라이브러리이용) 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106package com.lucene.study; import java.io.File;import java.io.FileFilter;import java.io.FileNotFoundException;import java.io.FileReader;import java..
2019.01.03 -
Zookeeper란?
Zookeeper란?,분산코디네이터 분산 처리 환경에서 필수로 언급되는 ZooKeeper란 무엇일까? 한 마디로 정의하면 "분산 처리 환경에서 사용 가능한 데이터 저장소"라고 말할 수 있겠다. 기능은 매우 단순하지만 분산 서버 환경에서는 활용 분야가 넓다. 예를 들어 분산 서버 간의 정보 공유, 서버 투입/제거 시 이벤트 처리, 서버 모니터링, 시스템 관리, 분산 락 처리, 장애 상황 판단 등 다양한 분야에서 활용할 수 있다.'어떻게 다양한 활용이 가능할까?'라는 의문을 해결하기 위해서 기능에 대해서 한 마디로 설명하면 다음과 같이 설명할 수 있다.ZooKeeper는 데이터를 디렉터리 구조로 저장하고, 데이터가 변경되면 클라이언트에게 어떤 노드가 변경됐는지 콜백을 통해서 알려준다. 데이터를 저장할 때 해..
2018.12.31 -
웹 취약성 검사 대비하기 !
이번 프로젝트에서 웹 취약성 검사에 나왔던 이슈관련 정리입니다. 1.Content-Security-Policy ->간단하게 페이지에서 사용하는 모든 자원에 대한 제한을 거는 설정입니다. 즉, XSS관련 공격을 막아줍니다.2.X-Content-Type-Option ->MIME을 무시하지 않게 제한합니다. 즉, mime기반 공격을 막아줍니다.(반드시 정해진 mime type으로만 화면을 렌더링하게함)3.X-XSS-Protection ->XSS 공격을 막아줍니다. 출처:http://cyberx.tistory.com/171 ->개략적인 웹 취약성을 방지해주는 헤더들의 설명이 들어간 블로그. 검사에서 나왔던 요소들이었습니다. 그래서 이러한 헤더 설정을 위하여 Apache의 httpd.conf 파일에 정의했습니다...
2018.10.26