✅네이버클라우드 캠프

✅네이버클라우드 캠프/개발일기

[네이버클라우드캠프] 53일차. Java Reflection API 사용, DAO 객체 메서드 호출 자동화 및 예외 처리 문법

* 39. Reflection API를 사용해서 DAO 객체의 메서드 호출을 자동화하기 기존의 Case 문법으로 사용했던 추가,목록,조회,변경,삭제 등의 명령을 대체한다. // 데이터 이름과 메서드 이름 알아내기 String[] values = command.split("/"); String dataName = values[0]; String methodName = values[1]; // 데이터 이름으로 DAO 객체를 꺼낸다. Object dao = daoMap.get(dataName); if (dao == null) { // 만약 데이터를 처리 할 DAO를 찾지 못한다면 오류 정보를 클라이언트에게 보낸다. out.writeUTF( new ResponseEntity().status(ResponseEnt..

✅네이버클라우드 캠프/개발일기

[네이버클라우드캠프] 52일차. Java 분산 컴퓨팅의 DAO 및 프록시 패턴

* DAO 와 Proxy 패턴 (GOF) ex) Board 게시판 insert (추가) 기능을 사용할 때 BoardNetworkDao는작업을 서버에 전달하고 서버에서 보낸 작업 결과를 호출자(BoardListener) 에게 리턴하는 일을한다. BoardListDao는 실제로 호출받은 일을 수행하며 그 결과를 호출자(BoardNetworkDao) 에게 리턴한다. * DAO 와 Proxy 패턴 (GOF) - 각 역할자의 명칭 용어중요 ! 클라이언트측의 BoardNetworkDao Object Request Broker 는 "stub"이라 한다. 서버의 BoardListDao Object Request Broker 는 "skeleton"이라 한다. * 분산컴퓨팅 중앙 집중식 컴퓨팅은 서버에 문제가 발생하면 모..

✅네이버클라우드 캠프/개발일기

[네이버클라우드캠프] 51일차. Java 네트워킹을 통한 데이터 공유 및 Client Common Server 패키지 구분하기

* Client/Server 통신 규칙 (Protocol) * 요청 정보 보내기 작업에 참여하는 객체들 (추가) ex) 게시글 등록하기 개방 폐쇄 원칙에 따라서 확장에 대해서는 열려있고 수정에 대해서는 닫혀 있어야 한다. 즉 기존의 코드를 수정하지 않고 애플리케이션의 동작을 추가하거나 변경할 수 있다. BoardAddLinstener 는 app35 에서는 List, app36에서는 BoardListDao, app37 에서는 BoardNetworkDao 를 통해서 하나의 프로그램을 여러 관리자가 수정할 수 있게 했다. * 참여하는 객체 - app 35 BoardListListener app35. BoardListListener BoardListListener의 생성자를 통해 List를 전달받습니다. 데이터..

✅네이버클라우드 캠프/개발일기

[네이버클라우드캠프] 50일차. Java DAO와 네트워킹을 통한 원활한 데이터 공유 및 관리

* DAO (Data Access Object) 도입 * 현황 저장소를 변경하려면 데이터 조작 방식이 바뀐다. 즉, 저장소 변경에 따라서 파일 I/O 방식이 바뀌며, 코드를 변경해주어야 한다는 뜻이다. 모든 Listener 클래스를 변경해야한다. (유지보수 비용이 많이 발생한다.) * 개선 MemberDao 에서 데이터 파일 I/O , 데이터 조작 등의 기능을 수행하게 함으로써 데이터 처리 방식을 캡슐화하고 유지보수성을 향상시킨다. 두 개의 클래스에서 각각 처리하던 작업을 하나의 클래스로 통합하고, 캡슐화함으로써 유지보수가 용이해진다. * DAO 만들기 1. 변경 전 예시) 변경 후 예시) 3. 상속 후에 인터페이스를 적용한다면, Dao 클래스를 각각 새로 정의해주어야한다. 4. Member***Dao ..

우동한그릇
'✅네이버클라우드 캠프' 카테고리의 글 목록 (12 Page)