1. 로그인 후, 알림 받을 채널 구독: /topic/notification/{user_id} 2. 상대방이 채팅 보낼 때, 위 채널로 '새로운 채팅!' 메세지 발행 (좌측: 채팅 메세지 발송, 우측: 알림 받음) 두명 모두 채팅방 참여해 있을때도 알림이 갈텐데 안가도록 처리해야 할거 같다. 상대방이 채팅을 구독한 상태일 경우에는 안가도록 처리하면 될거 같다! 다른거 먼저 구현하고 후에 다시 돌아와야지... 테스트툴: https://github.com/jiangxy/websocket-debug-tool?tab=readme-ov-file
DI는 스프링 프레임워크의 핵심 개념으로 소프트웨어 컴포넌트 간의 결합도를 줄이고 유연성을 향상시키는 데 중요한 역할을 한다. 스프링이 제공하는 DI 기능은 개발자가 객체 간의 의존성으로 명시적으로 정의하여 코드의 유지보수성과 테스트 용이성을 향상시키는 데 도움이 된다. Java Code 기반 설정 (JavaConfig) // Java Code 기반 DI 설정 기본 예제 @Congifuration public class SpringConfig { // (1) @Bean public Poem sonnet29() { return new Poem(); } // (2) @Bean(name="duke") public PoeticJuggler juggler() { return new PoeticJuggler(5, ..
GET // 매개변수 없는 GET 메서드 @GetMapping("/members") public String list() { return "members/memberList"; } // 매개변수 있는 GET 메서드 @GetMapping("/members/{variable}") public String list(@PathVariable String variable) { return variable; } // 매개변수 있는 GET 메서드 @GetMapping("/members") public String list(@RequestParam String variable) { return variable; } @GetMapping: HTTP GET 요청을 해당 메소드에 매핑하는 역할 @PathVariable: U..
문제 그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는 1번부터 N번까지이다. 입력 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다. 입력으로 주어지는 간선은 양방향이다. 출력 첫째 줄에 DFS를 수행한 결과를, 그 다음 줄에는 BFS를 수행한 결과를 출력한다. V부터 방문된 점을 순서대로 출력하면 된다. ..
문제 지민이는 N개의 원소를 포함하고 있는 양방향 순환 큐를 가지고 있다. 지민이는 이 큐에서 몇 개의 원소를 뽑아내려고 한다. 지민이는 이 큐에서 다음과 같은 3가지 연산을 수행할 수 있다. 첫 번째 원소를 뽑아낸다. 이 연산을 수행하면, 원래 큐의 원소가 a1, ..., ak이었던 것이 a2, ..., ak와 같이 된다. 왼쪽으로 한 칸 이동시킨다. 이 연산을 수행하면, a1, ..., ak가 a2, ..., ak, a1이 된다. 오른쪽으로 한 칸 이동시킨다. 이 연산을 수행하면, a1, ..., ak가 ak, a1, ..., ak-1이 된다. 큐에 처음에 포함되어 있던 수 N이 주어진다. 그리고 지민이가 뽑아내려고 하는 원소의 위치가 주어진다. (이 위치는 가장 처음 큐에서의 위치이다.) 이때, 그..
RDD란 스파크가 사용하는 핵심 데이터 모델로 다수의 서버를 걸쳐 분산 방식으로 저장된 데이터를 의미한다. 병렬 처리가 가능하고 장애가 발생할 경우 스스로 복구될 수 있다. 종류 RDD: 기본 형식 PairRDD: key, value pair로 구성된 RDD 구현 // SparkContext 초기화 SparkConf conf = new SparkConf().setMaster("local")/setAppName("My App"); JavaSparkContext sc = new JavaSparkContext(conf); // 외부 데이터 로드, RDD 생성 JavaRDD lines = sc.textFile("..."); RDD transformation map filter distinct: 중복 제거 fla..
Service package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; imp..
도메인: 비즈니스 도메인 객체 리포지토리: 데이터베이스 접근, 도메인 객체를 DB에 저장하고 관리 서비스: 비지니스 로직 구현 Domain package hello.hellospring.domain; import jakarta.persistence.*; @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void..
- Total
- Today
- Yesterday
- 백준9375번
- 프로그래밍
- 백준
- 자바 1004번
- 스프링 강의
- 코틀린
- RDD
- 자바
- 13305 자바
- 아이엘츠
- 스프링부터
- 그리디 알고리즘
- 동덕여대
- 백준 2108
- 컴공
- BFS
- 코딩
- 자바 9375
- 생활코딩
- 스프링부트
- 컴과
- 인프런 김영한 강의
- 알고리즘
- 스파크
- 안드로이드
- 백준 1004
- 동덕여대 컴퓨터학과
- 컴퓨터학과
- 웹
- 개발
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |