비동기 통신 fetch 사용법 DB작업을 하기 위해 뷰->컨트롤러->뷰->컨트롤러 계속 페이지를 이동해야 하는데 페이지 이동 없이 비동기 통신으로 DB기능을 구현할 수 있습니다. -비동기 통신의 종류 promiss, fetch - JS 비동기 ajax - JQuery 비동기 axios - React 비동기 첫 번째 Fetch 방식 fetch('/', { //요청경로 method: 'POST', cache: 'no-cache', headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' }, //컨트롤러로 전달할 데이터 body: new URLSearchParams({ // '데이터명' : 데이터값 }) }) .then((re..
게시물 조회수 만드는 법 게시물을 클릭할 때마다 조회수가 올라가게 만들기 mapper 파일에 조회수 컬럼을 증가시킬 수 있도록 UPDATE 쿼리문을 작성해줍니다. READ_CNT = READ_CNT + 1 여기서 WHERE절은 조회를 한 게시물의 조회수가 올라가야하기때문에 글 상세보기 쿼리문과 동일하게 PK인 BOARD_NUM = #{boardNum}으로 주면 됩니다. 메소드 구현부 글 상세보기할 때 만들어준 컨트롤러에 조회수 증가 메소드를 실행시켜주면 됩니다. DB 연결하기 참고하면 좋은 글 https://bagun-coding.tistory.com/entry/Spring-Boot-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-DB-%EA%B8%B0%EB%8A%A5-..
게시판 글 번호 매기기 DB를 게시판에 나타낼 때, DB의 컬럼(BOARD_NUM)으로 받아올 경우 숫자가 뒤죽박죽이 될 수 있습니다. 이럴 경우 타임리프 문법으로 게시물의 갯수만큼 숫자를 매겨서 목록에 나타낼 수 있습니다. 전달된 boardList를 타임리프 문법으로 하나씩 뷰에 나타낼 때, th:each="board, state : ${boardList}" 꺼내는 데이터 변수(board) 옆에 또 다른 변수(state)를 넣을 수 있습니다. [[${state.index}]] : 0부터 숫자가 하나씩 매겨짐 [[${state.count}]] : 1부터 숫자가 하나씩 매겨짐 숫자를 역순으로 매겨야 하기 때문에 출력되는 배열리스트의 총개수를 나타내는 size()함수에서 index를 빼주면 됩니다. [[${..
eclipse github 연결하는 법 우측 상단에 Perspective 클릭 Git을 열어줍니다. Clone a Git repository Clone URI 깃허브에서 새저장소 만들어 주소를 넣어줍니다. User에는 깃허브 이름 Password에는 깃허브 토큰을 넣어주면 됩니다. 자바 프로젝트에서 우측클릭 -> Team -> Share Project 생성한 주소를 선택해주면 됩니다.