728x90

Spring/Spring Web

[Spring / WebSocket] Java Websocket을 이용한 1:1 채팅방, 단체 채팅방 만들기 - 2 [VO / Service / DAO / Mapper]

채팅에 관한 문의사항이 많아져 추가로 VO / Service / DAO를 공유하며 상세한 설명을 덧붙여 보겠습니다. 사실 HandShake를 사용하지 않은 코드라, 완벽하진 않아서 다시 채팅부분만 그대로 붙여 쓸 수 있게 Git과 게시글을 준비중에 있는데 일단 급하신 분들을 위해 작성해보겠습니다. ※ 패키지가 다르기 때문에 그대로 복붙하시면 오류가 날 수 있습니다. 꼭 코드를 직접 한줄한줄 파악하시면서 작성해 주시길 바랍니다. 1. ChatSession : 현재 로그인 되어 있는 유저들을 저장하는 VO DB 저장 X / 온라인 오프라인 확인용 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 import jav..

2021.05.25 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 8 (게시판 View Detail) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 8 (게시판 View Detail)

1. / 을 사용하여, Controller로 게시글 번호(bNo)와, 현재 페이지(curentPage)를 전송한다. 2. Controller 2-1. bNo를 Service → DAO로 넘긴다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 /** * 3. 게시판 뷰 이동 메소드 * @return */ @RequestMapping(value = "/view") public String BoardView(Model model, int bNo, @RequestParam(value="currentPage", required=false, defaultValue="1" )int currentPage) { // 게시글 1개 조회 Board..

2021.01.14 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 7 (게시판 list 페이징처리) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 7 (게시판 list 페이징처리)

1. 게시글을 10개 단위로 다음 페이지로 넘기고 싶다. 2. PageInfo VO 만들기 2-1. private int currentPage; // 현재 페이지 private int listCount; // 총 게시글의 수 [ SELECT COUNT(*) FROM BOARD ] private int pageLimit; // 한 페이지에 보여질 페이징 수 ex) 총 페이지가 13개면, 1 ~ 10 / 11 ~ 13 private int maxPage; // 총 페이지 (1 ~ 50) private int startPage; // 시작 페이지 (1 11 21 31 41) private int endPage; // 끝 페이지 (10 20 30 40 50) 1 2 3 4 5 6 7 8 9 10 11 12 13..

2021.01.13 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 6 (게시판 list 출력 / Date 처리) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 6 (게시판 list 출력 / Date 처리)

1. 게시판 홈 이동 메소드를 업그레이드 해보자. 1-1. 리스트를 받아와야 하기 때문에 ArrayList로, service 메소드 생성 1-2. model.addAttribute로 jsp파일에 전송 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 /** * 1. 게시판 홈 이동 메소드 * @return */ @RequestMapping public String Board(Model model) { ArrayList boardList = service.getBoardList(); System.out.println(boardList); model.addAttribute("boardList", boardList); return "board/board_home"; } Colored by Col..

2021.01.12 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 5 (한글 EncodingFitler / 비밀번호 암호화 SpringSecurity) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 5 (한글 EncodingFitler / 비밀번호 암호화 SpringSecurity)

- 한글(UTF-8) Encoding - 1. 게시판 INSERT를 해보면, 한글이 깨진다. 2. web.xml에 encodingFilter를 등록해준다! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 encodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 encodingFilter /* Colored by Color Scripter cs 3. 출력 확인 - 비밀번호 암호화 SpringSecurity - 4. pom.xml에 dependcy를 설정해준다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23..

2021.01.11 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 4 (Controller / Serivce / DAO / INSERT 테스트) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 4 (Controller / Serivce / DAO / INSERT 테스트)

1. 설정 1-1. input, textarea에 vo의 필드변수와 같은 변수명으로 name값을 설정한다. 1-2. form action태그에 @RequestMapping 주소, method에 get방식 / post방식을 입력해준다. 2. Controller 설정 메소드의 파라미터로 vo 객체 Board를 받아오고 syso를 통하여 출력해보자! 2-1. 별 문제 없이 등록은 되지만 url을 보게 되면 complete까지 다 나온 상태이며, 이로써 새로고침을 누를 경우 다시 한번 입력했던 값으로 Compelete url을 타게 된다. 2-2. 해결 방법 (redirect : RequestMapping) redirect를 통해, 원하는 RequestMapping url 주소를 넣어주게 되면, url이 변경된..

2021.01.11 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 3 (DB연결 및 VO 생성) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 3 (DB연결 및 VO 생성)

1. 의존성 주입 pom.xml에 Oracle, Mybatis, Connetion Pool 관련 dependency를 추가해준다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 com.oracle ojdbc6 11.2.0.3 org.mybatis mybatis 3.4.6 org.mybatis mybatis-spring 1.3.1 org.springframework spring-jdbc ${org.springframework-version} commons-dbcp commons-dbcp 1.4 Colored by Color Scr..

2021.01.10 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 2 (Controller와 RequestMapping) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 2 (Controller와 RequestMapping)

부트스트랩 템플릿을 통하여 Home.jsp를 대략적으로 세팅해보았다. 게시판 기능을 구현할 건데, 먼저, 상단 navbar의 게시판 버튼을 눌렀을 때 게시판 페이지로 이동 할 수 있게끔 설정하겠다. 태그의 href속성으로, /tutorial/board의 url을 설정했다. 그 다음, 게시판 전용 controller 패키지와 클래스를 생성해준 후에, @Controller를 클래스 상단에 붙여 준 후, return 타입이 String인 메소드를 만들어준다. @RequestMapping을 메소드 상단에 붙여 value를 /tutorial을 제외한 /board로 설정해주었다. 또한, return값으로 WEB-INF/views하단부터의 경로로, board/board_home으로 세팅해 준다. 여기서 한가지 의문이..

2021.01.10 게시됨

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 1 (기본 서버 셋팅) 포스팅 썸네일 이미지

Spring/Spring Web

[Spring / BootStrap] Spring Legacy MVC Project로 게시판 및 채팅 기능 구현 - 1 (기본 서버 셋팅)

1. Package Explorer 마우스 오른쪽 클릭 → New → Spring Legacy Project 2. Proejct name : 프로젝트명 입력 → Templates:의 Spring MVC Project → Next 3. 최소 3개 단위의 패키지명 입력 ex) com.abc.def ".단위로 단어 3개" → finish 4. 서버를 실행해보자! 프로젝트 우클릭 → Run As → Run on Server 4. 500 에러를 획득했다!! 5. 내용을 확인해보자. java.sun.com/jsp/jstl/core를 찾을 수 없다고 한다. src/main/webapp/WEB-INF/views 에 자동으로 생성되는 home.jsp가 있는데, 자기 멋대로 jsp/jstl/core 라이브러리를 사용하고 ..

2021.01.04 게시됨

[Spring] WebSocket을 이용한 1:1 채팅 / 실시간 알림 - [2] 포스팅 썸네일 이미지

Spring/Spring Web

[Spring] WebSocket을 이용한 1:1 채팅 / 실시간 알림 - [2]

먼저 전체 코드입니다. 백엔드 작업에 앞서 jsp 코드를 분석해보겠습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113..

2021.01.03 게시됨

728x90