[getBoard] HashMap이용 _025_ -BoardDAO.java getBoard 수정 -board-mapper.xml SELECT * FROM T_BOARD WHERE BOARD_NO = #{boardNo} -common패키지에 CamelHashMap클래스 생성 -sql-map-config.xml에 알리아스 추가 m.ezen.springboard.vo.CamelHashMap" alias="camelHashMap"> Project/SpringBoard 2022.11.29
[업로드 된 파일 수정] _025_ 1.파일 업로드 잘 되는지 확인 -Boardservice, serviceImpl, DAO 게시글 등록의 int를 다시 void로 변경. -BoardController.java fileliest를 파일 업로드 기능 구현 위로 옮김. int boardNo = boardService.insertBoard(boardVO); 주석 게시글등록 마지막에 // 첨부 파일에 boardNo를 매핑하기 위해서 // insert후 boardNo(insert된 게시글의 boardNo)를 리턴하여 사용한다. boardService.insertBoard(boardVO, fileList); 작성 //해당 폴더가 존재하지 않으면 폴더 생성 주석 아래 //multipartFile 배열에서 파일들을 꺼내 DB 형식에 맞게 변경한다. //.. Project/SpringBoard 2022.11.28
[파일 업로드] _025_ 24번 복사해서 25번 생성SpringBoar_FileUpload - pom.xmxl 의존성 주입. jackson-databind 2.13.3버전 아래 추가. Apache Commons FileUpload » 1.4 commons-fileupload commons-fileupload 1.4 Apache Commons IO » 2.11.0 commons-io commons-io 2.11.0 -servlet-context.xml 맨 아래에 추가. -MySQL 워크벤치 CREATE TABLE T_BOARD_FILE( BOARD_NO INT, BOARD_FILE_NO INT, BOARD_FILE_NM VARCHAR(100), BOARD_ORIGIN_FILE_NM VARCHAR(50), BOARD_FILE_PAT.. Project/SpringBoard 2022.11.25
[페이지 클릭시 해당페이지로 이동] _024_ 1. 아래 페이지 숫자 클릭하면 페이지 넘어가도록해줌 -getBoardList.jsp 아래, 추가. script 작성. $(function() { $(".pagination a").on("click", function(e) { e.preventDefault(); //a태그 원래 동작을 막아줌. $("input[name='pageNum']").val($(this).attr("href")); //this:지금 클릭한 거 $("#searchForm").submit(); }); }); 이전, 다음버튼 수정. 이전 다음 +) 선택된 페이지 볼드주는거 해보기 -pageVO.java 버튼 표출여부판단 수정 this.prev = cri.getPageNum() > 1; 2. 문제점) 게시글목록에서 마지막 페이지 이동하고.. Project/SpringBoard 2022.11.25
[페이징처리] _024_ VO 패키지에 클래스 2개 생성(Criteria, PageVO) 5. 페이징 처리 -Criteria.java 작성 -PageVO.java 작성 -getBoardList.jsp 이전 1 2 3 4 5 다음 -> 버튼이 세로로 나와서 스타일 추가 -BoardController.java //게시글 목록 화면으로 이동 @RequestMapping("/getBoardList.do")에서 Criteria cri 객체 추가 -BoardService.java //게시글 목록 조회에서 Criteria cri 추가 -BoardServiceImpl.java -> Criteria cir 추가 -BoardDAO.java Map에서 파라미터 두개 못하니까 Map을 새롭게 또 만들어야 함. 따라서 최종 추가 public List .. Project/SpringBoard 2022.11.24
[게시글] 수정/삭제/검색 _023_ 1. 게시글 수정(updateBoard) 2. 게시글 삭제(deleteBoard) ※ board-mapper.xml에서 위에 또 updateBoard랑 deleteBoard있었음. 주석하고 실행해야 에러 안 뜸. 3. 검색기능 -getBoardList.jsp ... 추가 -BoardController.java //게시글 목록 화면으로 이동 - 내용 수정 및 추가 public String getBoardList(Model model, @RequestParam Map paramMap) { List boardList = boardService.getBoardList(paramMap); -BoardService.java - 추가 //게시글 목록조회 List getBoardList(Map paramMap); -B.. Project/SpringBoard 2022.11.24
[목록조회&조회수] _023_ -BoardController.java ->BoardService.java -> BoardServiceImpl.java -> BoardDAO.java 1.게시글 등록작성 -board-mapper.xml BOARD를 T_BOARD로 수정. 2.로그인했을때만 게시글 작성이 가능하도록 -insertBoard.jsp에 boardWriter에 내용 추가 value="${loginUser.userId }" readonly -BoardController.java //게시글 등록 화면으로 이동 //로그인한 유저의 정보가 세션에 없을 때 로그인 화면으로 이동 3.게시글 목록 조회 -getBoardList.jsp ajax 작성 -BoardController.java //게시글 목록 가져오는 로직처리 4. 목록처리 첫번째 .. Project/SpringBoard 2022.11.23
[회원가입진행&로그인/아웃] _023_ -join.jsp 3개의 변수. 플래그 생성 비밀번호 확인에 p태그(비밀번호 조건) //비밀번호 유효성검사 일치여부 등등 1.회원가입 진행 (UserController -> Service -> serviceImpl -> DAO -> mapper) //회원가입 실패 시 -login.jsp에 추가 -UserController.java에서 회원가입 성공 여부 추가 회원가입 성공시, 로그인화면으로 이동. 2. 로그인화면 -UserController.java -login.jsp -header.jsp 3. 로그아웃 -UserController.java @GetMapping("/logout.do") public String logout(HttpSession session) { session.invalidate(); .. Project/SpringBoard 2022.11.22
[아이디중복체크] Ajax_023_ 오전에, 게시판 기능 만들기 오후에, 조별프로젝트 _023_ webapp 폴더 안에 js폴더 생성 다운받은 JQUERY옮겨넣기 -header.jsp 를아래 작성 안에 홈로 수정 -워크벤치에서 T_BOARD,T-USER 테이블 생성 CREATE TABLE T_BOARD ( BOARD_NO int primary key, BOARD_TITLE VARCHAR(200), BOARD_CONTENT VARCHAR(2000), BOARD_WRITER VARCHAR(20), BOARD_REGDATE DATETIME, BOARD_CNT int ); CREATE TABLE T_USER ( USER_ID VARCHAR(40) PRIMARY KEY, USER_PW VARCHAR(40), USER_NM VARCHAR(40), U.. Project/SpringBoard 2022.11.21
[AJAX] Ajax(Asynchronous Javascript And Xml) # 1.Ajax(Asynchronous Javascript And Xml) 1. Ajax란 - 자바스크립트에서 지원하는 비동기 통신 모듈 - 비동기 통신 모듈을 사용하면 화면의 전체를 변경하는 게 아니고 원하는 부분만 변경할 수 있다. 2. Ajax의 두 가지 방식 - 순수 자바스크립트로 사용(XmlHttpRequest): 이 방식은 사용법이 복잡하여 잘 사용되지 않는다. - Jquery의 Ajax: Jquery라이브러리에서 Ajax을 사용하기 편하게 구성해놓음. - $.ajax(get, post)({ 설정 값 }) - 순수 자바스크립트의 ajax보다 사용하기 편리하여 많이 사용된다. - ajax로 호출된 요청에서는 json형태의 데이터를 리턴. 3. Jquery ajax의 설정 값들 - $.ajax({.. Project/SpringBoard 2022.11.21