본문 바로가기

구디 아카데미 수료 과정/Servlet + JSP

(19)
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•56일차/01.11 tomcat 10의 파일 업로드 commons-fileupload2 jsp에 작성 servlet에 작성 getServletContext().getRealPath() -> 상대경로를 만들어줌!!!!! mkdir과 mkdirs 차이 -> mkdirs는 파일 단계가 2단계 이상 비어있을때 자동으로 만들어줌 -> items에 data와 글들을 담아서 갖고있게 됨 ->dto를 담는 relfection 패턴 방법 1. FileupladDto 라는 애를 객체로 바라보지 않고 그냥 클래스로(글자로) 바라보겠다는 이야기 2. 그다음 field에 접근할수있도록 setAccessible 3. fileDto가 선언된 아이한테 fieldValue를 줌..? 파일일경우 파일업로드 진행 파일 다운로드 기능 다운로드는 라이브러리없음..
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•55일차/01.10 Tomcat 9버전을 사용할 때 서블렛을 만드는 방법 1.web.xml 4.0으로 수정 2. maven update (Deployment Descriptor 가 4.0인지 확인하기) 3. Facet에서 tomcat 9.0 연결 4. pom.xml dependency tomcat9버전에 맞게 받기 (jakarta가 아니라 javax 여야 함) 5. 서블렛도 다른방식으로 만들어야함 쿼리문 해석 쿼리해석 1 . ANSWERBOARD 테이블에서 SEQ, ID, TITLE, CONTETN, CREATEAT 열을 선택 2. FILEBOARD 테이블에서 서브쿼리를 사용하여 ANSWERBOARD a의 SEQ와 FILEBOARD의 B_SEQ가 일치하는 갯수 (게시글에 첨부된 파일의 갯수)를 CNT 열에 저장 3. ROW..
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•54일차/01.09 라이브러리 개발 1. 라이브러리를 위한 패키지는 서블렛이 없기 때문에 httpservlet request, response를 사용할수 없음 그래서 메이븐 레파지토리에 가서 web.xml에 dependency를 걸어줘야함 (jakarta-> jakarta Servlet ->6.0.0) 2. 원하는 기능을 넣고, 주석으로 라이브러리 문서까지 만든 후에 jar타입으로 Export 3. 만든 라이브러리를 import 하고자 하는 프로젝트의 pom.xml에서 repositories(저장소)를 추가해줌 -> 우리는 우리 폴더에있는거니까 local로 선언 4. library 파일명을 arificatiId와 동일하게 만든 후 해당 경로에 집어넣고 dependency에 추가 Servlet에서 alert 작동 후 화면이동..
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•53일차/01.08 게시판 상세페이지 기능 구현 1. a 태그로 boardDetail servlet 호출하면서 해당 seq와 일치하는 글정보를 가져옴 2. 제목 표시 1. boardDetail servlet에 dao 선언해주고 2. dao에 있는 selectDetailBoard(seq) 메서드 실행시켜주고 3. 그걸 dto에 담아서 set해 boardDetail.jsp 만들어서 거기에 set 한 dto 받고 / 로그인 세션정보도 가져와(여기선 header에 선언돼있어서 주석처리) 그 다음 내용 받으면 끝 DB 의 date 자바의 date 원하는 형태로 바꾸기 (가능하면 DB에서 처리할 것) 1. 쿼리문을 원하는 형태로 바꿈 ( 마지막에 AS 하고 원하는 컬럼명 쓰는거 확인) 2. 만약 한글이랑 섞고싶다면 컨켄트네이션으로 만..
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•52일차/01.05 lombok http://www.projectlombok.org에서 다운로드 받아서 Eclipse의 환경설정을 해줘야 한다 eclipse.ini 파일의 마지막 줄에 lombok 추가 됐는지 확인하기 => 은닉화 (Encapsulation) 되어 있는 DTO(Data Transfer Object), VO(Value Object)의 형태를 Annotation 방법(@Data~)으로 구현해준다 멤버필드/ getter/ setter /toString/ Constructor 작성해서 구성을 해줘야 한다 멤버필드의 갯수가 많을 때, 멤버필드의 변수명이 변경될 때 DataBase의 컬럼명이 변경됐을 때, 매핑처리를 위해서 사용 -> Annotation 방법을 사용해서 Class 위에 @Data 선언하면 자동으로 Lo..
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•51일차/01.04 부모테이블과 자식테이블을 구분할 수 있는 방법 이행스크립트 상에서 자식테이블에는 FK가 있음 FK를 갖고 있다 -> 자식테이블 FK = 다른 테이블의 PK 가 나의 속성으로 들어와서 사용된다. LPAD 사용법 TITLE 값 왼쪽에 DEPTH열 값에 10을 곱한만큼 ' '을 붙일거야 그리고 그걸 TITLE 이라는 컬럼명으로 출력해 서류 토대로 흐름도 작성 마이바티스 다시 web.xml 복붙 1. pom.xml ->finalname 밑에 plugins -> plugin -> artifactid (maven-compiler-plugin) -> version 3. 10. 0 ->configuration -> 소스 -> 타겟 -> plugi 하나더 -> artifactid(maven-war-plugin) -> v..
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•50일차/01.03 MVC1 MVC2 하나의 페이지에다가 M V C 다 넣는거? (4-Tier -> M오라클, 마이바티스 사용했다는 뜻 ) 뷰V-> HTML(JS ES5, ES6-export, import, class, arrow function, let, const) C - JSP , SPRING JSP 기본객체(implicit), 스코프(Scope) scope란? 값을 전달할 수 있는 객체 page Scope: 내가 보이는 jsp에서만 사용할 수 있는 애 request Scope: 내가 어디서 받아 왔거나 전달해 준애 (1번만 전달) Session Scope: 내가 사용하고 있는 어플리케이션이 계속 로드돼서 세션이 사라지기전에는 사용 application Scope: session이랑 상관 없이 계속해서 사용 page ..
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•49일차/01.02 welcom-file-list 위에부터 순서로 파일이 열림 없을경우 다음 걸로 Servlet의 선언방법 1. web.xml에 1:1 매핑하기 servlet-class에 해당하는 클래스를 만든뒤 거기에 RequestDispatcher로 servlet2.jsp로 가도록 설정한뒤 servlet2.jsp를 쳐야함 (주소창에 매핑된 /servlet2.do 를 치면 매핑된 HelloServlet2가 호출되고 거기의 RequestDispatcher를 타고 servlet2.jsp로 가는ㄱ임 2. Annotation 선언 방법 해당 클래스에 바로 매핑하는거니까 name은 필요없음 urlPattern만 적어주면 됨 InitParam도 Annotation 방식으로 선언ㄱ ㅏ능 init-param 초기값 -> 위의 Hello..