Spring11 [스프링의 정석] RestAPI, Ajax 1. json Java Script Object Notation - 자바 스크립트 객체 표기법 { key1: value1, key2:value }, [{ key1: value1, key2:value }] JS 객체 ) 3. Ajax ( Asynchronous javascript and XML ) 비동기 통신으로 데이터를 주고 받기 위한 기술 웹 페이지 전체(data + UI)가 아닌 일부(data)만 업데이트 가능 @RsetController @ResponseBody대신, @RestController 사용가능 REST란 Roy Fielding이 제안한 웹 서비스 디자인 아키텍쳐 접근방식 프로토콜에 독립적, 주로 HTTP를 사용해서구현 리소스 중심으로 API 디자인 - HTTP메서드로 수해할 작업을 정의.. 2023. 4. 26. [스프링의 정석] 게시판 페이징 삽질 게시글 업데이트 후 업데이트한 페이지가 아닌 첫번째 페이지로 redirect되는 것 수정 별거 아닌일이었는데 새벽까지 삽질함.. jsp에서 보내주는 코드 잘 적어놓고 값넘어오는거 확인까지 해놓고 갑자기 nullpoint예외 때문에 이것저것 지우다가 jsp에서 보내주는 코드 지워놓고 넘어오던 값까지 안뜨게 만들어놓고 왜 Null이 나오는거냐며 염병을 떨었다. 정신차리고 넘기는값, 받아오는값 잘 적어주니 제대로 작동.. 현타가 강하게 온다... 2023. 4. 25. [스프링의 정석] MyBatis, DAO작성 1. MyBatis란 자바코드 SQL( XML ) SQL Mapping Framework 자바 코드로부터 SQL문을 분리해서 관리 매개변수 설정과 쿼리 결과를 읽어오는 코드를 제거 작성할 코드가 줄어서 생산성 향상 & 유지 보수 편리 2. SqlSessionFactoryBean과 SqlSessionTemplate SqlSessionFactory - SqlSession을 생성해서 제공 SqlSession - SQL 명령을 수행하는데 필요한 메서드 제공 SqlSessionFactoryBean - SqlSessionFactory를 Spring에서 사용하기 위한 빈 SqlSessionTempleate - SQL 명령을 수행하는데 필요한 메서드 제공. thread-safe 3. SqlSession의 주요 메서드 .. 2023. 4. 24. [스프링의 정석] Transactional 아 글 수정 하려다가 실수로 지워버려서 복구할 방법이 없어서 다시 작성하게 된다 ㅡㅡ 짜증나지만 어쩌겠나.. @Transactional의 속성 속성 설명 propagation Tx의 경계(boundary)를 설정하는 방법을 지정 isolation Tx의 isolation level을 지정. Default, READ_UNCOMMITED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLE readOnly Tx이 데이터를 읽기만 하는 경우, true로 지정하면 성능이 향상 rollbackFor 지정된 예외가 발생하면, Tx을 rollback RuntimeException과 Error는 자동 rollback noRollbackFor 지정된 예외가 발생해도, Tx을 rollback.. 2023. 4. 24. [스프링의 정석] AOP의 개념과 용어 1. 공통 코드의 분리 위와 같이 공통된 부분이 있는 코드가 있다고 한다면 import java.lang.reflect.Method; import java.util.regex.Matcher; import java.util.regex.Pattern; public class AopMain { public static void main(String[] args) throws Exception { MyAdvide myAdvide = new MyAdvide(); Class myClass = Class.forName("com.springmvcstudy.ch3.aop.MyClass"); Object obj = myClass.newInstance(); for (Method m : myClass.getDeclaredMe.. 2023. 4. 21. [스프링의 정석] Transaction, Commit, Rollback 1. Transaction 이란? 더이상 나눌 수 없는 작업의 단위 계좌이체의 경우, 출금과 입금이 하나의 Tx로 묶여야함 '모'아니면 '도'. 출금과 입금이 모두 성공하지 않으면 실패 2. Transaction의속성 ‒ ACID 원자성(Atomicity) – 나눌 수 없는 하나의 작업으로 다뤄져야 한다. 일관성(Consistency) – Tx 수행 전과 후가 일관된 상태를 유지해야 한다. 고립성(Isolation) – 각 Tx는 독립적으로 수행되어야 한다. 영속성(Durability) – 성공한 Tx의 결과는 유지되어야 한다. 3. 커밋(commit)과롤백(rollback) 커밋(commit) – 작업 내용을 DB에 영구적으로 저장 롤백(rollback) – 최근 변경사항을 취소(마지막 커밋으로 복귀).. 2023. 4. 21. 이전 1 2 다음