본문 바로가기

Java21

프로그래머스 Lv2. 숫자 카드 나누기 -문제 철수와 영희는 선생님으로부터 숫자가 하나씩 적힌 카드들을 절반씩 나눠서 가진 후, 다음 두 조건 중 하나를 만족하는 가장 큰 양의 정수 a의 값을 구하려고 합니다. 철수가 가진 카드들에 적힌 모든 숫자를 나눌 수 있고 영희가 가진 카드들에 적힌 모든 숫자들 중 하나도 나눌 수 없는 양의 정수 a 영희가 가진 카드들에 적힌 모든 숫자를 나눌 수 있고, 철수가 가진 카드들에 적힌 모든 숫자들 중 하나도 나눌 수 없는 양의 정수 a 예를 들어, 카드들에 10, 5, 20, 17이 적혀 있는 경우에 대해 생각해 봅시다. 만약, 철수가 [10, 17]이 적힌 카드를 갖고, 영희가 [5, 20]이 적힌 카드를 갖는다면 두 조건 중 하나를 만족하는 양의 정수 a는 존재하지 않습니다. 하지만, 철수가 [10, .. 2022. 11. 25.
JPA Update Query - UserService @Override @Transactional public void updateUserInfo(UserId userId, String changePhoneNum) { UserInfo findUserInfo = userInfoRepository.findByUserId(userId).get(); findUserInfo.setPhone(changePhoneNum); } 리포지토리를 통해 입력받은 UserId의 값으로 회원정보를 끌어와 영속성 컨텍스트에 저장한다. (UserId는 듀얼 메인키라서 클래스로 구분했음) Repository의 save를 호출하지 않아도 @Transactional이 있는 메서드의 영속성 컨텍스트의 값이 변경 되면 변경감지(더티채킹)으로 인해 update쿼리를 알아.. 2022. 10. 28.
spring boot 웹소켓통신 메세지 ping pong. 클라이언트에서 ping을 응답하면 서버에서 pong을 응답하고 ping이 아닌 다른 문자로 요청하면 요청한 문자 그래도 응답해주는 ping pong 웹소켓 통신 연습. - 웹 소켓 서버 @SpringBootApplication public class WebSocketServerApplication { public static void main(String[] args) { Socket socket = null; //클라이언트와 통신을 위한 소켓 ServerSocket server_socket = null; // 서버생성 서버소켓 BufferedReader in = null; //클라이언트 데이터 읽기 입력스트림 PrintWriter out = null; //클라이언트에 데이터 전송 출력스트림 try { .. 2022. 10. 2.
Spring Boot AWS EC2 배포시 연결이 거부되었습니다. spring의 jar파일을 ubuntu 환경에서 실행 후 aws도메인에 접근하면 '연결이 거부되었습니다'라는 메세지와 함께 사이트에 연결되지 않는 이슈가 발생할 수 있다 그럴땐 aws 터미널에서 sudo su로 접근 후 iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 를 입력해주면 80포트를 8080포트로 포워딩 해준다. (80요청은 이제부터 8080으로 인식) 루트 사용자에서 일반 사용자로 다시 돌아와서 jar파일을 실행하고 싶다면 su - $username 를 입력해준다. 2022. 9. 22.