일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- 싱글톤
- 내장객체
- Scanner
- maven
- wrapper
- bootstrap
- dependency
- 클래스
- https://start.spring.io
- 빌드
- 콜렉션
- 제네릭
- 자동형변환
- 메소드
- Java
- boxing
- 언박싱
- 박싱
- 루프
- 무한
- 컬렉션
- 제너릭
- Jenkins
- 스프링
- unboxing
- suvlet
- Short
- 싱글턴
- start.spring.io
- 인텔리제이
- Today
- Total
목록K-DigitalTraining 강의/8. JSP (31)
Developer Gonie
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/I23bo/btrHeqXxVrY/YbNu3qs0jhblKFwsXz5Q8k/img.png)
JSP에서 다음 페이지로 데이터를 전달시키는 4가지 방법(참고) https://ldgeao99-developer.tistory.com/438 [9주차] 9. JSP에서 다음 페이지로 데이터를 전달시키는 4가지 방법 * 두번째, 세번째 방식은 get 방식으로 보내는 것과 같음 첫번째 방법 태그의 자식으로 이런 요소를 추가하여, 보내고 싶은 값을 value 속성에 넣어주고, 이동한 페이지에서 request 객체를 통해 접근 ldgeao99-developer.tistory.com 예시 Tip! insert 작업이 끝난뒤 select 결과를 보여주는 페이지로 이동하는데, 여기서는 수정,삭제, 삽입 등을 할 수 있다. 수정 혹은 삭제 클릭시 대상의 번호 값을 태그의 파라미터로 추가하여 보내는 것을 주의깊게 봐두자..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/wThqP/btrHdbG5aPv/s4VDI4VNo3ov5sKLZR4Jq1/img.png)
JavaBean이란? Bean 또는 VO(Value Object) 또는 DTO(Data Transfer Object) 라고도 한다. 데이터의 전달을 위해 만든 클래스로 데이터를 담을 private 멤버변수와 그 변수를 조작할 수 있는 public의 getter, setter 메서드로 구성된다. JavaBean 클래스의 내부 형태가 궁금하다면 참고할 링크(https://ldgeao99-developer.tistory.com/268) JavaBean을 다루는 액션태그 3가지 * 액션태그는 내부적으로 jsp의 내장객체 request를 이용한 동작을 수행하므로 사용시 맨 위의 라인에 request.setCharacterEncoding("UTF-8"); 을 적어두고 사용하는게 좋다. * 액션태그의 동작 결과를 이..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/YTc5k/btrG9KW8BnU/pwL3ilGfZWK21GpBkbqdE0/img.png)
* 서블릿 파일의 확장자는 .java 이다. 이클립스에서 jsp 코드들을 작성 후 실행하면 위와 같은 과정을 거치게되어 다음과 같은 총 3군데에 비슷한 코드 파일들이 생성된다. 1) 워크스페이스에서 내가 코드를 작성한 위치 - 이클립스에서 작성한 코드 그대로 예상되는 위치에 그대로 있는 곳 - C:\JSP_ysy/ 이하 해당 프로젝트 이름의 폴더의 최하위로 이동했을 때 존재 2) 웹서버 폴더의 위치(업로드 기능을 사용하면 여기에 올라옴) - 1)에서 작성한 jsp파일이 그대로 복사되어 존재하며, 서버가 실행이 될 때 웹서버 폴더에 위치한 이 파일이 실제로 실행됨. - C:\JSP_ysy\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ 이하..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bgQeUE/btrHap6xhZr/jfCqBMKRfBXcgHgqxU19RK/img.png)
JSP에서의 DELETE 쿼리문 수행 deleteFrom.jsp -> deleteProc.jsp
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/nYboX/btrHagancFV/b6lZpEWbTKIZ12ykiCcRC1/img.png)
JSP에서의 UPDATE 쿼리문 수행 updateFrom.jsp -> updateProc.jsp select.jsp 파일의 코드는 바로 이전 게시물 참고
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/brWzuY/btrG8Hsa8f8/et1mIjzfh4wEmkayr1uAe1/img.png)
JSP에서의 INSERT 쿼리문 수행 select.jsp 파일의 코드는 바로 이전 게시물 참고
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oHKg2/btrHbUKmZ62/dfamzLTXinoJQ4Ka1TSkzk/img.png)
JSP에서의 JDBC 사용준비 C:\Oracle\product\12.2.0\dbhome_1\jdbc\lib\ojdbc8.jar 파일 WEB_INF 폴더 아래 lib 밑에 옮기기 JSP에서의 SELECT 문 조회 * 과거에 java 코드에서 JDBC를 이용한 코드를 작성할 때, 여러가지 예외들을 try-catch 문으로 처리해줘야 했다. 그러나, JSP에서 JDBC 관련 코드를 작성할 때는 예외처리가 나중에 서블릿 java 파일로 변환될 때 자동으로 포함되기 때문에 안 해줘도 된다. Select register 쿼리 아이디 비번 이름 성별 이메일 @ 혹시라도 실행해보고 싶다면 참고 drop table register; create table register( id varchar2(10) primary ke..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bVOCLr/btrG8RAYy73/8COGD6YVS47VKoyiYsjUmK/img.png)
forward 액션태그란? 이전에 작성한 글에서 include 액션태그는 실행 결과를 가져오기 위해 흐름이 요청한쪽으로 이동했다가 응답으로 실행한 결과를 가지고 돌아왔는데, forward 액션태그는 흐름이 요청한 쪽으로 한 번 이동하면, 실행이 끝나도 다시 되돌아 가지 않는다. 즉, 응답이 없다. 이래서 돌아오지 않고 앞으로 전진하는 것이기 때문에 이름 자체가 forward라고 붙려지는거 같다. 세부적인 차이점을 비교하지 않는다는 가정하에 큰 틀에서, 페이지를 이동하는 것이기 때문에 response.sendRedirect() 혹은 태그와 같은 기능으로 볼 수 있다. 다른 점으로 forward 액션태그는 이동한 곳에서 이전에 존재하던 request 객체를 공유한다는 점 정도가 있다. 이 액션태그가 사용되는..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bhyVC6/btrG9Uw7gEq/01NJEKorEOfatTbAAo5UMk/img.png)
액션태그란? JSP에서만 사용가능한 태그이며, 태그 작성시 xml 문법을 따른다.(xml 내부에서 주석을 작성하면 오류나니 유의해야함) 이런 형태로 생겼으며 뭔가의 행동을 간결하게 태그로 표현하기 때문에 이 이름으로 불리는 듯 하다. * 네임스페이스 : 동일한 이름이 충돌하지 않도록 하나의 그룹으로 묶어주기 위해 사용하는 이름 include 액션태그란? * include 지시어와는 완전 기능이 다르다. include 지시어는 외부 파일의 코드 자체를 특정 위치에 복붙하는 기능을 하였다. include 액션태그는 태그가 있는 자리에 요청한 파일의 실행결과를 가져오기 위해서 잠시 흐름이 요청된 파일로 이동했다가 다시 돌아오는데, 돌아올 때 실행 결과를 가져온다. 따라서, include 액션태그는 다른 jsp..
* 두번째, 세번째 방식은 get 방식으로 보내는 것과 같음 첫번째 방법 태그의 자식으로 이런 요소를 추가하여, 보내고 싶은 값을 value 속성에 넣어주고, 이동한 페이지에서 request 객체를 통해 접근하는 방법 두번째 방법 response.sendRedirect("파일경로?변수=" + 변수값)의 인자에 붙여주는 방법 -> 이동한 페이지에서 request 객체를 통해 접근 세번째 방법 이동하기 네번째 방법 session객체에 붙여주는 방법
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b6Y6Nt/btrG8m87jIJ/OADld0B29GyDzhDhkC7atK/img.png)
JSP의 내장객체 session 브라우저 1개당 1개가 생성되며, 브라우저가 계속해서 공유할 데이터를 저장하는 객체이다. 로그인 중인지 아닌지 확인하거나 시간이 지나면 자동으로 로그아웃 되는 기능을 구현할 때 사용된다. session 객체는 같은 브라우저에서 이리저리 움직이는 동안에도 살아있어 어디서든 접근이 가능하다. ex) 태그 a의 하이퍼링크를 타고 이동한 도착지 혹은 response.sendRedirect() 해서 도착한 도착지 등 JSP의 내장객체 session의 메소드 1) setAttribute(key, value) session객체 내부에 pair 형태로 데이터를 저장한다. 2) getAttribute(key) session객체 내부에 저장해둔 데이터중에 key 값에 해당하는 vaule 값..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9LM2h/btrG3rDHJdN/WKab8Dnucrx7qW7lgV7NkK/img.png)
JSP의 내장객체 response 웹 브라우저로 보낼 응답 정보를 저장하는 객체로 이 객체를 조작하면 브라우저로 보낼 응답을 조작할 수 있음 JSP의 내장객체 response의 메소드 - sendRedirect("파일경로") 지정한 파일경로로 이동함. 단, 이동한 곳에서 request 객체를 공유하지 않는다. 사용자 입장에서 볼 때 DB에 insert 연산 등의 과정을 사용자에게 보여줄 필요가 없을 때 사용 1) 페이지1(jsp) : 회원가입 폼 입력 및 전송 클릭 2) 페이지2(jsp) : DB에 insert 연산 -> 실행은 되지만 사용자에게 뭔가를 보여주고 싶지는 않은 곳에서 이 메소드를 사용하면됨 3) 페이지3(jsp) : 회원가입을 축하합니다 이동한 곳에서 request 객체를 공유하지 않기에 ..