오늘은 원래 어드민페이지 올리려고했는데
요즘 새롭게 만들고 있는사이트에 배포까지 하려고한다.
그래서 카페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&serverTimezone=UTC&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에서는 & 인식할 수가 없어
&을 사용하였다.
이렇게 해서 매퍼를 연결시켜 주면 끝
서버를 올려보면

이렇게 내가 만든 웹페이지가 뜬다
mysql 혼자 처음부터 공부하니 한 4시간 정도 걸려서 여기 까지온거같다.
내가 한 코드를 참고 바라며
나중에 또 프로젝트 할때 참고 해야겠다.
https://github.com/MoonSeokHyun
'Spring > 비건레시피사이트' 카테고리의 다른 글
스프링 좋아요 구현 및 게시판 리스트에 댓글 수 표시(ajax,마이바티스) (0) | 2022.04.21 |
---|---|
CK에디터4 이미지업로드 (스프링) 디비필요없음! (9) | 2022.04.14 |
mysql 페이징 삽질 후기.. (0) | 2022.04.12 |
MYSQL 스프링 마이바티스 페이징 및 검색구현 (0) | 2022.04.12 |
비건레시피사이트 메인페이지 제작 (2) | 2022.04.05 |