티스토리 뷰

이전 글에서 백엔드 파이프라인을 구축했다. 그러나 아직 사용자가 직접 상호작용할 수 있는 화면이 없다.

jsp를 사용해서 직접 상호작용을 할 수있는 화면을 만들어보자

 

근데 JSP가 뭔데?

일명 Jakarta Server Pages(Java Server Pages 에서 바뀐 이름이다 복잡한 사정이 있는거 같은데 중요한게 아니니까 넘어가자)

HTML에 Java를 입힌 것이라고 생각하면 된다

HTML(정적)은 누가 접속해도 똑같은 화면을 보여주지만, JSP(동적)는 서버에 있는 DB에서 데이터를 가져오기 때문에, 접속할때마다 새로 그려서 보내준다.

 

그러니까 간단하게 아래의 구조를 가진다고 생각하면 된다.

브라우저가 jsp 요청 -> 서버가 jsp 파일을 받아서 자바 코드 실행 -> Java가 DB에서 데이터를 가져와 HTML으로 변환 -> 브라우저는 완성된 HTML만 받아서 보여줌

 

그래서 jsp 어떻게 만드냐?

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <meta charset="UTF-8">
    <title>글쓰기</title>
</head>
<body>
<h2>게시글 작성</h2>
<form action="write.do" method="post">
    카테고리: <input type="text" name="category"><br>
    제목: <input type="text" name="title"><br>
    작성자: <input type="text" name="writer"><br>
    비밀번호: <input type="password" name="password"><br>
    내용: <textarea name="content" rows="10" cols="50"></textarea><br>
    <input type="submit" value="글쓰기">
    <input type="reset" value="취소">
</form>
</body>
</html>

write.jsp를 만들어봤다

사실 jsp를 직접 만드는건 처음인데 역시나 인텔리제이의 도움을 받았다

 

<form> 태그는 서버와 대화하는 창구다

<form action="write.do" method="post">을 보자

action="write.do"는 이 폼의 데이터를 내가 미리 만들어둔 BoardController의 write.do 경로로 보내겠다는 약속이다

 

각 input 태그마다 name 속성이 있는데  (name="category" ...) 이것은 자바 코드에서 request.getParameter("category") 로 값을 가져올 때 정확하게 맞춰 주어야 데이터를 가져올 수 있다.

 

비밀번호는 type="password" 타입으로 가려주었다

 

그럼 이렇게 write.jsp를 만들었으니 톰캣을 띄우고 바라마지않던 글을 직접 써보도록 하자

 

http://localhost:8080/write.jsp 경로로 이동하면 투박하지만 정상적으로 뜨고

내용을 작성후 글쓰기 버튼을 누르면..

 

정상적으로 DB에 적재되는것을 로그와 DB에서 확인할수있다.

드디어 글을 쓸 수있게 되서 기쁘지만, 아직 가야할 길은 멀어 보인다.

이제는 쓴 글 들을 모아서 볼수있는 목록 보기 기능을 추가해보도록 하자.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2026/08   »
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
글 보관함