웹개발/jsp

[JSP]#3 연산자 제어문 반복문

RBWSN 2015. 3. 22. 20:58
728x90
JSP에서의 연산자는 자바와 똑같다.


기본적인 연산자와 데이터 타입이다.

예를들어 int n = 10;
이라고한다면  n이라는 변수에 10이라는 정수형 데이터가 들어가있다는 뜻이다.

자주쓰고 보다보면 느니깐 개념만 익혀 놓으면된다.
그리고는 JSP에서의 제어문을 보자 조건문,반복문 에는  if switch if ~else  for문 등등 몇개있는데 먼저 if문을 보자

if else문은
만약에 너의 성별이 남자라면 맞으면 if문의 실행을 틀리면 else문의 실행을 할것이다.
else if가 중간에 들어가면 if문을 확인한뒤 그것도 아니라면 else if -> else 순으로 나아간다.



먼저 하기전 톰캣 기반에서의 한글 처리를 해주어야하는데 한글처리를 해주지않으면 이렇게 된다.



일단 브라우저에서 서버로 넘어오는 파라미터 값에 한글이 있을경우는 
서버의 
server.xml에서   저부분에 

URIEncoding을 추가한다.
 그리고 실제 서비스하는 환경은 톰캣 홈 폴더에도 설정한다.



이방법은 get방식일 때 적용되는 방법이고
Post 방식에서는 이 코드를 추가 시켜주어야한다.
<% request.setCharacterEncoding("utf-8"); %>
이코드만 추가시키면 한글이 잘 받아와질것이다.

자이제 if문을 보자 성별을 입력받는 폼인데 남 이라면 남자라는 문구가 여 라면 여자라는 문구가 그것도 아니라면 성별을 제대로 입력하세요를 출력할것이다.

먼저 결과화면을 보자


여자도 실행해보면 똑같이 나타날것이다.

코드는 이렇게 작성이되었다.

03-1.jsp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IF문 실습</title>
</head>
<body>
<h2>성별을 입력 받는 폼(남/여)로 입력해주세요</h2>
<form action="03-1-2.jsp" method="post"<%-- 포스트방식 --%>
<input type="text" name="sex"><%-- 데이터 입력폼 --%>
<input type="submit" value="입력완료">  <%-- 확인버튼 --%>
 
</form>
 
 
</body>
</html>
cs
03-1-2.jsp

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
32
33
34
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>성별 비교 출력</title>
</head>
<body>
<h2>성별 출력 폼</h2>
<%request.setCharacterEncoding("utf-8");%> 
<%
String strsex = request.getParameter("sex"); // 이름이 sex로 된 폼의 성별을 받아서옴 
if("남".equals(strsex)){ // 만약 sex의 값이 남 이라면
    
%>
당신의 성별은 <%=strsex%>자입니다. <%-- 남자 출력 출력 --%>
<%}
else if("여".equals(strsex)){ // 만약 아니라면
    
%>
당신의 성별은 <%=strsex%>자입니다. <%-- 여자 출력 --%>
 
<%}else{
    out.print("성별을 제대로 입력하세요");
%>
 
 
 
 
 
</body>
</html>
cs
이번에는 반복문의 종류인 for 문을 보도록하자.
for문은 정해진 조건까지 계속 반복문을 돌리는 것이다.

for(초기값; 조건문 ; 증감문)

예제로 보도록하자


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>FOr문</title>
</head>
<body>
<h2>FOR문 실험</h2>
<%!
String str[] = { "국어","영어","수학","과학","사회","국사"};
%>
 
<%for(int i=0; i<str.length;i++){
    out.println("과목 " + i + str[i] +" <br>");
}
   %>
 
 
 
</body>
</html>
cs





이밖에도 while과 switch문이 있지만 사용방법은 비슷하므로 넘어가도록 한다.

다음에는 JSP의 객체와 태크에 대해서 알아보겠다.





 
728x90