MyBatis 10

10. REST API와 Ajax - 패스트캠퍼스 백엔드 부트캠프 3기

1. JSON이란?Java Script Object Notation(간단) - 자바 스크립트 객체 표기법xml(복잡) - 데이터 교환, data보다 Tag가 더 많음{ 속성명 1: 속성값1, 속성명2: 속성값2, ... }[{ 속성명: 속성값,...}, {속성명: 속성값,...},...] // 객체 배열{키1:{속성명: 속성값,...}, 키2:{속성명: 속성값,...},...} // Map2. stringify()와 parse()JS객체를 서버로 전송하려면, 직렬화(문자열로 변환)가 필요직렬화 : 객체 데이터를 저장하거나 전송할 수 있도록 문자열로 변환하는 과정서버가 보낸 데이터(JSON문자열)를 JS객체로 변환할 때, 역직렬화가 필요JSON.stringify() - 객체를 JSON 문자열로 변환(직렬화..

MyBatis 2025.03.17

9. SpringBoot로 검색, 게시물 표시 수 지정 - 패스트캠퍼스 백엔드 부트캠프 3기

1. 검색기능쿼리작성search_cnt - 검색 후 페이지의 수를 지정하기 위한 쿼리 select count(*) from board where title LIKE CONCAT('%', #{search}, '%')search - 검색 쿼리 SELECT * FROM board WHERE title LIKE CONCAT('%', #{search}, '%') ORDER BY bno desc LIMIT #{offset}, #{nav}public interface BoardDao { int count(); List selectPage(Map map); BoardDto select(int bno); void insert(BoardDto boardDto); ..

MyBatis 2025.03.06

6. 게시판 읽기, 쓰기, 삭제, 수정 기능구현(2) - 패스트캠퍼스 백엔드 부트캠프 3기

1. 게시물 쓰기 기능의 구현boardList.jsp에 글쓰기 버튼을 추가하고 누르면 Get방식으로 BoardController에 write()메서드를 불러오고 write()메서드는 board.jsp에서 게시판 글쓰기 뷰를 불러온다.boardList.jsp fastcampus ">Home ">Board ">login ">Sign in 글쓰기 번호 제목 이름 등록일 조회수 ${boardDto.bno} ">${bo..

MyBatis 2025.03.04

5. 게시판 읽기, 쓰기, 삭제, 수정 기능구현(1) - 패스트캠퍼스 백엔드 부트캠프 3기

1. 기능별 URI 정의URL : 리소스 경로(전체 경로)URI : 유일한 이름(URL일부 경로) 2. 게시물 읽기 기능의 구현board.jsp fastcampus ">Home ">Board ">login ">Sign in 게시물 읽기 ${boardDto.content} 등록 수정 삭제 목록  목록을 누르면 BoardController에 Get요청이가고 list() 메서드가 호출이되고 boardService를통해 getPage를 실행 가져온 Page를 List에 담아서  반환한 것을 BoardList에 구현boardList..

MyBatis 2025.03.03

4. 게시판 목록 만들기와 페이징/TDD (2) - 패스트캠퍼스 백엔드 부트캠프 3기

1. BoardDaoImpl추가BoardDaoImpl 클래스@Repositorypublic class BoardDaoImpl implements BoardDao { @Autowired SqlSession session; // 마지막에 .붙여주기 String namespace="com.fastcampus.ch4.dao.BoardMapper."; // select @Override public BoardDto select(int bno) throws Exception{ return session.selectOne(namespace+"select", bno); } // insert @Override public int insert(Boar..

MyBatis 2025.02.28

3. 게시판 목록 만들기와 페이징/TDD (1) - 패스트캠퍼스 백엔드 부트캠프 3기

1. 게시물 목록 페이징 2. LIMIT[offset, ] row_countoffset -> 얼마나 떨어져있는가row_count -> 읽어올 row의 수PageHanlder 클래스@ToStringpublic class PageHandler { int totalCnt; // 총 게시물 갯수 int pageSize; // 한 페이지의 크기 int navSize = 10; // 페이지 내비게이션의 크기 int totalPage; // 전체 페이지의 갯수 int page; // 현재 페이지 int beginPage; // 내비게이션의 첫번째 페이지 int endPage; // 내비게이션의 마지막 페이지 boolean showPrev; ..

MyBatis 2025.02.27

2. MyBatis로 DAO작성하기 - 패스트캠퍼스 백엔드 부트캠프 3기

1. BoardDao의 작성첫째, DB테이블 생성 create table board( bno INT AUTO_INCREMENT primary key not null, title varchar(100) not null, content text not null, writer varchar(30) not null, view_cnt int default 0, comment_cnt int default 0, reg_date datetime default now(), up_date datetime default now());둘째, Mapper XML & DTO작성셋째, DAO인터페이스 작성(생략가능)넷째, DAO인터페이스 구현 & 테스트 2. DTO란? - Data Tra..

MyBatis 2025.02.27

1. MyBatis의 소개와 설정 - 패스트캠퍼스 백엔드 부트캠프 3기

1. MyBatis란?SQL Mapping Framework - Easy & Simple자바 코드로부터 SQL문을 분리해서 관리매개변수 설정과 쿼리 결과를 읽어오는 코드를 제거작성할 코드가 줄어서 생상성 향상 & 유지 보수 편리 web.xml contextConfigLocation /WEB-INF/spring/root-context.xml org.springframework.web.context.ContextLoaderListener appServlet org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/spring/appServle..

MyBatis 2025.02.27