๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ’ปWEB BackEnd/JSP

์›น๋””์ž์ธ ํ”„๋ ˆ์ž„์›Œํฌ - Bootstrap & jQuery

๋ถ€ํŠธ์ŠคํŠธ๋žฉ ์ ์šฉ

1) ์•„๋ž˜ ๋งํฌ์—์„œ "Compiled Css and Js" ์˜ Downloadํด๋ฆญ

https://getbootstrap.com/docs/5.0/getting-started/download/

 

2) ๋‹ค์šด๋กœ๋“œ ๋ฐ›์€ ํŒŒ์ผ ํ”„๋กœ์ ํŠธ์— ์‚ฌ์šฉ

webapp > cssํด๋”, jsํด๋” ์ƒ์„ฑํ•˜๊ณ  bootstrap.min.cssํŒŒ์ผ๊ณผ bootstrap.min.jsํŒŒ์ผ ๋„ฃ๊ธฐ

 

JQuery ์ ์šฉ

1) js > popper.js ํŒŒ์ผ ์ƒ์„ฑ

popper.js ํŒŒ์ผ์— ์•„๋ž˜ ๋งํฌ ์ฝ”๋“œ ๋ณต๋ถ™!

https://unpkg.com/popper.js@1.12.9/dist/umd/popper.min.js

 

2) jQuery ์„ค์น˜

์•„๋ž˜ ๋งํฌ์—์„œ JQuery ๋‹ค์šด๋กœ๋“œ 

https://jquery.com/download/

jquery.min.js ํŒŒ์ผ ์ƒ์„ฑํ•ด์„œ ์œ„ ๋งํฌ ์ฝ”๋“œ ๋ณต๋ถ™!

 

 

ํ”„๋กœ์ ํŠธ ๋‚ด ์ถ”๊ฐ€ CSS, JS ์„ค์ •

webapp ํด๋” > index.jsp ํŒŒ์ผ ์ƒ์„ฑ ์•„๋ž˜์™€ ๊ฐ™์ด ์„ค์ • ์ฝ”๋“œ ์ถ”๊ฐ€

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
    <!-- ๋ฐ˜์‘ํ˜•์„ ์œ„ํ•œ ๋ทฐํฌํŠธ ์„ค์ • -->
	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
	<title>๊ฐ•์˜ํ‰๊ฐ€ ์›น ์‚ฌ์ดํŠธ</title>
	<!-- ๋ถ€ํŠธ์ŠคํŠธ๋žฉ css ์ถ”๊ฐ€ํ•˜๊ธฐ -->
	<link rel="stylesheet" href="./css/bootstrap.min.css">
	<!-- ์ปค์Šคํ…€ css ์ถ”๊ฐ€ํ•˜๊ธฐ -->
	<link rel="stylesheet" href="./css/custom.css">
</head>
<body>

	
	<!-- ์ œ์ด์ฟผ๋ฆฌ ์ž๋ฐ”์Šคํฌ๋ฆฝํฌ ์ถ”๊ฐ€ํ•˜๊ธฐ -->
	<script src="./js/jquery.min.js"></script>
	<!-- popper ์ž๋ฐ”์Šคํฌ๋ฆฝํฌ ์ถ”๊ฐ€ํ•˜๊ธฐ -->
	<script src="./js/popper.js"></script>
	<!-- ๋ถ€ํŠธ์ŠคํŠธ๋žฉ ์ž๋ฐ”์Šคํฌ๋ฆฝํฌ ์ถ”๊ฐ€ํ•˜๊ธฐ -->
	<script src="./js/bootstrap.min.js"></script>
</body>
</html>

 

ํฐํŠธ ์ ์šฉํ•˜๊ธฐ

1) css ํด๋” > custom.css ํŒŒ์ผ ์ƒ์„ฑ 

 

2) ๊ตฌ๊ธ€ ํฐํŠธ์— ๋“ค์–ด๊ฐ€ ํฐํŠธ ์„ ์ •

custom.cssํŒŒ์ผ์— ๊ตฌ๊ธ€ ํฐํŠธ ์ฝ”๋“œ ๋ณต๋ถ™!

@import url(https://fonts.googleapis.com/earlyaccess/jejugothic.css);
@import url(http://fonts.googleapis.com/earlyaccess/nanumgothic.css);
.navbar-brand, h1, h2, h3, h4 {
	font-family: 'Jeju Gothic';
}
h5 {
	font-family: 'Jeju Gothic';
	font-size: 18px;
}
body {
	font-family: 'Nanum Gothic';
}

 

Nav ๋ฐ” ์„ค์ •ํ•˜๊ธฐ

<body>
	<nav class="navbar navbar-expand-lg navbar-light bg-light">
	    <div class="container-fluid">
			<a class="navbar-brand" href="index.jsp">๊ฐ•์˜ํ‰๊ฐ€ ์›น ์‚ฌ์ดํŠธ</a>
		    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
		      <span class="navbar-toggler-icon"></span>
		    </button>
		    <div class="collapse navbar-collapse" id="navbarSupportedContent">
		        <ul class="navbar-nav mr-auto">
		        	<li class="nav-item active">
						<a class="nav-link" href="index.jsp">๋ฉ”์ธ</a>
					</li>
					<li class="nav-item dropdown">
			          <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
			            ํšŒ์›๊ด€๋ฆฌ
			          </a>
			          <ul class="dropdown-menu" aria-labelledby="navbarDropdown">
			            <li><a class="dropdown-item" href="#">๋กœ๊ทธ์ธ</a></li>
			            <li><a class="dropdown-item" href="#">ํšŒ์›๊ฐ€์ž…</a></li>
			            <li><a class="dropdown-item" href="#">๋กœ๊ทธ์•„์›ƒ</a></li>
			          </ul>
			        </li>
		      	  </ul>
			      <form action="./index.jsp" method="get" class="form-inline my-2 my-lg-0">
					<input type="text" name="search" class="form-control mr-sm-2" type="search" placeholder="๋‚ด์šฉ์„ ์ž…๋ ฅํ•˜์„ธ์š”." aria-label="Search"/>
					<button class="btn btn-outline-success my-2 my-sm-0" type="submit">๊ฒ€์ƒ‰</button>
				  </form>
		      </div>
	     </div>
	</nav>
</body>