본문 바로가기

전체 글395

5월 25일 Spring - 게시글 수정 처리 contents와 만드는 방법 동일 1. wirteForm.jsp 수정할 페이지에 원래 제목, 내용, 첨부파일 불러오기 설정, 뒤로가기 링크다시 설정, form action부분 수정 2. borardcontents - upboard에 javascript로 링크 설정 3. boardcontroller 링크설정 4. boardsevice 5. boardcontroller 연결 수정 글쓰기 = 글쓰기와 동일 1. boardcontroller 2. boardDto - boardDto.xml 3. boardservice 4. boardcontroller 연결 수정 파일 개별 삭제 1. updateForm.jsp 2. boardcontroller 3. boarddto - boarddto.xml 4. boardsev.. 2023. 5. 25.
5월 24일 Spring - 홈페이지 삭제 처리 1. boardcontents - javascript function delCheck(bnum){ let conf = confirm("삭제하시겠습니까?"); if(conf == true){ location.href = "delete?b_num=" + bnum; } } 2. boardcontroller @GetMapping("delete") public String boardDelete(Integer b_num, HttpSession session, RedirectAttributes rttr) { log.info("boardDelete()"); String view = bServ.boardDelete(b_num, session, rttr); return view; } 3. boardservice publi.. 2023. 5. 24.
5월 24일 Spring - 게시판 다운로드, 댓글 처리 WEB request 객체 - response 객체 request 객체 - 글쓰기 정보(제목, 내용, 파일 등) 서버에서 전달 받아서 모이는 장소 -> 서버 DB -> 저장이 잘 되었는지 응답객체 response(msg, view-jsp) 데이터만 넘기는 방식 : 비동기 방식 return값은 data modelandview는 사용자에게까지 데이터가 전달되는 것이 아니라, view의 jsp까지만 전달되고, html파일로 변환되어 사용자에게 전달(spring 프레임워크 내부에서만 사용) 사용자에게 직접 전달되기 위해서는 respons 객체를 이용해야 한다. 1. boardcontents.jsp 2. boardcontroller 자원 - 파일 3.boardservice HTTP 상태 및 해당 코드 1) 정상(.. 2023. 5. 24.
5월 23일 Spring - 파일 처리, 홈페이지 게시물 상세 파일 업로드 처리 시 유의 사항 1) form 태그에 enctype="multipart/form-data" 를 반드시 작성해야 한다. 2) 컨트롤러에서 파일을 받을 때 @RequestPart 어노테이션을 해당 파라미터 앞에 붙인다. 3) 파일을 받기 위한 매개변수는 List여야 한다. List 4) 매개변수 이름은 파일 태그에 name 속성 값과 같아야 한다. 또는 @RequestPart("name속성값")으로 작성한다. 5) 파일을 전송하거나 하지 않거나 List의 사이즈는 최소 1이다. 파일 목록의 사이즈가 1이고 첫번째 파일의 이름이 ""(공백)이면 파일을 전송한 것이 아니다. 다수의 파일 태그를 사용한 전송 시 컨트롤러에서 파일을 받을 때 개별적으로 처리할 수 있으며, 파일 목록 용 DTO를 작성.. 2023. 5. 23.
1099. 성실한 개미 영일이는 생명과학에 관심이 생겨 왕개미를 연구하고 있었다. 왕개미를 유심히 살펴보던 중 특별히 성실해 보이는 개미가 있었는데, 그 개미는 개미굴에서 나와 먹이까지 가장 빠른 길로 이동하는 것이었다. 개미는 오른쪽으로 움직이다가 벽을 만나면 아래쪽으로 움직여 가장 빠른 길로 움직였다. (오른쪽에 길이 나타나면 다시 오른쪽으로 움직인다.) 이에 호기심이 생긴 영일이는 그 개미를 미로 상자에 넣고 살펴보기 시작하였다. 미로 상자에 넣은 개미는 먹이를 찾았거나, 더 이상 움직일 수 없을 때까지 오른쪽 또는 아래쪽으로만 움직였다. 미로 상자의 구조가 0(갈 수 있는 곳), 1(벽 또는 장애물)로 주어지고, 먹이가 2로 주어질 때, 성실한 개미의 이동 경로를 예상해보자. 단, 맨 아래의 가장 오른쪽에 도착한 경우,.. 2023. 5. 22.
5월 22일 Spring - 홈페이지 게시글 게시글 목록 번호 1. 번호 고정 2. 누르는 번호를 가운데 ex) 구글 가운데 1/2, start+1 end +2 start end 생성자 = 초기화 글쓰기 1. wirteForm.jsp 2. controller 3. 글쓰기에서 뒤로가기 버튼처리 뒤로가기 버튼을 눌렀을 때 임시저장된 페이지가 아니라 서버 검색을 하고 다시 출력될 수 있도록 조치가 필요함 File upload HTML의 태그의 file type은 기본적인 파일 선택 창을 제공한다. Multi-part : 한 웹 문서 안에 문자와 바이너리 데이터(이미지, 동영상, 음성 및 기타 형식의 파일 등)가 함께 포함되어 있는 상황 MIME(Multipurpose Internet Mail Extension) 전자우편(e-mail)을 위한 인터넷 표준.. 2023. 5. 22.
5월 19일 Spring - 홈페이지 게시글 목록 처리 로그인 성공 이후 -> 게시글 목록 페이지로 이동 url : list 목록 페이지에서 처리할 내용 - 접속자(회원 정보) 출력 - 게시글 목록 출력 - paging 처리 - 제목, 내용 검색 - 글쓰기 버튼 처리 필요 클래스 - BoardDto - SearchDto - BoardController - BoardService - BoardDao 게시판 파일 만들기(순서 상관없음 만들기 편한 순서로) 1. boardDto : view blist = member, board join 2. SearchDto pageNum 변수 이름 통일 3. BoardController list 변수 이름 통일 view = "redirect:list?pageNum=1"; 4. BoardDao - mapper - BoardDao.. 2023. 5. 19.
5월 18일 Spring - 홈페이지 로그인 DB 연동 DB 관련 로그 찍기(Log4jdbc) https://mvnrepository.com/ https://mvnrepository.com/artifact/org.bgee.log4jdbc-log4j2/log4jdbc-log4j2-jdbc4.1 org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4.1 1.16 application.properties 설정 spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy spring.datasource.url=jdbc:log4jdbc:mysql://127.0.0.1:3306/board_db?serverTimezone=Asia/Seoul resource폴더에 다음 파일.. 2023. 5. 18.
1098. 설탕과자 뽑기 부모님과 함께 유원지에 놀러간 영일이는 설탕과자(설탕을 녹여 물고기 등의 모양을 만든 것) 뽑기를 보게 되었다. 길이가 다른 몇 개의 막대를 바둑판과 같은 격자판에 놓는데, 막대에 있는 설탕과자 이름 아래에 있는 번호를 뽑으면 설탕과자를 가져가는 게임이었다. (잉어, 붕어, 용 등 여러 가지가 적혀있다.) 격자판의 세로(h), 가로(w), 막대의 개수(n), 각 막대의 길이(l), 막대를 놓는 방향(d:가로는 0, 세로는 1)과 막대를 놓는 막대의 가장 왼쪽 또는 위쪽의 위치(x, y)가 주어질 때, 격자판을 채운 막대의 모양을 출력하는 프로그램을 만들어보자. 입력 첫 줄에 격자판의 세로(h), 가로(w) 가 공백을 두고 입력되고, 두 번째 줄에 놓을 수 있는 막대의 개수(n) 세 번째 줄부터 각 막대의.. 2023. 5. 18.
5월 17일 Spring - 홈페이지 회원 가입 DB 연동 1. SQL : root계정 - schemas - creat schema - board_db 2. users and privileges - add account - buser / password 입력 - schema privileges - board_db 추가 select all 3. home - mysql connections + - username / password 입력 - test connection - ok 4. 생성 - SQL 테이블 불러오기 1. java 프로젝트 파일 만들기 2. pom.xml 3. main/webapp/WEB-INF/views 4. resources/mappers 5. static/ css, js, images 6. java/board/ controller, dao, dt.. 2023. 5. 17.
1097. 바둑알 십자 뒤집기 부모님을 기다리던 영일이는 검정/흰 색 바둑알을 바둑판에 꽉 채워 깔아 놓고 놀다가... "십(+)자 뒤집기를 해볼까?"하고 생각했다. 바둑판(19 * 19)에 흰 돌(1) 또는 검정 돌(0)이 모두 꽉 채워져 놓여있을 때, n개의 좌표를 입력받아 십(+)자 뒤집기한 결과를 출력하는 프로그램을 작성해보자. 참고 가로 번호, 세로 번호를 사용할 수 있는 2차원 배열을 사용하면 이러한 형태를 쉽게 기록하고 사용할 수 있다. 물론 더 확장한 n차원 배열도 만들 수 있다. 예시 int n, i, j, x, y; int a[20][20]={}; for(i=1; i 2023. 5. 17.
5월 16일 (2) Spring - AJAX DB 연동 REST(REpresentational State Transfer) 방식 = 비동기 전송 방식(지금 하고 있는 ajax방식의 다른 이름) uri(url)를 통해 자원(데이터)을 명시하고, method(get/post)를 사용하여 해당 자원의 CRUD를 적용하는 방식. REST 전송을 위해 jQuery 에서 구현한 것이 AJAX Spring Framework에서는 REST 방식을 처리하는 Controller를 제공 -> RestController 1) 일반 Controller 사용 시 메소드에 @ResponseBody 어노테이션 사용 @GetMapping("idcheck") @ResponseBody //let sendObj = {"uid":inputId}; public String idcheck(Strin.. 2023. 5. 17.