콘솔을이용해서 입력받은 아이디와 비밀번호가
배열에 있는 값이라면 ~~? 없는값이라면~~? 브라우저에 출력한다.
id, password 입력 가정
String id="java";
String pw="servlet";
String ids[] = {"java", "servlet", "jsp", "jquery", "html"};
id와 pw 값들이 ids 배열 포함되어 있으면
id : xxxx , pw : xxxxx : 정상 로그인되었습니다
id와 pw 값들이 ids 배열 포함되어 있지않으면
id : xxxx , pw : xxxxx : 회원가입부터 하세요.
★. test.TestServlet 이름 정의
★. http://ip:port/프로젝트명/login
★. 출력 정상적 로그인 o 파랑색상
x 빨강색상
이번에는 Servlet만을 이용한 코드를 작성하였습니다.
보시다시피, String ids[] = {"java", "servlet", "jsp", "jquery", "html"}; 문자열 배열이 지정되있습니다.
그리고, 여지껏 기본틀은 Html페이지에서 만들어서 전달받았지만 이번에는 Scanner를 이용하였습니다.
Scanner를 통해 id의 값과 pw의 값을 입력받습니다.
그리고 이중포문안에서
(1) 만약에 id의 값이 ids[i]값과 같을때(층),
pw와 ids[j]의 값도 같다면(좌우)
로그인하셧습니다.
(2) 일치하는 값들이 없다면, 회원가입하세요라고 출력한다.
이때, 스위치기법을 이용해서 표현해봤습니다. 지역변수로써, sw=1로 초기화해줍니다.
그리고 만약에 입력한 아이디의 값이 배열에 있다면, sw=0이되면서 break; 처리한다.
하지만, 순서대로 실행했을경우 여전히sw=1라면, 회원가입하세요라는 출력문이 나오도록 했습니다.
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
|
public class exam1 extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Scanner sc = new Scanner(System.in);
response.setContentType("text/html; charset=utf-8");
String ids[] = {"java", "servlet", "jsp", "jquery", "html"};
System.out.print("id를 입력하시오:");
String id= sc.next();
System.out.print("pw를 입력하시오: ");
String pw=sc.next();
int sw=1;
PrintWriter out = response.getWriter();
for(int i=0; i<ids.length; i++){
for(int j=0; j<ids.length;j++){
if(ids[i].equals(id)){
if(ids[j].equals(pw)){
out.println("<h1 style='color:red'>"+id+"님이 로그인하셨습니다 </h1>");
sw=0;
break;
}
}
}
}
if(sw==1){
out.println("<h1 style='color:blue'>"+id+"는 없습니다. 회원가입하세요</h1>");
}
}//doGet-end
}
|
<코드결과>
(1)
(2)
'WEB 기초 > Jsp' 카테고리의 다른 글
[JSP] 7. 에러 및 주석정리 (0) | 2018.04.23 |
---|---|
[Only Servlet] 6. 주어진 배열값을 객체에 저장해서 출력하기 (0) | 2018.04.22 |
[Servlet] 4. 첫값부터 끝값까지 합계 구하기 (0) | 2018.04.22 |
[Servlet] 3. 로그인창 만들기 (0) | 2018.04.22 |
[Servlet] 2. 개인정보창 만들기 (0) | 2018.04.22 |