안녕하세요, 코린이의 코딩 학습기 채니 입니다.
개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다.
게시글 조회 알림
Controller
BoardController
public class BoardController {
@Autowired
NoticeService noticeService;
@GetMapping("/boardDetail.do")
public void boardDetail(@RequestParam int no, Model model) {
Board board = boardService.selectOneBoard(no);
log.debug("board = {}", board);
noticeService.sendNotice(board);
model.addAttribute("board", board);
}
}
boardDetail 메소드가 실행되면 noticeService의 sendNotice를 통해 게시글 조회 알림 처리를 해보겠습니다.
Service
NoticeService
SimpMessagingTemplate.convertAndSend()
@Service
public class NoticeService {
@Autowired
SimpMessagingTemplate simpMessagingTemplate;
public void sendNotice(Board board) {
Payload payload = Payload.builder()
.to(board.getMemberId()) // 글쓴이
.msg("[" + board.getTitle() + "] 게시글을 누군가 조회했어요!😎")
.time(System.currentTimeMillis())
.build();
simpMessagingTemplate.convertAndSend("/app/notice/" + board.getMemberId(), payload); // 해당 url에 payload를 전달!
}
}
honggd가 로그인하여 qwerty 게시글을 조회했더니, qwerty에게 알림이 가는 것을 확인할 수 있습니다.
추후 DB 저장 등을 이용하여 알림 리스트를 만들고 실시간 처리를 할 수 있을 것 같습니다.
위와 같은 방식으로 댓글이 달렸을 때의 알림 등등을 처리할 수 있겠죠!!
'Java > Spring' 카테고리의 다른 글
Spring) 관리자와 1:1 채팅 - 채팅 로그 DB 저장 및 채팅 내역 가져오기 (0) | 2022.10.11 |
---|---|
Spring) 관리자와 1:1 채팅 - 기본 흐름, 구독 처리 (0) | 2022.10.10 |
Spring) Web-Socket - Stomp (전체/개별 공지사항 전송 구현) (0) | 2022.09.15 |
Spring) Spring-WebSocket - Stomp, Stomp 환경설정 및 흐름파악 (0) | 2022.09.14 |
Spring) Spring-WebSocket + SockJS (0) | 2022.09.14 |