티스토리 뷰
지난 시간에는
- 개발 환경설정
- index.jsp 생성 후 Hello World 출력
Goal
- 부트스트랩을 통해 로그인 페이지를 디자인한다
- 네이게이션을 구현한다.
- 로그인 양식을 작성한다.
index 페이지란?
- 홈페이지에 처음 접속했을 때 실행되는 홈페이지 ex) 네이버 메인 화면, 구글 메인 화면
1. 인덱스페이지에 접속하면 로그인 화면으로 이동시키기
- index.jsp 파일의 body 태그에 <script> 문장 삽입
- index.jsp에서 서버를 실행하면 login.jsp 화면을 띄워준다 (login.jsp파일이 만들어져있지 않으면 404오류를 띄움)
<body>
<script>
location.href = 'login.jsp';
</script>
</body>
2. 기본적인 웹사이트틀 잡기
- 홈페이지를 만들때는 디자인을 먼저 입히고 기능을 만들어 주는 경우가 일반적이다.
1) EUC-KR을 UTF-8 로 바꾸기
- UTF-8 : 최근에 많이 사용되는 국제적인 인코딩 언어, 한글, 영어를 다 포함한 문자를 보여줌
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSP Web Site</title>
</head>
<body>
<script>
location.href = 'login.jsp';
</script>
</body>
</html>
3. login.jsp 파일에 부트스트랩 적용하기
1) 디자인을 위해 부트스트랩 JSP에 설정하기
*3.3.7 버전 사용
부트스트랩 홈페이지 이동 -> css, JS, fonts 파일을 C\:JSP 폴더에 다운로드 후 압축 풀기 -> 압축이 풀린 폴더에 있는 CSS와 JS, fonts 폴더를 복사 -> 프로젝트의 WebContents 파일에 붙여 넣기
2) 반응형 웹에 사용되는 메타태그를 <head>안에 입력함
- 기본적으로 부트스트랩은 컴퓨터, 핸드폰 등 어떤 디바이스에 접속하더라도 해상도에 맞게 디자인이 변경되는 템플릿임
3) 스타일 시트를 참조하는 링크 작성
- css폴더의 bootstrap.css파일을 참조하겠다고 알리는 코드 작성
4) 애니메이션을 담당할 자바스크립트를 참조할 코드 작성
- jquery를 특정한 홈페이지에서 가져올 수 있게 함
- 부트스트랩에서 기본적으로 제공해주는 javascript파일 또한 코드로 넣어줌
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!--2) -->
<link rel="stylesheet" href="css/bootstrap.css"> <!--3) -->
<title>JSP Web Site</title>
</head>
<body>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script> <!--4) -->
<script src="js/bootstrap.js"></script>
</body>
</html>
4. 네비게이션 구현하기
- 네비게이션 : 하나의 웹사이트에 전반적인 구성을 보여주는 것
1) header 구현하기
- header : 홈페이지의 로고같은 것을 담는 영역
- button을 만든다
- icon-bar : 맨 오른쪽의 하나의 작대기
- navbar-brand : 로고 같은 것을 의미
<body>
<nav class="navbar navbar-default">
<div class="navbar-header"> <!-- 여기서 부터 -->
<button type="button" class="navbar-toggle collapsed"
data-toggle="collapse" data-tartget="#bs-example-navbar-collapse-1"
aria-expanded="false">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="main.jsp">JSP Web Site</a>
</div>
</nav>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="js/bootstrap.js"></script>
</body>
2) nav 구성요소 navbar 구현하기
- Main, Board 만들기
- dropdown 만들기
<body>
<nav class="navbar navbar-default">
<div class="navbar-header">
<!-- ... -->
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <!-- 여기서부터-->
<ul class="nav navbar-nav">
<li><a href="main.jsp">Main</a></li>
<li><a href="bbs.jsp">Board</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle"
data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">Login<span class="caret"></span></a>
</li>
</ul>
</div>
</nav>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="js/bootstrap.js"></script>
</body>
3. dropdown-menu 구현
- Enter를 클릭할 경우 메뉴가 쭈루룩 나오게 하기
- active : 단 한개의 홈페이지에만 선택할 수 있으며 현재 선택이 되었다는 의미, 화면상에서는 현재 해당 페이지라면 파란색으로 글씨가 뜬다
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<!-- ... -->
<li class="dropdown">
<a href="#" class="dropdown-toggle"
data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">Enter<span class="caret"></span></a>
<ul class="dropdown-menu"> <!-- 여기서 부터 -->
<li class="active"><a href="Login.jsp">Login</a></li>
<li><a href="join.jsp">SignUp</a></li>
</ul>
</li>
</ul>
</div>
4. 로그인 양식 만들기
- post : 회원가입이나 로그인 처럼 정보를 숨기면서 보낼 수 있는 요청방식
- action : 해당 페이지로 정보를 보낸다
- text-align: center : 문장을 가운데 정렬
- placeholder : 값이 입력되지 않았을 때 화면에 보여지는 문구
- name : 서버프로그램을 작성할 때 사용되는 요소
<body>
<nav class="navbar navbar-default">
<!-- ... -->
</nav>
<div class="container"> <!-- 여기서 부터 -->
<div class="col-lg-4"></div>
<div class="col-lg-4">
<div class="jumbotron" style="padding-top: 20px;">
<form method="post" action="loginAction.jsp">
<h3 style="text-align: center;">Welcome!</h3>
<div class="form-group">
<input type="text" class="form-control" placeholder="ID" name="userID" maxlength="20">
</div>
<div class="form-group">
<input type="password" class="form-control" placeholder="Password" name="userPassword" maxlength="20">
</div>
<input type="submit" class="btn btn-primary form-control" value="Login">
</form>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="js/bootstrap.js"></script>
</body>
'JSP > MVC1 게시판 만들기' 카테고리의 다른 글
로그인 기능 구현하기 (0) | 2020.04.14 |
---|---|
회원 데이터베이스 구축하기 (0) | 2020.04.14 |
개발 환경 설정, Hello World (0) | 2020.04.13 |
- 20200406
- likelion
- 20200423
- 20200420
- 20201204
- 20200622
- 20200510
- 20200428
- chapter8
- 20200421
- 20200415
- 20200624
- 20200804
- 20200429
- 20200427
- 20200512
- 생활코딩리눅스
- 20200417
- 20200330
- 20200403
- 20200504
- 20200503
- 20200502
- 20200413
- 백준
- 20200317
- chapter7
- 20200424
- 20200425
- 20200319
- Total
- Today
- Yesterday