2024. 9. 9. 17:55ㆍJSP
JSP : Java Server Pages
- HTML 코드 안에서 자바 코드를 작성할 수 있음
- 모든 java 코드를 html 안에 작성하는게 아니라 부분적으로 필요한 기능만 java로 작성
- Thymeleaf와 같은 환경으로 사용
- Dynamic Web Project 나 Springboot 환경으로 실행
- 즉 타임리프를 JSP 형식으로 작성하면 됨
JSP 문법을 사용하기 위해선 index.jsp 페이지에서 <% %> 안에 자바처럼 작성해주면 됨
<% %> : java 코드 실행 태그
- <% %> 안에 java 코드를 넣으면 해당 코드가 서버에서 실행.
- 웹 브라우저에서 직접 출력되는 것이 아니라, 서버에서 처리를 진행하고 결과를 다시 HTML 태그로 전달해서 보여줌
- 대부분의 java 코드 허용. 변수 선언 및 조건문, 반복문 작성
※ JSP에서 System.out.println을 사용할 때는 System을 지워주고 사용
<%
String name = "홍길동";
out.println("이름 : " + name);
%>
jsp를 사용하기 위해선 프로젝트 우클릭 -> Properties -> Java Build Path -> Libraries -> Add Library -> Server Runtime -> Apache Tomcat 설정
요즘은 Springboot + JSP 에서 Springboot + React (+ NextJs or TypeScript) 로 바뀌는 중
- 예제
<pre>만약 i가 10보다 클 때 10보다 크다 출력</pre>
<%
int i = 0;
if(i > 10){
out.println("i가 10보다 큼");
}
else{
out.println("i가 10보다 작음");
}
%>
이 때 자바 코드들만 따로 <% %> 로 묶고 println(텍스트) 부분을 HTML 형식으로 바꿀 수 있음 -> 텍스트 서식을 위함
<% int a = 0;
if(a > 10) {%> <!-- 자바 태그로 설정 -->
a가 10보다 큼 <!-- 일부러 텍스트를 자바 태그에서 제외 -> 텍스트 서식을 위함 -->
<% }else{ %> <!-- 다시 자바 태그로 설정 -->
<p>a가 10보다 작음</p>
<% } %>
<%
int b = 4;
if(b > 1){%>
<p>1보다 큼</p>
<% }else if(b >= 4 && b <= 5){%>
<p>4 ~ 5 사이에 존재함</p>
<% }else{ %>
<p>10보다 작음</p>
<% } %>
switch문 예시
<h1>switch 활용 JSP</h1>
<%
int b = 3;
switch(b) {
case 1:%>
<span><%= b %>는 1임</span>
<% break;
case 2:%>
<span><%= b %>는 2임</span>
<% break;
case 3: %>
<span><%= b %>는 3임</span>
<% break;
default:%>
<span><%= b %>는 몰?루</span>
<% break;
}%>
<%= %> : java 표현식의 결과를 HTML로 출력할 때 사용
위 태그에서 선언한 변수를 다른 태그 안에서 불러오고 싶을 때 사용
-> 위에서 선언한 name 변수를 다른 태그에서도 사용하고 싶을 때
<p>이름 : <%= name %></p> <!-- 위에서 작성한 name을 여기서도 작성함을 의미 -->
<%! %> : 메서드에 대한 설정을 작성할 때 사용
<%!
//메서드 선언
public String Greeting(){
return "하이요";
}
%>
** <%! %>, <%= %>, <% %> 활용하기
<%
//위에서 작성한 Greeting 호출해서 결과 출력
String greeting = Greeting();
%>
<p>인사말 : <%= greeting %></p>
또 다른 예제 for 문 돌리기
<%
for(int i = 1; i < 6; i++){%>
<p>i 값 : <%= i %></p>
<%}%>
'JSP' 카테고리의 다른 글
jsp-EL (0) | 2024.09.11 |
---|---|
jsp - jstl (1) | 2024.09.10 |
JSP + springboot 연결 (0) | 2024.09.09 |