JDBC;
build.gradle, mtsql connecter ์ถ๊ฐ, ์๋ฐ ์ฝ๋ ์์ฑ
๐พ Vmware ๋ฆฌ๋ ์ค Mysql server 1๋ ์ค๋น
1.1. ๋ฆฌ๋ ์ค ์ปดํจํฐ์ IP์ค์ (์ธํฐ๋ท์ด ๋๋๋ก)
vi /etc/sysconfig/network-scripts/ifcfg-ens160 ๋ก ๋คํธ์ํฌ ์ค์ ํ์ผ ์ ๊ทผ
ONBOOT=yes : ๋ถํ ํ ๋ ์ด ๋ด์ฉ์ ์ฐธ๊ณ ํด์ ๋คํธ์ํฌ๋ฅผ ์ธํ ํ๊ฒ ๋ค
IPADDR=10.10.10.3 :์ํ๋ IP๋ก ์๋์ผ๋ก ์ค์ ํด์ค
NETMASK=255.255.255.0 :์๋ธ๋ท ๋ง์คํฌ ์ค์
GATEWAY=10.10.10.2
DNS1=8.8.8.8
init 6 :์ฌ๋ถํ ํด์ ์์ ๋ ๋ด์ฉ ์ ์ฉ์ํค๊ธฐ
ip addr :IP๊ฐ ๋ฌ๋ผ์ก๋์ง ํ์ธ!
1.2. DB ์๋ฒ ์ค์น
yum install -y mysql-server
1.3. mysql ์ด๊ธฐํ
mysql_secure_installation : yum์ผ๋ก ๋ค์ด ๋ฐ๊ณ , ์ค์น ๋ง๋ฒ์ฌ ๊ฐ์ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๋ฉด ๋จ
1.4. ๋ฆฌ๋
์ค ํ๊ฒฝ์ mysql(ํด๋ผ์ด์ธํธ)์ ๋จผ์ ์ ์ํด์ ์๋์ฐ์ workbench์์ ์๊ฒฉ์ผ๋ก ์ ์ํ ์ ์๊ฒ ์ค์ ์ ํด์ค์ผ ํจ
mysql -u root -p : root user๋ก ์ ์ํ๊ฒ ๋ค
1.4.1. ์ฌ์ฉ์ ์์ฑ
CREATE USER 'bsy'@'%' IDENTIFIED 'qwer1234;' :์ด๋ค IP์ฃผ์์ฌ๋ ์ ์ํ ์ ์๊ณ , ๋น๋ฒ ์ค์
1.4.2. DB ์์ฑ
CTREATE DATABASE web;
1.4.3. ๊ถํ ๋ถ์ฌ
GRANT ALL PRIVIEGES ON web.* TO 'bsy'@'%'; :bsy์๊ฒ ๋ชจ๋ ๊ถํ์ ์ฃผ๊ฒ ๋ค
1.4.4. ์ข
๋ฃ
EXIT
๐พ Workbench ๋ค์ด๊ฐ์ ๋ง๋ db์ user๋ก Connection ์ถ๊ฐ
๐พ build.gradle์ dependencies ์ถ๊ฐ
๋ฐ์ mven ๋ค์ด๊ฐ์ Mysql Connector J ๊ฒ์ ํ Gradle ๋ณต์ฌ
https://mvnrepository.com/artifact/com.mysql/mysql-connector-j/8.0.33
JSP;
ํฐ์บฃ ์ค์น, ํ๋ก์ ํธ+web, ์ฐ๋ ์ค์
๐พ Tomcat9 zip ํ์ผ ๋ค์ด ํ ์์ถ ํ๊ธฐ
https://tomcat.apache.org/download-90.cgi
Apache Tomcat® - Apache Tomcat 9 Software Downloads
Welcome to the Apache Tomcat® 9.x software download page. This page provides download links for obtaining the latest version of Tomcat 9.0.x software, as well as links to the archives of older releases. Unsure which version you need? Specification version
tomcat.apache.org
๐พ ์ธํ ๋ฆฌ์ ์ด ํ๋ก์ ํธ์ Tomcat server ์ถ๊ฐ
File->Settings->Plugins(์ถ๊ฐ ๊ธฐ๋ฅ ์ค์นํ๋ MarketPlace) -> Smart Tomcat ๋ค์ด
Run->Edit Configurations -> + ์์ Smart Tomcat ํด๋ฆญ
-> Tomcat server์ Tomcat9 ๋ค์ด๋ฐ๊ณ ์์ถ ํผ ํ์ผ ๊ฒฝ๋ก ์ ๋ ฅ
-> Deployment directory์ ํ์ฌ ์ธํ ๋ฆฌ์ ์ด ํ๋ก์ ํธ ๊ฒฝ๋ก ์ ๋ ฅ
-> Context path์ / ์ ๋ ฅ
๐พ Tomcat์ผ๋ก ์คํ
๋ค์๊ณผ ๊ฐ์ด ๋จ๋ฉด ์ฑ๊ณต!
localhost์ 8080ํฌํธ๋ก ์ ์ํด์ ๋ค์๊ณผ ๊ฐ์ด ๋จ๋ฉด ์ธํ ์๋ฃ
๐พ ํด๋ผ์ด์ธํธ๊ฐ sname์ ๋ฃ์ด์ http์์ฒญ์ ๋ณด๋ด๋ฉด ํด๋น ๋ฐ์ดํฐ๋ฅผ ์น ํ์ด์ง์ ์ถ๋ ฅํด์ฃผ๋ ์ค์ต
ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญ์ ๋ณด๋ด๋ฉด, ํฐ์บฃ์ด ๊ทธ ์์ฒญ์ ๋ฐ์ HttpServletRequest๋ผ๋ ๊ฐ์ฒด๋ก ๋งค๊ฐ๋ณ์๋ก ๋ฃ์ด์ฃผ๊ณ ํด๋์ค๋ฅผ ์คํ์์ผ์ฃผ๋ ๊ฒ์ด๋ค.
HttpServletRequest request
์น ํ์ด์ง ์ถ๋ ฅ์ ๋ค์ ๋งค๊ฐ๋ณ์ ๊ฐ์ฒด๋ฅผ ํตํด ํด ์ค ์ ์๋ค.
HttpServletResponse response
PrintWriter๋ก ์ถ๋ ฅ ์คํธ๋ฆผ์ ์ด์ด์ค๋ค.
์ถ๋ ฅ ์คํธ๋ฆผ ๋ฉ์๋ println์ ํตํด์ ์คํ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํด๋๋ ๊ฐ์ฒด์ธ ResultSet rs ์ ์ด์ฉํด์ sname๊ณผ sage๋ฅผ ์ถ๋ ฅํด์ค๋ค.
String sql = "SELECT * FROM member WHERE sname='"+sname+"'";
rs = stmt.executeQuery(sql);
PrintWriter out = response.getWriter();
while(rs.next())
{
out.println(rs.getString("sname"));
out.println(rs.getInt("sage"));
}
๐พ HelloServlet.java
package com.example.web;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.sql.*;
@WebServlet("/webtoon/detail")
public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
// request ๋ณ์์ ํด๋ผ์ด์ธํธ๊ฐ HTTP ํ๋กํ ์ฝ๋ก ์์ฒญํ ๋ชจ๋ ๊ฒ ์ ์ฅ๋์ด ์์
// request ๋ณ์์ ์ ์ฅ๋ HttpServletRequest ๊ฐ์ฒด์
// getParameter() ๋ฉ์๋๋ก ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ด์ค ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์จ๋ค.
String sname = request.getParameter("sname");
Connection conn = null; // DB ์๋ฒ์ ์ฐ๊ฒฐํ๋ ๊ฐ์ฒด
Statement stmt = null; // SQL์ ์คํํ๋ ๊ฐ์ฒด
ResultSet rs = null; // ์คํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์์ค๋ ๊ฐ์ฒด
try {
String url = "jdbc:mysql://10.10.10.3:3306/db";
String id = "bsy";
String pw = "qwer123";
conn = DriverManager.getConnection(url, id, pw);
stmt = conn.createStatement();
String sql = "SELECT * FROM member WHERE sname='"+sname+"'";
rs = stmt.executeQuery(sql);
// response ๋ณ์์ ํด๋ผ์ด์ธํธ์๊ฒ HTTP ํ๋กํ ์ฝ๋ก ์๋ตํ ๋ชจ๋ ๊ฒ ์ ์ฅ๋์ด ์์
// response ๋ณ์์ ์ ์ฅ๋ HttpServletResponse ๊ฐ์ฒด์
// getWriter() ๋ฉ์๋๋ฅผ ํตํด์ outputstream์ ๋ฐ์์ค๊ณ
// ํด๋น ์คํธ๋ฆผ์ ํตํด์ ๋ฐ์ดํฐ๋ฅผ ์ถ๋ ฅํ๋ฉด
// ํด๋ผ์ด์ธํธ ์น ๋ธ๋ผ์ฐ์ ์ ๋ด์ฉ์ด ์ถ๋ ฅ๋๋ค.
PrintWriter out = response.getWriter();
while(rs.next())
{
out.println(rs.getString("sname"));
out.println(rs.getInt("sage"));
}
} catch (SQLException ex) {
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
}
System.out.println("ํด๋ผ์ด์ธํธ๊ฐ ์น ๋ธ๋ผ์ฐ์ ๋ก ํด๋์ค ํ์ผ์ ์คํ");
}
}
์คํ ๊ฒฐ๊ณผ
'โก๐ฉโ๐ป โก > ยบ Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์๋ฃ๊ตฌ์กฐ] ์คํ (Stack) ๊ตฌ์กฐ (Java) (3) | 2023.12.04 |
---|---|
[Java] JSP, JDBC ์ค์ต 2 (0) | 2023.11.30 |
[Java] ์คํธ๋ฆผ(Stream) (0) | 2023.11.29 |
[Java] int์ Integer์ ์ฐจ์ด (0) | 2023.11.29 |
[Java] ์ฐ์ํ ํ ํฌ์ฝ์ค | ๋ก๋ (0) | 2023.11.29 |