본문 바로가기

vscode34

Netty Pipeline 및 Codec 활용(2) 앞에서 말했던 pipeline을 좀더 조작해보자 여기서 해볼꺼는 ByteBuf 로 받는거를 String으로 변환하는 Codec을 추가해서 귀찮은 형변환을 간단하게 해보고 엔터키가 오면 그걸 잘라서 처리해보고자 한다. 데이터를 받을때 ByteBuf로 기본으로 받다보니 변환해서 사용해야했다 우선 CodeSampleHandler.java의 channelRead 코드를 보면 Object msg -> ByteBuf -> String으로 변환한 뒤 사용했다. @Override public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { String strRecv = ((ByteBuf) msg).toString(CharsetUtil.. 2022. 1. 7.
slf4j 와 log4j 2 연동 앞에서 했던 slf4j 와 logback 연동도 있는데 간단히 소스코드 수정 없이 log4j 2 와 연동하는법도 정리해보려 한다. maven이나 gradle을 쓰면 되는데 이해하는데 구찮음. (언젠간 해야겠지...) 2021.12.28 - [프로그래밍/slf4j 사용하기] - slf4j 와 logback연동 slf4j 와 logback연동 java에서 다양한 log framework이 있다. 요즘은 maven이나 gradle등으로 설정하면 다 되는데 생각보다 standalone으로 셋팅한는 법이 없어 정리해보려 한다. 그중에 logback 과 slf4j 연동을 한번 해보려 한다 sl flowx.tistory.com slf4j 사이트로 가보자 연동하려는게 log4j2 임으로 log4j2 사이트로 가보자 s.. 2022. 1. 7.
02. EchoServer 응답값 바꿔보기 여기서는 첫 손님이 들어왔을때 환영인사와 손님이 말할때 다시 말해주는 부분을 추가해 보려 한다 - 접속시 환영 메시지를 추가해보자 - Echo 응답 시 응답메시지를 바꿔서 보내보겠다. ByteBuf로 전달되는 메시지를 Unpooled 함수를 사용해서 한번 조작해보자. Unpooled 와 Pooled 두가지가 있는데, 성능상으로는 Pooled 가 더 좋다고 한다. 1. 문 열고 들어왔을때 환영 메시지 고객이 문 열고 들어왔을때 아래 처럼 이벤트가 발생한다. 여기서는 channelActive 함수에다가 추가를 해보겠다. [main] INFO EchServer - 편의점 여는 중 .. [main] INFO EchServer - 편의점 열었음 .. [nioEventLoopGroup-3-1] INFO EchSer.. 2022. 1. 7.
Netty Decoder with VSCode (2) 나만의 Decoder를 만들어 보자 VS Code 프로젝트 생성 VS Code에서 cmd+shift+p 누르고 Java Project 생성 입력창에 java라고 입력하면 Create Java Project 선택 나중에 gradle이나 maven을 해야겠지만 셋팅 귀찮음. 걍 빌드툴없이 프로젝트 생성하자. ( 필요한 파일들은 한땀한땀 옮겨야 한다.) 저장할 폴더를 선택하고 프로젝트명을 생성한 뒤 필요한 파일을 옮기자 JUnit, Log4J2 with Slf4j(설정파일포함-간단한거 가져옴), Netty를 가져오자 어떤걸 만들어볼까? 예제샘플에 많이 나오는 숫자를 보내면 절대값으로 바꿔주는걸 만들어보자. 첫번째. LoggingHandler를 달고, 두번째. Decoder내에서 ByteBuf를 받아서 Inte.. 2022. 1. 7.