[Network] WAS(Web Application Server)
2022. 3. 31.ㆍ공부/네트워크
728x90
주로 데이터베이스 서버와 같이 수행되는 미들웨어로, 복잡한 분산 시스템에서 이 기종 간에 통신 및 데이터 관리가 가능하도록 해준다. 웹 서버만으로 단독으로 처리할 수 없는 DB 조회와 비즈니스 로직 처리와 같은 동적 데이터 처리를 담당한다. JSP, Servlet 구동 환경을 제공해주기 때문에 JSP를 통해 Java언어로 SQL문을 제어하고 DB에 접근할 수 있다.
package com.ict.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;
public class JDBC {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("조회할 아이디를 입력해주세요");
String uid = scan.nextLine();
try {
// 접속 타겟이 MySQL 8버전임을 명시
Class.forName("com.mysql.cj.jdbc.Driver");
// 커넥션 객체로 연결 여부 확인하며 입력 요소는 접속 주소, MySQL 계정명, MySQL 비밀번호 순으로 입력
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/jdbcprac2?serverTimezone=UTC","root", "000000");
// java에서 MySQL에 전송할 쿼리문을 작성
Statement stmt = con.createStatement();
String sql = "SELECT * FROM userinfo WHERE user_id='" + uid + "'";
System.out.println("실행 예정 구문 : " + sql);
// ResultSet은 기본적으로 row 개수만큼 내부에 데이터를 저장
// ResultSet은 특정 번호를 집어서 조회하는 경우보다는 순차적으로
// 모든 데이터를 조회하는 식으로 많이 사용
// 맨 처음 ResultSet은 -1번이라는 임시번호를 타겟
// 이 번호를 옮기기 위해 .next()를 호출하면 다음 번호로
ResultSet rs = stmt.executeQuery(sql);
if(rs.next()) {
System.out.print(rs.getString(1));
System.out.println("<--------------id");
System.out.print(rs.getString(2));
System.out.println("<--------------pw");
System.out.print(rs.getString(3));
System.out.println("<--------------name");
System.out.print(rs.getString(4));
System.out.println("<--------------email");
} else {
System.out.println(uid + "는 DB에 없는 아이디입니다.");
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
'공부 > 네트워크' 카테고리의 다른 글
[Rest API] Cloudinary에서 제공하는 API를 이용해서 이미지 업로드하는 법 (0) | 2022.06.20 |
---|---|
[Servlet] 도메인을 가진 웹서버 만들기 (0) | 2022.04.13 |
[Network] Cookie와 Session (0) | 2022.03.30 |
[Network] Http methods : GET과 POST (0) | 2022.03.29 |
[Network] API, RESTful API (0) | 2022.03.29 |