ㅎㅇ 일단  톰캣을 설치하셈


https://tomcat.apache.org/download-90.cgi




9.0버전 , installer 로 다운받으시고






저는 셧다운포트 8005  연결포트 8000 으로 했습니다


연결포트 8080은 oracle의 포트와 충돌이 있을수도 있다고...


톰캣 설치 끝



STS 실행하세요


FIle > New > other > web > 다이나믹 웹 프로젝트 만드세요




타겟 런타임을 톰캣 9.0으로 설정해주세요

설치경로는 기본값으로 하셨다면 

C:\Program Files\Apache Software Foundation\Tomcat 9.0


여기 있을겁니다







이제 jsp 파일을 만들 수 있습니다



jsp 파일은 항상 WebContent 폴더에 작성해주세요


META-INF , WEB-INF 는  외부접근 불가 구역입니다. 주로 프로젝트의 설정파일을 저장하는곳입니다.


뜬금없지만 JSP관련 기초 설명을 하겠습니다


JSP는 쉽게 말하면 html 파일에서 자바코드를 작성할 수 있게 해주는 파일입니다.

톰캣은 하나의 자바 컴파일러 라고 할 수 있어요.



웹서버(아파치)

내 하드디스크의 특정 폴더를 http주소 방식으로 접근할 수 있게 열어둔 것


접근 방법

프로토콜://ip주소:포트번호/컨텍스트루트/자원명

ex) http://localhost:8000/test1/a.html


jsp

html파일안에 java코드를 넣을 수 있는 파일


톰켓

아파치가 처리할 수 없는 .jsp 파일 요청시 동작함. html파일은 그대로

두고 java코드만 컴파일하여 html코드와 그 결과를 .html파일로 만들

어서 응답해줌.


WebContent

프로젝트 폴더내에 유일하게 외부에서 접근할 수 있게 열어둔 영역


컨텍스트루트

웹서버내에 많은 프로젝트들을 구분하기 위해서 필요


URL

자원에 접근하는 법

URI

식별자로 접근하는 법





MySQL에 있는 데이터를 웹에 뿌려봅시다

아까 만든 다이나믹 웹 프로젝트에서 WEB-INF 폴더에, lib폴더에 >  jar파일 하나 추가하고 add 빌드패스 합니다


https://mvnrepository.com/artifact/mysql/mysql-connector-java



저는 8.0.16 버전 썼습니다







그리고 MySQL에 연결을 시켜줄 자바 파일을 하나 만듭니다

패키지명 com.cos.test1.config


얇은 지식으로 말씀드리자면 패키지명(유일해야함) = 도메인(유일함)

그러므로 도메인을 거꾸로 쓴거같은 양식이 유일하기때문에 그렇게 작성한다고 하네요



new > class > DBConn.java 생성




DBConn.java

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
package com.cos.test1.config;
 
import java.sql.Connection;
import java.sql.DriverManager;
 
public class DBConn {
    public static Connection getConnection() {
        Connection conn = null;
        //localhost 뒤 = DB이름?
        String url = "jdbc:mysql://localhost:3306/ssar?serverTimezone=Asia/Seoul";
        String username = "ㅇㅎㅇㅀㅇㅀㅇㅀ";
        String password = "ㅇㅎㅇㅎㅎㄱㅎ";
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            conn = DriverManager.getConnection(url, username, password);
            
            System.out.println("DB 연결성공");
            return conn;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}
 
cs


String url = "jdbc:mysql://localhost:3306/ssar?serverTimezone=Asia/Seoul";
String username = "ㅇㅀㄷㄱㅎㄷㅎr";
String password = "둃ㅇㅀㅇㅀ";


url = 포트번호뒤에 있는 ssar 은 제 계정에있는 데이터베이스 이름입니다. 각자 환경에 맞게 바꿔주세요

username = 사용자 계정 아이디 입니다.

password = 사용자 계정 비밀번호 입니다.




webcontent > new jsp file


select.jsp

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
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="com.cos.test1.config.DBConn"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>찾아보기</title>
</head>
<body>
<%
    String sql = "SELECT * FROM users WHERE id=1";
    Connection conn = DBConn.getConnection();
    PreparedStatement pstmt = 
            conn.prepareStatement(sql);
    ResultSet rs = pstmt.executeQuery();
    
    rs.next();
    int id = rs.getInt("id");
    String username = rs.getString("username");
    String password = rs.getString("password");
    String email = rs.getString("email");
%>
<h3>id : <%=id %></h3>
<h3>username : <%=username %></h3>
<h3>password : <%=password %></h3>
<h3>email : <%=email %></h3>
</body>
</html>
cs

<% %> 로 감싸진 부분에서는 자바코드를 작성해도 되는 곳입니다.


아까 java resource에 만들었던 DBConn을 import 해서 사용하고있습니다.


executeQuery()의 반환값이 Resultset 이기 때문에 새로 변수를 만들어서 저장해줍니다.


rs,next() : 커서를 한 번 이동시켜줍니다 (안하면 안됨)


rs.get@@@ : 새로만든 변수에 get해서 데이터를 넣습니다 .    변수명은 웬만하면 필드명이랑 일치하게 작성합니다 


<%=id %> : 표현식 태그 라고하네요 결과값을 출력합니다.



실행하기전에~~~


크롬으로 바꿔주시고 (알아서 하셈)




프로젝트 폴더를 Run As > Run On Server 를 하신다면 welcome page (기본값 index.jsp , index.html) 을 실행할 것입니다.


그래서 저희는 그냥  select.jsp 를 Run On Server 할겁니다


TomCat 9.0  확인하고 Finish ㄱㄱ







잘 작동하고있네요 다행입니다




+ Recent posts