일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 항해99
- Til
- Grafana
- 코딩문제
- 코딩
- ArrayList
- wil
- 코딩테스트 준비
- 이진 탐색(binary search)
- 99클럽
- 정렬 알고리즘(sort algorithm)
- 코딩공부
- Spring
- 메서드
- aop
- Java
- 개발자 취업
- css
- 프로그래머스
- 우선순위 큐(priorityqueue)
- 회고
- cs 공부)준비
- GIT
- HTML
- 자바
- 면접(java
- 배열
- Entity
- github
- 자료구조
- Today
- Total
목록프레임워크/spring (29)
hayu's 개발 일지
트랜잭션(transaction)이란? - 데이터 베이스 상에서 트랜잭션은 데이터베이스 관리 시스템 또는 유사한 시스템에서 상호작용의 단위이다. 여기서 유사한 시스템이란 트랜잭션이 성공과 실패가 분명하고 상호 독립적이면서 일관되고 밎을 수 있는 시스템을 의미한다. 트랜잭션의 특징 - 원자성 (Atomicity): 트랜잭션의 연산은 데이터베이스에 모두 반영되던지 아니면 반영되지 않아야한다. 중간 단계까지 실행되고 실패하는 일이 없도록 하는 것이다. - 일관성 (Consistency): 각 데이터 트랜잭션이 데이터 베이스를 일관성있는 상태에서 일관성있는 상태로 이동해야함을 의미한다. 시스템이 가지고 있는 고정요소는 트랜잭션 수행 전과 트랜잭션 수행 완료 후의 상태가 같아야한다. - 독립성 (Isolation)..
로그인 후 성공 메세지 출력 문제 - 성공 메세지를 로그에 추가는 가능했지만, 성공 메세지를 반환해줄 때 반환이 안되는 문제. 이전 코드 // 로그인 성공 처리 @Override protected void successfulAuthentication(HttpServletRequest request, HttpServletResponse response, FilterChain chain, Authentication authResult) throws IOException, ServletException { // 인증 결과에서 사용자 정보와 권한(Role) 추출 String email = ((UserDetailsImpl) authResult.getPrincipal()).getUsername(); UserRole..
영속성 컨텍스트란? - 영속성 컨텍스트는 JPA에서 사용되는 개념 중 하나이며, 엔티티(Entity) 객체를 영구 저장하고 데이터 베이스와 상호작용한다. 엔티티의 생명주기 - 비영속(new/transient): 영속성 컨텍스트와 관계가 없는 새로운 상태이다. - 영속(managed): 영속성 컨텍스트에 관리되는 상태이다. - 준영속(detached): 영속성 컨텍스트에 저장되었다가 분리된 상태이다. - 삭제(remove): 삭제된 상태이다. 영속성 컨텍스트의 특징 - 영속성 컨텍스트는 엔티티를 식별자 값으로 구분한다. 영속 상태는 식별자 값이 있어야 한다. - JPA 는 트랜잭션을 커밋하는 순간 영속성 컨텍스트에 새로 저장된 엔티티를 데이터 베이스에 반영한다. + 트랜잭션: 데이터 베이스의 상태를 변화시..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/clNRM7/btsFlTODGDH/63lkI3ZJNIOiQeayhenO00/img.png)
스프링 MVC란? - MVC 패턴 등장 전, 하나의 파일로 코드를 짤 경우 하나의 파일이 너무 많은 역할을 하게 되고 로직 변경 사항이 있는 경우 파일을 모두 수정해야 했다. - MVC 패턴은 애플리케이션을 개발할 때 사용하는 디자인 패턴으로 Model-View-Controller의 약자이다. MVC 패턴은 소프트웨어를 구성하는 요소들을 Model, View, Controller로 구분하여 각각의 역할을 분리한다. Model - 데이터와 비즈니스 로직을 담당한다. -> 클라이언트의 요청을 전달 받으면 요청 사항을 처리하기 위한 작업을 한다. 처리한 작업의 결과 데이터를 클라이언트에게 응답을 돌려줘야 하는데 클라이언트에게 응답으로 돌려주는 작업 처리 결과 데이터를 말한다. - 데이터베이스와 연동하여 데이터..
IoC 란? - IoC 는 제어의 역전이다. - 프로그램의 제어 흐름 구조가 뒤바뀌는 것을 말한다. 즉, 모든 종류의 작업을 사용하는 쪽에서 제어하는 구조를 거꾸로 뒤집는 것이다. - 제어권을 상위 템플릿 메소드에 넘기고 자신은 필요할 때 호출되어 사용하도록 한다는 개념이다. -> 예를 들어 스프링 컨테이너에서 직접 객체를 생성하여 해당 객체의 주입 시키는 것을 말한다. IoC 의 장점 - 객체간의 결합도를 낮춘다. - 유연한 코드 작성이 가능하다. - 가독성이 증가한다. - 코드 중복이 방지된다. - 유지 보수가 편하다. - IoC 를 적용하면 객체를 클래스 내부에서 직접 생성하여 사용하지 않고 미리 생성해놓은 객체를 주입받아 사용하면 된다. -> 프로그램의 제어 흐름을 직접 제어하는 것이 아닌 외부에..