웹 프로젝트 - mysql 설치

·2020년 11월 9일
0

컴프

목록 보기
2/2
post-thumbnail

mysql 설치

mysql 다운로드

MYSQL 은 8버전
CONNECTOR 는 ODBC로 선택! 우리는 JAVA로 할 것이라, J로 해도되지만,
언어에 상관없이 다 가능한 ODBC를 사용해도 된다!

connector j 다운로드

os : platform independet로 다운 후, (verseion 5.1)
압축 풀고, mysql-connector-java-8.0.22 파일 ctrl+C
mysql-connector-java-5.1.46 ctrl+C
C:\Program Files\Java\jdk-14.0.2\lib 에 붙여넣기 ctrl+V

설치 확인

db 생성

show databases; 
create database mydb;

eclipse 연동


data source 탭 > new > 설정 후룰루룩

sql 테이블 생성


data source exploere 탭의 mysql 오른쪽 마우스 open sql scrapbook
sql 쿼리문 실행할 수 있다.

show databases;
use mydb;
show tables;
create table member (
	id int NOT NULL AUTO_INCREMENT,
	name VARCHAR(100) not null,
	passwd VARCHAR(50) not null,
	PRIMARY KEY(id)
);

show tables;
desc member;

insert into member values(60111321, '관우', 'gorgeousbeard');
insert into member values(60135323, '유비', 'liu13');
insert into member values(60152166, '장비', 'snakespear');

eclipse jdbc jar 연결하기

webcontect\web-inf\lib 에 mysql-connector-java-xx-bin.jar ctrl+V
프로젝트 > 오른쪽마우스 > build-path > libraries tab > class path > Add jars > 위의 파일 등록

1) java로 db연결하기

java ee-> java로 이클립스 모드 바꾸기
프로젝트 src 폴더에 패키지, 클래스 생성하기

package org.MySQL_code;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DriverSQL {

	public static void main(String[] args) {

		/*java로 db 접속하는 방법*/
		Connection con = null; // 연결 객체
		java.sql.PreparedStatement pstmt = null; // sql을 실행시켜주는 객체
		
		try {
			Class.forName("org.MySQL_code.Driver"); //동적 로딩시 어떤 클래스가 로딩 될 지 모르기때문에, 어떤 클래스가 로딩 되는지 알려주는 구문 ? 
			con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?useSSL=false","root", "1234"); // 접속주소(기본포트3306), id, pw // useSSL (True) 에러값 보여주기
			String sql = "insert member values('60132231','마초', 'sangnamja')";
			pstmt = con.prepareStatement(sql);
			pstmt.executeUpdate();
			System.out.println("SQL 성공 : " + con);
		} catch (SQLException ex) {
			System.out.println("SQLException " + ex.getMessage() );
		} catch (Exception ex) {
			System.out.println("Exception " + ex.getMessage());
		}

		
	}
}

2) jsp로 db연결하기

java -> java ee 이클립스 모드 바꾸기
webcontect > jsp파일 생성하기

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.util.*,java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

	<%
		/*java로 db 접속하는 방법*/
		Connection con;// 연결 객체
		Statement stmt;// sql을 실행시켜주는 객체
		ResultSet rs = null;
		
		
		
		try {
			out.print("1");
			
			Class.forName("org.MySQL_code.Driver"); //동적 로딩시 어떤 클래스가 로딩 될 지 모르기때문에, 어떤 클래스가 로딩 되는지 알려주는 구문 ? 
			
			
			con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?useSSL=false","root", "1234"); // 접속주소(기본포트3306), id, pw // useSSL (True) 에러값 보여주기
			
			stmt = con.createStatement();
			String sql = "select * from member";
			rs = stmt.executeQuery(sql);
			
			
			
			if (rs.next()) {
				do{
					out.print("<br>");
					out.print(rs.getString("id")+" ");
					out.print(rs.getString("name")+" ");
					out.print(rs.getString("passwd"));
				}while(rs.next());
			}else {
				out.print("결과가 없습니다.");
			}
			con.close();
		} catch (SQLException ex) {
			out.print(ex);
		} catch (Exception ex) {
			out.print(ex);
		}




띠옹 👨‍🔧 에러

  • 접속주소 잘 넣었는지 👌👌
  • web-inf > lib 폴더에 jar파일 넣었는지 👌👌
  • 왜인지 모르지만,
    java와 다르게, class.forName을 바꾸니 해결되었다 ✔
Class.forName("com.mysql.jdbc.Driver"); 

//Class.forName("org.MySQL_code.Driver"); 
			

참조사이트 🙌
https://altongmon.tistory.com/634
https://developer-sing-gi.tistory.com/36

profile
XOXO architecture

0개의 댓글