전체 글

깊이 있게 공부하자
레거시 자체 프레임워크에서 동적 쿼리 리팩토링 해보기 담당하고 있는 사이트의 관리자페이지 수정사항 요청인데 기록해두고 공유하면 좋을 것 같아서 써보려고 합니다. java1.8, oracle11, 자체프레임워크를 사용중입니다. 실무내용이라 보안상 테이블구조나 전체쿼리는 공개하지 않습니다. 그리고 최대한 다른곳에 영향이 없게끔 큰 구조를 변경 하지않고 요구사항을 충족하는게 목표입니다. 상황설명 ??? : 주문번호를 전부 적어야되서 불편해요 -> 419495-00012, 419495-00013, 419495-00014 전체 입력해야됨 나 : 그러네요 저런식이면 주문번호 필터기능을 사용을 안하고 정렬만 눌러서 사용하겠네요 -> 419495 만 입력했을때 해당 주문번호의 서브주문이 같이 검색되게 처리해야겠따! -..
위 스크린샷처럼 프로젝트 구조를 나열한 것을 본 적 있으신가요? 어떻게 하는지 알려드리겠습니다 프로젝트의 디렉토리 구조를 빠르게 파악하는 것은 개발 과정에서 매우 중요합니다. Mac 사용자들은 Homebrew, 간단히 brew라 불리는 패키지 관리자를 사용하여 tree 명령어를 손쉽게 설치할 수 있습니다. 이 글에서는 tree 명령어의 설치부터 다양한 옵션을 사용하는 방법까지 상세히 안내하겠습니다. 1. brew 설치 아래는 brew 공식 사이트 입니다 https://brew.sh/ko/ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 입력하면 macbook 비밀번호 입력칸이 나오고..
HTTP 프로토콜은 많이 들어보셨을텐데, AJP프로토콜은 들어보셨나요? 아파치랑 톰캣이랑 연동하는 통신방식입니다. 요즘은 Nginx를 http통신을하여 리버스프록시 형태를 주로 가져가죠. 포워드프록시, 리버스프록시는 관련 글을 포스팅 해보도록 하겠습니다. 하지만 프로젝트에서 apache를 채택했다면 속도면에서 우월한 바이너리 형식의 통신방식인 AJP(Apache JServ Protocol) 를 주로 택할겁니다. 이 글에서는 apache와 tomcat의 연동방식에 대해서 알아볼겁니다 물론 HTTP 프로토콜을 사용 할 수도 있으니 같이 소개해보도록 할게요! AJP와 HTTP AJP와 HTTP 프로토콜의 기본 개념부터 살펴보겠습니다. HTTP는 웹에서 데이터를 전송하기 위한 가장 기본적인 프로토콜로 웹 브라우..
· CS
멀티스레딩 환경에서 여러 스레드가 동시에 같은 리소스에 접근하려 할 때, 데이터의 일관성과 무결성을 유지하는 것이 중요합니다. 이를 위해 자바에서는 뮤텍스(Mutex)와 세마포어(Semaphore) 같은 동기화 메커니즘을 제공합니다. 이 글에서는 뮤텍스와 세마포어의 개념을 설명하고, 차이점을 자바 예제와 테스트코드로 함께 살펴보겠습니다. 뮤텍스(Mutex) 뮤텍스는 Mutual Exclusion(상호 배제)의 약자이다. 한 번에 하나의 스레드만이 특정 리소스나 코드 섹션에 접근할 수 있도록 합니다. 리소스에 접근하는 스레드가 뮤텍스를 1. '잠그고(lock)' 2. 작업을 한다 3. '해제(unlock)' 즉 한 시점에 단 하나의 스레드만이 리소스를 사용할 수 있게 됩니다. 자바에 ReentrantLoc..
devcomet
기피말고깊이