본문 바로가기

728x90

프로그래밍 회고록

(42)
Java와 java_websocket library를 이용한 WebSocket Clinet쪽 통신방법 # 서론 우리쪽 서버가 클라이언트가 되는상황에서 웹소켓 통신을 시도해 보았다. 사용한 라이브러리는 java_websocket라이브러리를 사용했고 코드가 이해하기 단순해지기 때문에 사용했다. 해당 라이브러리를 활용해 Util로 만들어 놓아 모듈화 했으며 참고용에 도움이 되었으면 좋겠다. 라이브러리 github주소는 https://github.com/TooTallNate/Java-WebSocket GitHub - TooTallNate/Java-WebSocket: A barebones WebSocket client and server implementation written in 100% Java. A barebones WebSocket client and server implementation written..
DB JNDI환경설정을 Spring에서 Annotation로 Dbconfig설정하기 # WAS 설정 변경 JNDI방식은 익숙하게 사용하는 JDBC API를 활용하는것과는 다른 실행구조를 가진다. JDBC의 경우 웹 어플리케이션 내부에서 연결해 데이터베이스를 호출하는 느낌이라면 JNDI의 경우에는 WAS에서 DB를 연결을 해놓은 후 웹어플리케이션은 그 연결된 WAS서버에서 데이터베이스를 호출하게된다. 따라서 JNDI를 활용하기 위해서는 WAS에서 DB환경설정을 한다. 나 같은 경우에는 WAS를 JEUS를 사용했기에 WEB_ADMIN에서 Resource > Database 를 들어가 Add+를 눌러 DB를 세팅한다. 그 이후 Server와 연동을 해야한다. Data Sources 에서 적용한 Data를 넣어주고 저장한다. # Java > Spring 설정 변경하기 @Configuration..
유니티 공부 첫번째 Transform # 시작 Toy프로젝트로 웹개발과 관련없는 공부를 시작한다. 웹개발로 생계를 유지하고 거기에 초보개발자인 내가 토이프로젝트로 웹개발과 관련된 프로젝트를 진행하거나 컴퓨터프로그래밍 일반을 공부하는것이 먼저라고 판단되나 내가 프로그래밍을 공부하고자 마음먹게된 계기가 게임인걸 어쩌겠나? 우선 인터넷 강의로 배운 내용들을 복습하듯이 회고하는것을 목표로 작심삼일이 되지않고 꾸준히 글을 써나가는게 목표이며 최종적으로 유니티로 게임을 개발하기 위한 기본 지식들을 습득한 후 머리속으로 구상하고 있는 게임을 그려나갈 것이다. # Transform position과 rotation 그리고 scare이라는 개념에 각각 x,y,z축을 가지고 있으며 이를 통해 에셋(객체 개념인것 같다)을 동작하는 큰 기능중 하나이다. 포지션은..
Filter, Interceptor, Aop가 뭔데? # 궁금증 Spring으로 MVC모델을 만들때 Controller로 넘어오기 이전에 Filter와 Interceptor와 Aop를 거쳐서 지나간다는것을 알았다. 그런데 이 세가지가 무슨 역할을 하는지에 대해서 정확히 모른다. 웹프로그래밍은 내 밥줄이고 따라서 각 세가지가 어떤역할을 하는지에 대해 파악이 필요하다. # 내가 찾은 답 Filter Client에서 Server로 요청을 주고 받을것이다. Client 에서 Server로 요청을 주고받을 때 가장먼저 Spring으로 들어가기 이전에 혹은 나온 이후 로직적으로 수정하거나 변환하는 역할을 할텐데 그 역할을 하는 것이 filter이다 대표적인 로직으로는 UTF-8로 받기위한 인코딩 작업이 있다. Interceptor Dispacher Servlet(스프..
JAVA에서 생성자는 메소드일까 # 궁금한 사항 생성자 역시 메소드처럼 파라미터가 들어가고 여러가지 변수가 들어가며 결과를 도출해 낼 수 있다 그렇다면 생성자는 메소드의 일종이라고 할 수 있을까? # 내가 찾은 답 생성자는 클래스 내부에서 동적인 역할을해 아웃풋을 가져온다는 점에서 JAVA의 문법중 하나인 메소드와 공통점이 있다는 점은 분명하지만 메소드와 비교했을때 공통점보다는 상술할 차이점이 더욱 많다는 점에서 생성자는 메소드로 볼 수 없다는 것이 나의 결론이다. 클래스는 초기화를 위해 생성자라는 특별한 코드 블록을 가질 수 있다. 즉, 생성자는 클래스가 new표현식에 의해 Instance화되어 객체를 생성할 때 객체의 레퍼런스를 생성하기 전에 객체의 초기화를 위해 사용되는 코드의 블록이다. 생성자는 리턴타입을 가질 수 없다. Met..
스프링은 왜이렇게 바꿀 환경설정이 많은가... # 오늘의 사건.txt; spring 공부를 하면서 비즈니스 로직을 코딩하기 위해 클래스를 만들고 log4j를 어노테이션으로 넣어주려는데 계속 저 오류가 뜬다 org.apache.log4j.Logger cannot be resolved to a type 음.. 뭐지 왜 뜨는거지 # 문제 해결.Yes; Faang의 끝을 담당하고 계신 구글님께 저 오류 그대로 여쭈어보니 porm.xml 파일의 log4j 설정중에 저 부분을 주석처리 해주면 해결된다고 하신다. 그런데 아직까지 저부분을 해결해주면 어째서 앞선 오류가 해결되는지는 모르겠다. 천사가 나타나서 알려주시거나 아니면 좀 더 열심히 공부해서 문제를 해결해야 할것같다.. # 결과.end; 폼에서 다운받아서 그냥 활용하는 라이브러리들에서 저런 오류가 나면 넘..
오류가 안나는 오류가 나 살려줘 # 오늘의 사건.txt; 책으로산 Spring 프로젝트 예제를 실행하던 와중에 Session값은 받아와지는데 받아온 Session에서 작성한 생성자 안에 get() 메소드들이 동작이 안되고 계속 null보내서 이 문제를 해결하기가 너무 힘들었다. Session은 잘 받아지고 jpa로 db에도 값이 잘 들어가져 있는데 계속 get메소드를 호출하면 null이 뜨길래 도대체 이게 무슨 영문인가 책 프로젝트 예제도 처음보는 코드들이 대부분이라 코드 한줄한줄 명확한 이해도 부족한 바람에 문제를 해결하기 더욱 힘들었다. # 문제 해결.Yes; 문제는 SessionUser 클래스 내부에 있는 생성자의 코딩이 잘못되어 있었다. 생성자를 호출하고 그 파라미터로 도메인 패키지 안에 있는 user클래스를 불러왔고 그 use..
잊지않겠다... 디렉토리 # 오늘의 사건.txt; MVC2 모델로 웹어플리케이션을 만드는법을 배우고 프로젝트를 끝냈다. 이젠 스프링으로 웹어플리케이션을 만드는법을 배워야 트렌드에 맞출 수 있다고 생각해서 관련도서를 사서 독학을 시작했다. 익숙하지 않은 새로운 IDE와(intellij) 처음 써보는 프레임워크(Spring) 라서 굉장히 낯선 상황에 책에서 방법을 친절하게 가르쳐 주어서 낯설지만 어렵지않게 따라하던 도중... 어 왜지.. 왜 Status 404 가 뜨지? 컨트롤러(웹사이트 쾌적한 개발을 위해 사용구역별로 나누어놓은 일종의 틀,A-> B-> C 일때 A와 C를 중개해주는 B 역할을 한다.)에 제대로 매핑(연결) 해놨는데.... 1시간을 헤맸다.. # 문제 해결.Yes; index.mustache 파일의 경로가 reso..

728x90
반응형