수업정리/스프링 (8) 썸네일형 리스트형 스프링20210624_RESTAPI @RestController - 비동기 요청을 받을 수 있는 컨트롤러 - 기존의 controller는 return에 값을 전달할때, model객체를 이용해서 다음화면에 전달함. - @RequestBody - json데이터를 분류해서 vo객체에 주입 - @ResponseBody - return을 요청이 들어온곳으로 보냄 jackson 라이브러리 설치 controller 작성 YARC - chrome확장프로그램 testVO 객체가 json 형식으로 변환 content-type : json 형식임을 확인 스프링20210623_게시판만들기(검색기능) 특정키워드로 검색했을 경우, 화면에 불러올 리스트와 페이지네이션에도 검색키워드가 남아있어야 한다. 1. 리스트를 불러올 DB에 필요 값을 전달해주는 Criteria에 검색을 담당할 변수 추가 2. 화면 구현 - 검색 ----개복잡함----- 스프링20210623_게시판만들기(페이지네이션) 요약 1. get방식으로 값 전달 2. 항상 페이지 번호를 가지고 있어야 해당 값을 조회 가능 3. 페이지네이션 처리 로직을 클래스로 분류(Criteria, PageVO) ======================================== 1. Criteria 클래스 - DB에 전달하기 위한 클래스 2. PageVO 클래스 - 화면에 전달하기 위한 클래스 3. getList 메서드 변경 public ArrayList getList(); ↓ public ArrayList getList(Criteria cri); 4. FreeBoardMapper.xml 의 SQL문(getList) ※주의점 : #{pageNum - 1} 로 작성시, "pageNum - 1"을 변수명으로 인식하여 예외발생 4-1. Fre.. 스프링20210622_게시판만들기 1. 글 작성 2. 글 목록 3. 글 상세 4. 글 수정 스프링20210621_롬북, 타일즈 뷰 템플릿 1. 롬북 - VO객체를 생성할때, 생성자와 getter, setter를 자동생성해주는 라이브러리 1) porm.xml 추가 org.projectlombok lombok 1.18.20 provided 2) 설치 3) 사용 @Data - 롬북적용(getter, setter) @AllArgsConstructor - 매개변수를 초기화하는 생성자 @NoArgsConstructor - 기본 생성자 4) 에러 모음 - 맥os에서 롬북을 설치하지 않고 사용한다고 선언할 경우, System.out.println(1111); [SQL 처리 메서드 호출] -> 1111이 출력되지 않고 바로 sql문 에러가 발생. -> getter, setter가 없기 때문에 insert 구문에서 null값을 삽입하는 에러가 발생함. 2... Spring_20210618_Test환경 어노테이션 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("file:참조할 파일 경로") 이전 포스트에서 설정한 Mybatis의 세션팩토리빈 객체가 제대로 주입되었는지 테스트 JUnit테스트로 실행 Spring_20210618_Mybatis 설정 Mybatis - 진짜 거의 대부분 사용함 - 개발자가 지정한 SQL, 고급 매핑을 지원하는 프레임워크 - JDBC코드와 수동으로 세팅하는 파라미터와 결과 매핑을 제거 - 복잡한 JDBC코드를 걷어내고 깔끔한 소스코드 유지 - DAO 계층을 대체 - 기존 DAO의 Interface의 구현클래스를 xml파일이 대신 - 자동 Connection객체 생성, Close() 처리, PreParedStatement 처리 - #{name} 을 통한 ? (PreParedstatment 값 전달) 처리 - 리턴 타입으로 자동 ResultSet처리 ======================================== 사용법 SQLSessionFactory 필요 - Mybatis의 핵심객체. - 스프링 컨테이너에 빈으로.. Spring_20210617 Java를 이용해 DB(데이터베이스)를 다루는 JDBC는 1. Connection 객체 생성 2. PrepareStatement 객체 생성 3. SQL문 실행 4. ResultSet 객체 생성, 결과 처리 위와 같은 작업을 계속 반복하는 단점이 있습니다. 그래서 Spring에서는 기존 JDBC의 장점을 유지하면서도 간결한 형태의 API 사용법을 제공합니다. ------------------------------------------------------------- 웹 애플리케이션에서는 동시에 여러 명의 사용자를 처리해야 합니다. 때문에 사용자의 요청이 있을 때마다 매번 DB에 연결하는 방식이 아닌, Connection Pool을 사용하여 미리 정해진 개수만큼 커넥션을 풀에 준비해두고 요청이 있을 때마다.. 이전 1 다음