목록분류 전체보기 (150)
forDevLife

그간 Tistory 블로그를 정리하며 비뚤비뚤한 테마가 마음에 들지 않았는데, 2022년을 기점으로 새로운 스킨을 적용하고 기술 블로그 작성의 방향을 바꿔보고자 회고록 및 계획을 작성해보았다. 먼저 2021년의 큼지막한 일들은 다음과 같다. 2021.01 ~ 04 : 휴직 전 휴직을 마음 먹고 하나 씩 주변 환경 정리를 시작했다. 먼저 회사에 묶여있던 대출을 없애기 위해 2년동안 살던 전세집을 월세집으로 이사했다. 휴직 도중 이직의 기회가 오게 되면 살고있는 집의 대출금을 바로 갚아야하기 때문에 어쩔수 없이 한 선택이었지만, 외부 은행 대출을 알아보고 전세로 살 걸 그랬다는 후회가 든다. (결국 21년 12월 다시 전세를 알아보고 이사를 완료했다.🤣) 휴직을 마음먹게 된 후 퇴근하고 집에서는 매일 자바 ..

1. 커밋한다(commit) 게임의 세이브 포인트와 동일하다. 언제든지 저장 시점으로 돌아갈 수 있다. 커밋을 하려면 저장을 원하는 파일을 묶어서 커밋 명령을 수행하면 된다. 2. 스테이지에 올린다(add) 앞서 커밋하기 전에 저장을 원하는 파일을 묶는 일을 해야한다고 했다. 이 작업을 스테이지에 파일을 올린다 라고 한다. 3. gitHub에 업로드(push) 커밋을 하면, 현재 작업 내용의 세이브 데이터가 내 컴퓨터에 저장된다. 이를 원격 저장소에 올리는 것을 push라고 한다. 소스 트리 사용 강의에서 소스 트리를 사용해서, 편하게 사용해보고자 예전에 깔았던걸 써보는 도중.. mac에서 login 관련 bug가 있음 로그인이 정상 동작 안하고, CPU 사용량이 엄청 증가한다. 아직 해결 안된 것 같다..

목표 change_remote_1(내가 작업한 프로젝트)를 change_remote_2(초기화 된 프로젝트 - 기본 파일만 존재)로 원격 저장소를 변경! change_remote_1의 기존 커밋에 change_remote_2의 커밋을 올려서 통합하기 현재 상태 remote_1 : first ~ third commit 존재 remote_2 : first commit 존재 동일하게 README.md 파일 존재 1. remote_1와 연결되어 있는 로컬저장소 연결 끊기 & 재연결 테스트 git remote remove origin : local과 remote 저장소 연결 끊기 git remote add origin ~ : ~ remote 저장소와 연결하기 재연결 하게되면 이후 push할 때 최초 1회 git ..

사용 Entity가 아닌 단순한 형태의 객체 집합을 정의하고 관리하는 방법이다. One to Many 관계를 다룬다. @Embeddable 객체와 관계를 정의하여 사용할 수 있다.(아래 예시) @Entity를 대상으로는 사용 불가능하다. 해당 데이터는 부모와 함께 저장되고 삭제된다. 아래의 경우, OrderOption은 OrderOptionGroup과 항상 함께 관리된다는 의미이다. @Entity @Table(name="ORDER_OPTION_GROUPS") @Getter public class OrderOptionGroup { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name="ORD..
Call back? Callee(피호출자 - listner)에서 Caller(호출자)의 메서드를 역으로 호출하는 동작을 의미 다른 함수에 인수로 전달되는 함수를 call back 메서드라고 하며, 특정 이벤트 이후 실행된다. call back은 called at the back으로 해석할 수도 있다. 즉 back(이후)에서 호출되는 메서드라고 이해하자. 예시로 TestCallBack(Caller)와 Callee를 만들어보자. Caller에서 Callee의 메서드를 호출하면, Callee 내부의 메서드에서 다시 Caller의 메서드를 역으로 호출하게 될 것이다. 1. Callee 선언 import java.util.Scanner; public class Callee { private String msg; ..
Effective Java 학습 중, Recursive Type Bound가 class에 적용된 사례가 나오는데 이해가 잘 가지 않아서 알아봤다. public abstract class Pizza { public enum Topping {HAM, MUSHROOM, ONION, PEPPER, SAUSAGE} final Set toppings; // 재귀적 타입 한정 - 모든 타입 T는 자기 자신? 자기 자신이 들어간 표현식을 사용하여, 타입 매개변수의 허용범위를 한정한다. // 즉, T는 자신을 포함하는 Builder에 의해 한정된다. abstract static class Builder { EnumSet toppings = EnumSet.noneOf(Topping.class); // 빈 Topping c..

10분 테코톡 + 추가 정리입니다. 아파치 웹서버는 mod_proxy라는 모듈에서 foward / reverse proxy 두 가지 기능을 제공하며, nginx는 필요한 기능만 제공하는 고성능 웹 서버에 맞게 reverse proxy만 제공한다. 이 차이에 대해서 알아보자. 1. Proxy Server 대신 처리하는 서버 Proxy는 클라이언트, 서버 사이에 있는 중계 서버로, 통신을 대리 수행한다. 캐시 / 보안 / 트래픽 분산 등의 장점을 갖는다. Forward / Reverse Proxy가 있다. 2. Forward Proxy 일반적인 Proxy Client와 Internet 사이에 존재한다. 회사 내부 인트라넷에서 인터넷 상에 있는 서버에 요청할 때, 먼저 Forward Proxy 서버를 호출하게..

우아한 Tech의 10분 테크톡을 보고 정리한 내용입니다. 출처 : https://www.youtube.com/watch?v=rvss-_t6gzg 웹 소켓은 언제 사용될까? 실시간 성을 보장하는 서비스 게임, 채팅, 실시간 주식 거래 사이트에서 사용된다. 전 이중성 통신 웹 소켓 사용 없이는, 웹 게임 또는 채팅 등을 할 때 계속 새로고침을 해줘서 상대방의 정보를 받아와야 한다. HTTP vs 웹 소켓 HTTP에서도 실시간성을 보장하는 기법이 존재 Polling, Long Polling, Streaming 등을 이용해서 서버와의 연결을 끊지 않고 계속 데이터를 주고 받을 수 있다. HTTP 비 연결성 매번 연결 맺고 끊는 과정에서 비용 발생 (HandShake) (요청 - 응답)이 한 쌍을 이루는 구조 ..

Error BigSur -> Monterey 업데이트 후, IntelliJ에서 커밋이 안되길래 확인해보니 다음과 같은 오류가 발생했다. xcode cli 문제로, 버전이 업데이트 되어 라이센스에 재 동의를 해야한다는 오류이다. https://apple.stackexchange.com/questions/254380/why-am-i-getting-an-invalid-active-developer-path-when-attempting-to-use-git-a 해결 xcode-select --install
주요 부분 private static final String OPERATION_REGULAR = "^[+\\-*/\\d]*$"; // private static final String OPERATION_REGULAR = "^[+\\-*/[0-9]]*$"; private static final String OPER_REGULAR = "[+\\-*/]"; private static final String NUMBER_REGULAR = "^[0-9]*$"; public static final Pattern validOperationPattern = Pattern.compile(OPERATION_REGULAR); Operation_regular 하나로 사칙 연산자(+, -, /, *) 및 숫..