일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 클래스
- wrapper
- 싱글톤
- Jenkins
- 콜렉션
- dependency
- 컬렉션
- start.spring.io
- 루프
- boxing
- 무한
- 내장객체
- suvlet
- 박싱
- Scanner
- unboxing
- https://start.spring.io
- 자동형변환
- maven
- 인텔리제이
- Short
- 언박싱
- 싱글턴
- 제너릭
- 제네릭
- Java
- 스프링
- bootstrap
- 메소드
- 빌드
- Today
- Total
목록K-DigitalTraining 강의/8. JSP (31)
Developer Gonie
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bj2LSY/btrG8tmgfyZ/IlYRfeNhscphETjcrYUth1/img.png)
* Html의 태그는 보통 자식으로 '사용자 입력을 받는 요소'와, '입력한 것을 전송하기 위한 submit 타입의 버튼 요소'를 가진다. 기본 흐름은 사용자가 텍스트 입력 후, submit 버튼을 누를시 form 태그의 action 속성에 지정된 파일을 서버에 요청하는데 서버에 요청을 보낼 때 보통 사용자가 입력한 텍스트들을 같이 보내게 되어있다. 이 요청을 보낼 때 2가지 방식이 있는데 GET 방식과 POST 방식이 있으며 디폴트는 GET 방식이고 따로 지정해주고 싶다면 form 요소의 속성으로 method를 추가하면 된다. 직관적으로 눈에 보이는 get / post 방식의 차이 * get 방식은 url에 전달한 파라미터가 그대로 노출되고, post 방식은 url에 전달한 파라미터 정보가 숨겨진다. ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bG9zIt/btrG3KwgQtP/MfTtgGibR4iOoPW3kw4kOk/img.png)
* 특정 요소에 사용자가 입력한 값이 request 객체에 담기게 하려면 꼭 name 속성을 사용해야 해야 한다.(id 속성은 불가) * request 객체에서 내용을 꺼내쓸 한글데이터가 있다면 그 전에 한글을 위한 인코딩을 지정해줘야 한글이 깨지지 않는다. JSP의 내장객체 request 웹 브라우저의 요청 정보를 저장하고 있는 객체로, HTTP Header와 HTTP Body으로 구성되어 있다고 함. 태그의 자식으로 text 타입의 요소가 있는 상태에서 사용자 입력후 submit 타입의 버튼을 누를시, 브라우저는 form 태그의 action 속성에 지정된 파일을 서버에 요청하는데, request 객체는 요청을 보내는 바로 이 시점에 사용자 입력을 담아 생성된다. 이렇게 만들어진 request 객체는 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/GDUrI/btrG8Jh4uAm/pArjojSXi9oCL7ax0LATY1/img.png)
* 내장객체 'out' - JSP의 것으로 웹 브라우저와의 스트림을 담당하는 객체로, 이 객체의 print() 메소드를 사용하면 콘솔이 아닌 브라우저 화면영역에 출력하는 것으로 javascript의 document.write()과 유사 예시1(if문) 예시2(for문) 예시3(while문) 예시4(좀 더 복잡한 for문)
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/3yYZI/btrG3JRCLsc/ct8DBsiGZf63q4GLuX4LB1/img.png)
* Ex07_center.jsp 파일에서 Ex07_top.jsp 파일의 코드와 Ex07_bottom.jsp 파일의 코드를 각각 위 아래에 위치하도록 가져다 사용하는 것인데, 지시어는 다른 파일의 코드를 그대로 옮겨두기 위해 사용한다. * Ex07_bottom.jsp 파일은 name 변수가 존재하지 않아 단독으로 실행될 수 없었지만, Ex07_center.jsp 에서는 위 아래의 코드가 연결되기 때문에 Ex07_bottom.jsp 코드부가 정상작동할 수 있다. 지시어의 동작원리 Ex07_top.jsp Ex07_center.jsp Ex07_bottom.jsp
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cb0cEe/btrG3qxZ3KD/EnDill2q3MZkJhs5QyKB81/img.png)
JSP의 일반 태그들 사용 용도 1. '스크립트릿' 태그라고 부르며, 일반적인 자바 코드를 작성할 때 사용함 2. '표현식' 태그라고 부르며, 변수 출력 혹은 리턴값이 있는 메서드의 반환값을 출력할 때 사용함 3. '선언문' 태그라고 부르며, 메서드를 정의할 때 사용함 4. '주석' 태그라고 부르며, JSP 코드 부분을 통으로 주석처리할 때 사용함. (단, java 코드 영역에서는 java 주석을 그대로 사용) 5. '지시어' 태그라고 부르며, 다양한 용도로 사용된다. : 속성을 이용하여 현재 JSP 페이지의 처리 방법을 컨테이너에게 통보, java 클래스 import도 여기서 함 : 다른 파일의 코드를 해당위치에 그대로 복사 붙여넣기 할 때 사용한다. : 아직 사용해보지를 않아서 잘 모르겠음. JSP의..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dC3hNY/btrG4H6Ti8W/q4k7zFtVASkqQa14HxNMyk/img.png)
맨 윗줄에 뜨는 에러 제거 / 라이브러리 자동완성 기능 동작하게 하기 * 맨 위에 자동으로 추가되어 있는 라인에 오류가 뜨는데, 이건 무시해도 되는 에러이지만 해결하는 방법은 아래와 같다. * JSP파일 에서는 이걸 해줘야 라이브러리 자동완성 기능을 사용할 수 있고, JSP 코드에서 불필요한 에러도 사라진다. 톰켓 폴더안에 있는 servlet-api.jar 파일을 프로젝트 폴더 안에서 WEB-INF 폴더 아래 위치한 lib 폴더에 이 파일을 복붙하면된다. 코드 대부분에 에러가 발생하는 경우 아래와 같이 해결가능