분류 전체보기 329

22.08.22 - [ 10차 시험! - 서버 프로그램 구현 ]

10차 TEST 진행! 이번 시험 과목은 애플리케이션 설계 파트 어느덧 10번째 시험시간 이번 시험은 그동안 해왔던 CURD 작업이나 JSTL 사용법만 알아도 수월할 거라는 말씀 그리고 아마 지금 진행하고 있는 세미프로젝트하면서도 익숙한 내용일 것이라고 하셨다. 평가자 체크 리스트 서술형 2가지의 문제유형으로 테스트를 진행하였다. 서술형 WS vs WAS 의 차이점 JSTL 라이브러리 사용하는 과정 인코딩 작업 등등 평가자 체크 리스트 서블릿으로 등록하기 xml파일에서 서블릿 매핑하기 private 필드를 바탕으로 getter/setter - toString - Constructor 만들기 수업시간에도 많이 해보고 프로젝트 진행하면서도 계속 반복했던 내용들이라서 수월했던 시험이었다. 저번 시험에 비해 난..

22.08.19 - [ WAS ] Ajax - Json 활용해서 응답하기 ( feat. Gson )

-- Index -- 1. JSON 이란? 2. Gson 3. toJson() JSON 폼 문자열 { key : value } 라이브러리 toJson() 객체보내기 리스트보내기 객체안에 객체보내기 1. JSON 활용해서 객체를 문자열로 만들어서 응답하기 1-1 : JSON 이란? JavaSctipy Object Notation json은 그냥 문자열이다. 근데 그냥 문자열이 아니라 – javascript 객체 문법 { ket: value } 형식으로 만들어진 문자열 네트워크 전송은 문자열로만 이루어진다. 1-2 : JSON 라이브러리를 사용하지 않고 ajax 응답 결과로 객체를 전달하려면? # 서블릿 쪽에서 클라이언트 쪽으로 객체를 보낼 때 # # 라이브러리 사용안하고 보내려면 이런 작업 필요 # 1-3..

22.08.19 - [ WAS ] Ajax : Asynchronous JavaScript and XML

-- Index -- 1. Ajax란? 2. Ajax 사용해보기 3. data 다뤄보기 4. 사용자 입력 data로 요청 웹 페이지의 전체가 아닌 일부분만을 갱신 url , method data success, error 파라미터로 응답 값 받기 { key : value } 데이터 관리 $( #id ) . val() { key : value } 1. Ajax 란? ## 웹 페이지 전체를 다시 로딩하지 않고도, 웹 페이지의 일부분만을 갱신 ## ex) 좋아요 버튼 하트를 누르면 하트가 칠해지고 끝난다. 근데 1.내가 2.게시글3번 3.좋아요 눌렀다는 것을 서버에 알려야 한다. 하트만 색칠해주면 되는데 + 서버에 알려주기만하면 되는데 + 새로운 페이지 다시 보여줄 필요 없는데 이런 상황에서 사용! 이것을 가..

22.08.18 - [ WAS ] Filter

-- Index -- 1. Filter 란 2. Filter 만들기 3. Filter 메서드 4. @WebFilter의 정석 특정 urlPattern에 대해서 무조건 거쳐가야하는 서블릿 implement @WebFilter @Override doFilter() chain.doFilter() init doFilter destroy xml 파일에서 매핑작업 1. Filter 란? tomcat에 요청을 보낼 때 여러 서블릿(직원)들이 있는데 그중에서도 입구에서 무조건 거쳐가야 하는 서블릿이 필터! 정확히 말하면 입구 = 특정 urlPattern에 대해서 무조건 거쳐가야 하는 서블릿이 필터! 어느 곳에서 요청을 보내는지 상관없이 Filter 의 url pattern이랑 매칭이 되면 해당 요청 잡아서 처리해준다...

22.08.17 - [ WAS ] JSTL - Java server pages Standard Tag Library

-- Index -- 1. 서버- 라이브러리연결 2. 라이브러리- 파일연결 3. core 라이브러리 4. function 라이브러리 5. format 라이브러리 jar파일 서버와 연결 taglib prefix uri if, foreach varstatus set, out choose-when-outerwise ${ fn: } length() split() toLowerCase() parseDate formatDate 1. JSTL 라이브러리 연결하기 파일 다운로드하여서 연결하기 CDN 방식으로 연결하기 1-1 : 라이브러리 파일을 연결시켜주어야 해석 가능하다. EL은 jasper가 ${ } 코드를 해석해서 동작하게 해 주듯 JSTL 라이브러리 연결해놓아야지만 jasper가 이거는 if/for 이런 거구나..

22.08.16 - [ WAS ] EL - Expression Language

-- Index -- 1. EL이란? 2. java코드를 없애자 3. EL 사용해보기 4. EL 확장 사용 5. 연산자 Expression Language ${ key } 저장소 특정스코프 파라미터 배열 MAP 객체 empty eq, ne not 등 1. EL 이란? Expression Language 저장소에 들어있는 attr를 표현하는 방법 저장소란? - page , request , session , application 2. JSP 파일에서 java코드를 없애고 보다 쉽게 사용 가능하도록 해준다. 현재 JSP 파일에서 java코드를 사용하려면 태그 이용하여 값을 넣어주거나 태그로 변수를 선언한 후 태그로 변수를 가져와서 값을 넣어주었다. 이 작업마저도 결국엔 java코드를 사용하는 것이다. 어떻게..

22.08.15 - 광복절 휴강, 주말 개인과제 제출, 세미프로젝트 작업

13일 토 / 14일 일 / 15일 월 연휴를 가지게 되었다. 연휴기간동안 시골에 벌초도 다녀오고 주말개인프로젝트 과제 제출하고 세미프로젝트 화면 작업을 마무리 하였다. 8.13 ~ 8.14 개인 과제 회원 + 자유도메인 정해서 CRUD 작업 해보기 화면은 css 금지 form ↔ controller(servlet) ↔ service ↔ dao ↔ DB 작업 진행 해보기 *** 필수 1. 회원가입 2. 로그인 - 회원정보수정, 회원탈퇴 : 선택사항 *** 자유도메인 ( 게시판 CRUD 작업으로 진행 ) 8.13 ~ 8.15 세미프로젝트 화면 작업 마무리 화면 작업 마무리하고 16일 회의 후에 마무리 작업하고 백엔드 작업 시작 예정

22.08.12 - [ WAS ] 파일 입력받기

-- Index -- 1. enctype 2. @MultipartConfig 3. getPart() 4. 파일 읽어와서 서버에 등록하기 5. 보조스트림활용해서 읽고/쓰기 6. ChangeName 7. DB - INSERT작업 태그의 속성 지정 필요 maxFileSize와 maxRequestSize 지정 필요 파일을 가져올때는 getPart() 인풋스트림(읽고) 아웃풋스트림(쓰고) bufferd스트림 활용 ext now random if문 result2 초기값 separator 0.파일 입력받기 # 사용자로부터 파일 전달받으면 어떻게 할 건지?? 다운로드할 필요 없이 파일 경로만 알고 있으면 된다. 우리는 그럼 톰캣이 돌아가고 있는 서버에다가 사진 넣어놓고 사진 경로만 잘 처리해줘서 보여주면 된다. # 흐..

22.08.11 - [ WAS ] 페이징 처리

-- Index -- 1번 ~ 6번 7번~8번 9번 10번 페이징에 필요한 데이터 값 구하기 pageVo로 뭉치고, 조건맞게 조회해오기 pageVo활용해서 화면보여주기 버튼 만들기 페이징 처리 ( 컨트롤러에서 처리한다. ) 필요 data 체크 및 세팅 시작 페이지 / 끝나는 페이지 / 게시글 수 등을 알아야 페이징 처리 가능하다. listCount , currentPage, pageLimit, boardLimit maxPage, startPage, endPage 1. listCount : [ 현재 게시글 총 개수 ] 구하기 1-1 DB 가서 알아와야 한다. - ( SELECT 작업 ) 1-2 dao 작업 - SELECT COUNT() SELECT작업이지만 COUNT( ) 함수 사용으로 결과값이 하나만 나..

22.08.10 - [ WAS ] 상세게시글 ( 목록이동 / 삭제하기 / 수정하기 )

-- Index -- 1. 목록이동 2. 삭제하기 3. 수정하기 contextPath와 서블릿으로 화면 요청 게시글 번호를 담아서 삭제 요청 화면요청은 get 방식 수정요청은 post 방식으로 받아서 처리 상세 글 ( 목록 이동 / 삭제하기 / 수정하기 ) 1. 목록 이동 공지사항 상세조회에서 ---> 공지사항리스트로 이동 jsp 파일을 보여달라고 직접 요청하는 경우는 없도록해주자 –> 서블릿에게 요청해서 화면 보여주기 contextPath()를 이용 – 최상단 디렉토리를 모르거나 – 어떤 상황에 맞게 변경되는 경우도 있기 때문에 - contextPath()로 사용하기. 2. 삭제하기 몇 번 글 삭제할지 알려주어야 한다. - 쿼리 스트링 사용하기 이걸 바탕으로 Controller – Service – D..