jsp๋ฅผ ์ด์ฉํด์ ํ๋ก ํธ๋ฅผ ๊ตฌํํ๊ณ ์๋ ์์ค์ script ๋ถ๋ถ์์ ๋ฐฑํฑ์ ์ฌ์ฉํ๋๋ฐ ๋ฐฑํฑ ์ถ๋ ฅ์ด ์ ๋์ง ์์๋ค.
let name = 'ํ๊ธธ๋';
let greeting = `์๋
ํ์ธ์, ${name}๋!`;
console.log(greeting);
์ด๋ ๊ฒ ์ ๋ ฅ์ ํ๋ฉด
// ์๋
ํ์ธ์, ๋!
๊น์ง๋ง ์ถ๋ ฅ์ด ๋๋ ํ์์ด ์์๋ค. (๋ณ์์ ์๋ ๊ฐ์ด ์ถ๋ ฅ์ด ์ ๋๋ค๐ฅน)
jsp๋ฅผ ์ฌ์ฉํ๋ ํ๋ก์ ํธ๋ ์ ์์ ๋ถ ํ๋ ์์ํฌ๋ฅผ ์ด์ฉํ๋๋ฐ, ์ฌ๊ธฐ์ ๋ฐฑํฑ ์ฌ์ฉ์ ๋ง์๋? ํ๋ ์๊ฐ์ ํ์๋ค.
์๋๋ฉด ์ด ๋ฐฉ๋ฒ ์ ๋ฐฉ๋ฒ ๋ค ํด๋ดค๋๋ฐ ๋ฐฑํฑ์์ ๋ณ์๊ฐ ์ถ๋ ฅ์ด ์๋๊ธฐ ๋๋ฌธ์ T.T ์ ๋ฐ ์๊ฐ๊น์ง ํ๋ค๊ณ ํ๋ค..(๋ถ๋)
๊ทธ๋์ ๋ถํธํจ์ ๊ฐ์ํ๊ณ ๋ฐฑํฑ ์ฌ์ฉ์ ํ์ง ์๊ณ ''
์์ ๋ฐ์ดํ๋ ""
์ ์ด์ฉํ์ฌ ๋ฌธ์์ด์ ์
๋ ฅํ๊ณ , ๋ณ์๋ฅผ ๋ฃ์ ๋๋ +
๋ก ์ด์ด์ ์ฐ๊ฒฐ์ ํด์คฌ๋ค.
์ด๋ ๊ฒ ์ฐ๋ ค๋ฉด ๋์ ์ ๋น ์ง๊ฒ ์กฐ์ฌํด์ผ ํ๋ค.. ์คํ ์๋ชป ๋ค์ด๊ฐ๋ฉด...๐ฎ
๊ทธ๋ ๊ฒ ๋ช ์ฃผ๋ฅผ ์์ฒ๋ผ ์ฌ์ฉ์ ํ๋ค๊ฐ, '์๋.. ์ค๋ง ๋ฐฑํฑ.. ์ฌ์ฉ์ ๋ชปํ๊ฒ ํ์๊น? ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด ์์ง ์์๊น?'ํด์ ์ฐพ์๋ดค๋๋ ํด๊ฒฐ์ฑ ์ ์ฐพ์๋ค.
(→ GPTํํ ๋ ์ด์ฌํ ๋ฌผ์ด๋ดค์๋๋ฐ ์ํ๋ ๋ต์ ์ป์ง ๋ชปํ์๋๋ฐ)
์ฐพ์๋ณด๋ JSP(Java Server Pages)์ JavaScript๊ฐ ๊ฐ์ ๋ฌธ๋ฒ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ฐฑํฑ์ ์๋ ๋ณ์๋ช ์ด ๋จนํ์ง ์์๋ ๊ฒ์ด์๋ค.
JSP๋ ์๋ฐ์คํฌ๋ฆฝํธ์ฒ๋ผ ${...}
๋ฌธ๋ฒ์ ์ฌ์ฉํ์ฌ EL(Expression Language) ํํ์์ ์์ฑํ๋ค.
์ด ํํ์์ ์๋ฒ์์ ํ์ด์ง๋ฅผ ์์ฑํ ๋ ๊ฐ์ ๋์ ์ผ๋ก ์ฝ์
ํ๋ ๋ฐ ์ฌ์ฉ์ด ๋๋ค.
JSP EL ํํ์ ์์ ์ฝ๋!
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ page pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<title>EL ์์ </title>
</head>
<body>
<h2>EL ์์ </h2>
<!-- ์๋ฐ๋น์ฆ์ ํ๋กํผํฐ๋ฅผ EL๋ก ์ถ๋ ฅ -->
<p>์ฌ์ฉ์ ์ด๋ฆ: ${user.name}</p>
<p>์ฌ์ฉ์ ๋์ด: ${user.age}</p>
<!-- JSTL๊ณผ ํจ๊ป ์ฌ์ฉ -->
<c:if test="${not empty user.name}">
<p>์ฌ์ฉ์ ์ด๋ฆ์ ๋น์ด์์ง ์์ต๋๋ค.</p>
</c:if>
</body>
</html>
์ด๋ฐ์์ผ๋ก JSP ํ์ด์ง์์ EL ํํ์์ ์ฌ์ฉํ๋ค.
๊ทธ๋ฐ๋ฐ, JSP ํ์ด์ง์์ JavaScript ์ฝ๋๋ฅผ ์์ฑํ ๋, JSP๊ฐ ${...} ๋ถ๋ถ์ ์์ ์ EL ํํ์์ผ๋ก ์คํดํ๊ณ ๋จผ์ ํด์ํ๋ ค๊ณ ํ๋ค. ๊ทธ ๊ฒฐ๊ณผ JavaScript์ ํ ํ๋ฆฟ ๋ฆฌํฐ๋ด์ด ์ ๋๋ก ๋์ํ์ง ์๊ฒ ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ${...} ๋ถ๋ถ์ ๋ฌธ์์ด๋ก ๊ฐ์ธ์ฃผ๋ฉด ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด JSP๋ ์ด ๋ถ๋ถ์ ์ผ๋ฐ ๋ฌธ์์ด๋ก ์ธ์ํ๊ณ ๋ฌด์ํ๊ฒ ๋๋ค. ๊ทธ๋ฐ ๋ค์ JavaScript๊ฐ ์คํ๋ ๋ ์ด ๋ฌธ์์ด์ด ํ ํ๋ฆฟ ๋ฆฌํฐ๋ด๋ก ํด์๋๊ณ , ${name} ๋ถ๋ถ์ด name ๋ณ์์ ๊ฐ์ผ๋ก ์นํ๋๋ ๊ฒ์ด๋ค.
์ฝ๋๋ก ๋ณด์๋ฉด
let name = 'ํ๊ธธ๋';
let greeting = `์๋
ํ์ธ์ ${'${name}'}๋! "ํ์ด์ ${'${name}'}"`;
console.log(greeting);
// ์๋
ํ์ธ์ ํ๊ธธ๋๋! "ํ์ด์"
์ด๋ฐ ์์ผ๋ก ${}
์์ '${๋ณ์๋ช
์ด๋ฆ}'
์ ๋ฃ์ด์คฌ๋๋ ์ ์ถ๋ ฅ์ด ๋์๋ค.
+
+ ์ถ๊ฐ
+
์ด๋ค ๋ถ์ด ๋๊ธ๋ก ๋ ์ฌ์ด ๋ฐฉ๋ฒ์ ์๋ ค์ฃผ์ จ๋ค!
${'${}'} ์ด ๋ฐฉ๋ฒ๋ ๋์ง๋ง \${} ์ด๋ฐ์์ผ๋ก ์์ ์ญ์ฌ๋์๋ฅผ ๋ถ์ฌ๋ ๋๋ค
const name = '์ปคํผ';
console.log(`name : \{name}`);
์์ฃผ ์ ๋๋ค!
์ ๋ฐฉ๋ฒ์ด ๋ ๊น๋ํ๋ค๊ณ ์๊ฐํด์ \${}๋ก ๋ฐ๊ฟจ๋ค
'๐๐๐' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Hugo ๋ธ๋ก๊ทธ ๊ธ ์ฐ๊ธฐ (create content) & publish the site (2) | 2024.09.02 |
---|---|
Hugo ๋ธ๋ก๊ทธ ๋ง๋ค๊ธฐ (0) | 2024.08.14 |
[Tomcat] Removing obsolete files from server... Content is not allowed in prolog. ์๋ฌ (0) | 2024.07.15 |
[Tomcat ์๋ฌ] Several ports (8005, 8080) required by Tomcat v9.0 Server at localhost are already in use. (0) | 2023.10.10 |
HTTP์ HTTPS์ ์ฐจ์ด์ (0) | 2023.10.08 |