반응형

오늘은 원래 어드민페이지 올리려고했는데

요즘 새롭게 만들고 있는사이트에 배포까지 하려고한다. 

그래서 카페24를 통해 하려고 하고 무료여야해서 mysql을 쓰게되었다

하지만 나는 한번도 mysql을 써본적이 없다. 

오라클만 써보아서 .. 음 .. 오라클이랑 대충 비슷하겟거니 하면서 일단 깔앗다.

 

https://dev.mysql.com/downloads/mysql/

 

MySQL :: Download MySQL Community Server

Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Debian Linux SUSE Linux Enterprise Server Red Hat Enterprise Linux / Oracle Linux Fedora Linux - Generic Oracle Solaris macOS Source Code Select OS Version: All Windows (x86

dev.mysql.com

일단 여기서 mysql을 설치해주면 

워크벤치를 설정해준다. 

 

오라클이랑 다른점은 

오라클은 유저가 곧 데이터 베이스(스키마)라는 것인데. 

mysql은 아니었다.

나는 유저 root를 만들고 응? 여기서 테이블을 어떻게 만들어야하지?? 이랫다가

바보였다. .

 

스키마 > 테이블 > 컬럼 

이렇게  스키마 안에 테이블이 있는것이다.

 

먼저 워크 벤치에서 스키마 부터 만들자 

 

 

대략 요기서 스키마 부터 만들고 나면 

 

이렇게 recipe_db라고 생겼다!! 

 

그럼 일단 mysql은 준비가 다된 것이다. 

 

이제 이클립스로 넘어가보자 

 

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.11</version>
    </dependency>

    <!-- MyBatis 3.4.1 -->
    <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.4.1</version>
    </dependency>


    <!-- MyBatis-Spring -->
    <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis-spring</artifactId>
        <version>1.3.0</version>
    </dependency>

    <!-- Spring-jdbc -->
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>${org.springframework-version}</version>
    </dependency>

    <!-- Spring-test -->
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-test -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${org.springframework-version}</version>
    </dependency>

	<!-- Mybatis log -->
    <!-- https://mvnrepository.com/artifact/org.bgee.log4jdbc-log4j2/log4jdbc-log4j2-jdbc4.1 -->
    <dependency>
        <groupId>org.bgee.log4jdbc-log4j2</groupId>
        <artifactId>log4jdbc-log4j2-jdbc4</artifactId>
        <version>1.16</version>
    </dependency>

이렇게 우선 pom.xml에다 디펜던시를 등록해주자 

그럼 쓸 수 있는 환경은 끝낫다.

 

아 맞다 나는

		<dependency>
			<groupId>com.zaxxer</groupId>
			<artifactId>HikariCP</artifactId>
			<version>3.3.1</version>
		</dependency>

커넥션 풀로 히카리CP를 썻다. 이게 제일 익숙하다

 

그 후 root-context.xml에서 커넥션 풀 설정을 해주자 

 

   <!-- 히카리 커넥션 DB 설정 -->
   <bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
      <property name="driverClassName" value="com.mysql.cj.jdbc.Driver" />
      <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/디비 이름(스키마이름)?useSSL=false&amp;serverTimezone=UTC&amp;allowPublicKeyRetrieval=true" />
      <property name="username" value="mysql 아이디" />
      <property name="password" value="mysql 비밀번호" />
   </bean>
	
	<!-- 위에 설정한 DB정보를 데이터소스 객체에 주입 -->
   <bean id="ds" class="com.zaxxer.hikari.HikariDataSource">
      <constructor-arg ref="hikariConfig" />
   </bean>

을 설정 해주자 

 

그리고 아까 확인한 junit으로 테스트를 해보자 :) 

 

나는 테스트페이지에 testVegan 이라는 클래스를 생성 했다. 

 

package com.vegan.recipe;

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

import org.junit.Test;

public class testVegan {
private static final String DRIVER = "com.mysql.cj.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/recipe_db?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true"; 
private static final String USER = "recipe"; 
private static final String PW = "********";
@Test
public void testConnection() throws Exception{
	Class.forName(DRIVER); try(Connection conn = DriverManager.getConnection(URL, USER, PW)){ 
		System.out.println(conn);
	 } catch (Exception e) { 
		 e.printStackTrace();
	}
}
}

 

 

테스트 코드는 상단 과 같으며

결과는 성공 했다 .

 

아 그리고.. 테스트와 루트xml에 들어가는 url이 살짝 다르니 참고 바란다.

xml에서는 & 인식할 수가 없어 

&amp;을 사용하였다.

 

이렇게 해서 매퍼를 연결시켜 주면 끝 

 

서버를 올려보면

 

 

이렇게 내가 만든 웹페이지가 뜬다

 

mysql 혼자 처음부터 공부하니 한 4시간 정도 걸려서 여기 까지온거같다.

 

내가 한 코드를 참고 바라며

나중에 또 프로젝트 할때 참고 해야겠다. 

 

https://github.com/MoonSeokHyun

 

 

반응형

+ Recent posts