Java & Spring 33

[Spring] 웹소켓/Stomp 3

https://nippyclouding.tistory.com/46 [Spring] 웹소켓/Stomp 2프로젝트 실습 (아래 강의를 수강하며 공부한 내용을 정리)https://www.inflearn.com/course/%EC%9B%B9%EC%86%8C%EC%BC%93-stomp-%EC%B1%84%ED%8C%85%EC%84%9C%EB%B9%84%EC%8A%A4?cid=335899 웹소켓/STOMP 채팅서비스(spring, vue, redis)| brnippyclouding.tistory.com위와 이어진다. Spring에서 Stomp를 사용하지 않은 순수 웹소켓 환경 개발 1. Configimport lombok.RequiredArgsConstructor;import org.springframework.co..

[Spring] Security

스프링 세큐리티implementation 'org.springframework.boot:spring-boot-starter-security' - 사용자 - 프론트 - 컨트롤러 - 서버 - 리포티토리 - DB - 세큐리티 의존성 추가 시 프론트 - 컨트롤러 사이에 'filter'가 적용된다. - 스프링 세큐리티 적용 후 추가 설정을 하지 않을 경우 "모든 요청"에 대해 filter 동작 - filter은 들어오는 요청에 대해 "로그인이 되어있는지" 를 확인 후 로그인되어있지 않다면 접근을 막는다.- "로그인이 되어있는지"를 확인할 때 SecurityContextHolder 에 "Authentication" 객체가 있는지를 확인한다.- Authentication 객체가 있다면 "인증된 사용자" 로 판단, ..

Java & Spring 2026.02.15

[Spring] 웹소켓/Stomp 2

프로젝트 실습 (아래 강의를 수강하며 공부한 내용을 정리)https://www.inflearn.com/course/%EC%9B%B9%EC%86%8C%EC%BC%93-stomp-%EC%B1%84%ED%8C%85%EC%84%9C%EB%B9%84%EC%8A%A4?cid=335899 웹소켓/STOMP 채팅서비스(spring, vue, redis)| bradkim - 인프런 강의현재 평점 4.9점 수강생 502명인 강의를 만나보세요. 웹소켓/stomp, springboot를활용하여 채팅서비스를 개발합니다. 비교적 쉬운 프레임워크인 vue.js를 통해 간단한 화면도 함께 구성합니다. redis pub/suwww.inflearn.com 실습 환경 설정 1. Docker를 이용하여 MySQL, Redis 컨테이너에 업..

[Spring] JPA 변경 감지

게시판 프로젝트 - Board 수정 상황사용자가 수정 html에서 데이터를 입력하면 백엔드에서 dto로 해당 데이터를 받아 Board 데이터를 수정한다. 1. Entity@Getter@Entity@ToString@NoArgsConstructor(access = AccessLevel.PROTECTED)public class Board { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "board_id") private Long id; @NotBlank private String title; @NotBlank private String content; @NotBlank priv..

Java & Spring/JPA 2026.02.13

[Spring] JPA 3

ddl-auto : JPA - DB 스키마 (테이블) 자동 생성 기능 - DDL을 애플리케이션 실행 시점에 자동 생성- 운영에서는 사용하지 않고 개발 단계에서만 사용하기 스프링부트 실행 시 매 번 적용 옵션설명비고create기존 테이블을 삭제(Drop) 후 다시 생성개발 초기 단계create-dropcreate와 같지만, 애플리케이션 종료 시 테이블을 삭제테스트 환경update변경된 부분만 반영 (기존 데이터 유지, 컬럼 추가는 가능하지만 삭제는 불가)개발 중기 단계validate엔티티와 테이블이 정상 매핑되었는지만 확인스테이징/운영none자동 생성 기능을 사용 X운영 환경 (권장)#application.propertiesspring.jpa.hibernate.ddl-auto=createspring.jpa..

Java & Spring/JPA 2026.02.05

[Spring] JPA 2

ORM : Object Relation MappingJPA의 가장 큰 특징 중 하나는 ORM 기술이라는 것이다.JPA는 Java의 객체와 DataBase의 관계 위에 세워져있는 기술이다. @Entity, @Table : 객체 & 테이블 지정 방법@Id : DB에서 PK 지정 방법@Column : Java 필드와 DB 컬럼 매핑 방법@ManyToOne, @JoinColumn : DB의 N:1 등 연관관계를 Java에 매핑하는 방법 1. @Entity, @Table@Getter@Entity @Table(name = "orders") public class Order extends BaseEntity { @Id @GeneratedValue @Column(name = "orders_id") p..

Java & Spring/JPA 2026.01.28

[Spring] 웹소켓 Stomp 1

0. 주요 개념과 용어HTTP - 비연결형, 클라이언트가 매 번 서버에 요청을 보내어 TCP 연결 시도, 요청 처리 후 연결을 끊는다.- 클라이언트의 요청 -> 서버 응답 구조- 서버가 먼저 클라이언트에 신호를 전달할 수 없다.- http:// 프로토콜 사용- TCP 기반 Web Socket - 클라이언트 서버 실시간 통신 구조- 서버가 먼저 클라이언트에 신호를 전달할 수 있다. - ws:// 프로토콜 사용 (Stomp 사용 시에는 생략)- TCP 기반 TCP는 기본적으로 양방향 연결 (3 way HandShake)3 way HandShake 과정이 끝나야 데이터 전송 가능- HTTP와 Web Socket은 기본적으로 TCP 기반이다.- HTTP는 3 way HandShake 이후 클라이언트 요청 -..

[Java] Reflection

Reflection = 반사프로그램이 실행 중에 자기 자신의 구조를 들여다보고 그 구조를 변경, 조작클래스의 정보를 런타임에 읽어서 활용클래스 메타 데이터 (클래스명, 접근 제어자, 상위 클래스, 구현된 인터페이스 등), 필드, 메서드, 생성자 정보를 확인할 수 있다. 스프링 DI, IoC의 원리 : Java Reflection직접 만든 클래스 (~Service, controller, repository ..)를 @Bean, @Component 등으로 스프링 프레임워크가 대신 빈으로 등록@Bean, @Component 은 내부적으로 자바 리플렉션 기술을 사용한다. 리플렉션을 이용하기 위한 기본적인 클래스 BasicDatapackage reflection;public class BasicData { ..

Java & Spring 2026.01.01