본문 바로가기

전체 글

(190)
[Spring] 이메일 전송 API, 이메일 인증 구현 이메일 전송 API, 이메일 인증 구현        - 앱 비밀번호 설정하기 -    sendmail 경로로 접속하면 정상적으로 메일이 발송된다      이제 메일의 내용을 html 형식으로 보내볼 것임       이메일 인증을 만들어볼 것임       확인
[JPA] 영속성 컨텍스트 ( 1차 캐시, 동일성 보장, 쓰기 지연, 변경 감지 ) 영속성 컨텍스트영속성 컨텍스트란 엔티티를 영구 저장하는 환경으로써, 애플리케이션과 데이터베이스 사이에서 엔티티를 관리하는 논리적인 영역이다.이를 통해 1차 캐시, 동일성 보장, 트랙잭션 지원, 쓰기 지연, 변경 감지, 지연 로딩 등 다양한 기능을 제공하며 영속성 컨텍스트는 한 트랜잭션 단위 ( 데이터베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위 - 논리적 단위 ) 에서만 존재했다가 한 트랜잭션이 종료되면 영속성 컨텍스트도 삭제된다.  비영속Member member = new Member();객체만 생성한 상태로써 아직 영속성 컨텍스트에 저장하지 않은 상태 - 비영속 ( new / trasient )     영속em.persist(member);엔티티 매니저의 persist() 메소드를 사용해 m..
[Spring] 파일 업로드, 다운로드 파일 업로드, 다운로드  pom.xml 파일에 프로젝트의 버전 변경 >> maven 프로젝트 업데이트 >> 한글 인코딩 작업 실행 이제 파일 업로드, 다운로드에 필요한 라이브러리를 추가할 것임    ( 위 xml 파일은 어노테이션을 활용해서 작성하는 방법을 설명하기 위해 작성했으므로 xml 파일 내 빈 객체 등록 부분은 주석처리 하였음 )        DB 에 저장한 이미지의 이름을 저장해볼 것임create table file_image( id varchar(20) primary key, name varchar(20), img_name varchar(100) );sql 문 작성 및 실행 ▼ DB 연동 작업 ▼   ▲ DB 연동 세팅 완료 ▲        ( 현재 테이블에 id 값을 pri..
[Spring] XSS 공격 대응 ( 크로스 사이트 스크립팅 ) XSS 공격 대응 ( 크로스 사이트 스크립팅 )xss 란 ? ( Cross Site Scripting ): 회원가입 등에서 입력 란에 스크립트 문법을 사용해서 작동시키는 공격 방식( 예를 들어 회원가입 란에 를 입력한 뒤 회원가입을 진행하면 스크립트문이 실행되면서 alert 창이 실행된다 )     방법 1. ( 문자열 치환 메소드 선언 후 사용 )위와 같이 스크립트문에 필요한 문자를 치환하는 방법을 사용하면 xss 공격이 들어올 수 있는 모든 부분에 해당 메소드를 사용해서 문자를 치환처리해줘야 한다     방법 2. ( 네이버에서 제공해주는 라이브러리 사용 )   네이버에서 제공하는 xss 공격 방어 방법을 사용하면 모든 경로에서 시도되는 xss 공격을 처리해준다  ▼ xss 공격을 차단하지 않은 ..
[Spring] interceptor 를 이용하여 자동 로그인 구현 interceptor 를 이용하여 자동 로그인 구현  alter table membership add session_id varchar2(100) default 'nan' not null;테이블 추가( 값이 존재하지 않는다면 nan 으로 저장된다 )
[Spring] Interceptor Interceptor Interceptor : 컨트롤러로 가기 전에 무언가 처리할 내용 ( preHandle ) 이나, 컨트롤러 까지 로직 작동 후 클라이언트에게 도착하기 전에 처리할 내용 ( postHandle ) 을 담당 ( 불필요한 리소스를 차단 )       코드 실행
[Spring] 비밀번호 암호화, 다음 주소 API 사용 비밀번호 암호화             다음 주소 API 사용      api 사용 영상
[Spring] 디자인 패턴 ( 싱글톤 패턴, 팩토리 메소드 패턴, 프록시 패턴 ) 싱글톤 패턴 ( Singleton Pattern )사용 이유 : 싱글톤 패턴은 전체 애플리케이션에서 단 하나의 인스턴스만을 생성하여 사용하고자 할 때 사용한다이는 공유 리소스 관리나 크로스-커팅 서비스( 애플리케이션의 여러 부분에 걸쳐 공통적으로 적용되는 기능을 말한다 ) 제공에 유용하다 스프링에서는 기본적으로 모든 빈객체를 싱글톤으로 생성하여 관리한다 싱글톤 사용의 장점1. 메모리 낭비 방지2. 전역 인스턴스로 애플리케이션 어디서나 접근이 가능3. 데이터 공유의 용이성 싱글톤 사용의 단점1. 싱글톤 인스턴스가 너무 많은 역할을 담당하게 되면 변경과 테스트가 어려워진다2. 멀티스레드 환경에서 동기화 처리가 필요하다 ( 생성된 빈 객체를 동시에 사용할 수 없기 때문 )          팩토리 메소드 패턴 ..

728x90