일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 프로그래밍기초
- 리눅스
- 스프링
- 알고리즘
- 프로그래밍
- 스프링 기초
- Java
- Git
- 프로그래밍언어
- 이클립스
- 배열
- 자바
- JShell
- eclips
- JAVA기초
- 자바 스프링
- Elk
- 초보코딩
- 자바프로그래밍
- 컴퓨터과학개론
- 제이쉘
- 데이터베이스
- 클래스
- 코딩초보
- github
- spring
- 자바기초
- 메소드
- 기초코딩
- 초보코딩탈출
- Today
- Total
키보드워리어
[Database] Java - MySQL 연결 본문
안녕하세요 【키보드 워리어】
⌨🗡🧑
블로그 방문자 여러분, 안경닦이입니다.
오늘은 Mysql에 웹서버를 연결해보겠습니다.
1. MySQL 설치 및 연결 확인
먼저 MySQL을 설치한 후 다음과 같이 연결을 확인합니다. 설치할 때 설정한 비밀번호는 따로 작성하여 잊지 않도록 해야 합니다.
$ mysql --version
mysql Ver 8.0.32 for macos13 on x86_64 (MySQL Community Server - GPL)
위와 같이 콘솔 답변이 나와야 합니다. 만약 나오지 않는다면 PATH 설정을 해주어야 합니다.
Path설정은 간단합니다.
참고. https://signature95.tistory.com/27
Mac OS mysql path 설정
mysql을 공부하려고 먼저 mysql을 설치하였는데, 이게 맥의 터미널에서는 path설정이 매우 복잡해서 여러 사이트를 찾아보았다. 참고한 사이트 https://devdotcode.com/how-to-add-mysql-to-the-path-in-mac-os/ How to a
signature95.tistory.com
2. MySQL 데이터베이스 설정
MySQL에 로그인하고 다음과 같이 데이터베이스를 확인합니다.
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 67
Server version: 8.0.26 MySQL Community Server - GPL
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sakila |
| sys |
| test |
+--------------------+
6 rows in set (0.00 sec)
test 데이터베이스를 사용할 것이므로 다음과 같이 선택합니다.
mysql> use test;
//create test;
//없다면 아래처럼 만들어주세요
3. Spring Boot 설정
MySQL 데이터베이스에 연결하기 위해 Application.properties 파일을 다음과 같이 설정합니다.
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username= 유저아이디
spring.datasource.password= 유저비밀번호
spring.jpa.show-sql=true
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
localhost:3306은 mysql 로컬 호스트넘버입니다.
pom.xml파일 설정도 해주셔요.
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.24</version>
</dependency>
잘 되었는지 확인해 볼까요?
4. MySQL 테이블 생성
이제 @Entity 어노테이션을 사용하여 자바 코드로 작성한 todolist 테이블을 MySQL에 생성합니다. todolist 테이블은 test 데이터베이스에 생성되어 있어야 합니다.
package com.myself.todolist;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import java.time.LocalDate;
@Entity
@Table(name = "todolist") // 테이블 이름
public class ToDoList {
@Id
@GeneratedValue
private long id; // id 값 부여
@NotNull // 빈값 X
private LocalDate date;
@NotNull // memo size 지정
@Size(min = 1, max = 50)
private String memo;
public ToDoList() {
// 기본 생성자
}
public ToDoList(LocalDate date, String memo) {
this.date = date;
this.memo = memo;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public LocalDate getDate() {
return date;
}
public void setDate(LocalDate date) {
this.date = date;
}
public String getMemo() {
return memo;
}
public void setMemo(String memo) {
this.memo = memo;
}
}
pom.xml,
application.properties를 바꾸면 다시 run 해주셔야 합니다.
실행해 보고 터미널 콘솔에 아래 코드를 입력해 보면
결과를 확인해 볼 수 있습니다!
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| todolist |
| todolist_seq |
+----------------+
이는 MySQL GUI인 Workbench에서도 확인 가능합니다.
참고하시면 좋은 글
2022.08.03 - [개발 관련/Database] - 【SQLite】소개 및 간단한 기초 개념
【SQLite】소개 및 간단한 기초 개념
안녕하세요 【키보드 워리어】 블로그 방문자 여러분, 안경닦이입니다 오늘은 SQLite 에 대해 알아보겠습니다 SQLite SQLite는 MySQL나 PostgreSQL와 같은 데이터베이스 관리 시스템이지만, 서버가 아니
keyboardwarrior.tistory.com
【SQLite】select, where문 예제
안녕하세요 【키보드 워리어】 블로그 방문자 여러분, 안경닦이입니다. SQLite_select, where문 오늘은 SQLite_select, where문 을 살펴보겠습니다. 쿼리문에서 select문과 where문을 잘 섞어 조건문을 활용한
keyboardwarrior.tistory.com
【SQL】Group by와 Order by를 활용해서 데이터 추출해보자
안녕하세요 【키보드 워리어】 블로그 방문자 여러분, 안경닦이입니다. 오늘은 데이터베이스, sql 에 대해 작성합니다 저번에는 select문과 where문으로 다양한 데이터를 읽어보았는데요 여기에 추
keyboardwarrior.tistory.com
【SQLite】left, inner문으로 테이블 합쳐보자
안녕하세요 【키보드 워리어】 ⌨🗡🧑 블로그 방문자 여러분, 안경닦이입니다. 오늘은 SQL에 대해 알아보겠습니다~ 지난번에 배우신 Group by와 Order by는 어떠셨나요? 아직 그룹핑과 정렬하는 법
keyboardwarrior.tistory.com
'개발 관련 > Database' 카테고리의 다른 글
[데이터중심 애플리케이션 설계] 7장 트랜잭션 - 다중객체연산 (0) | 2023.07.14 |
---|---|
[databases] 동시성 제어 문제 해결 (0) | 2023.06.23 |
【SQLite】left, inner문으로 테이블 합쳐보자 (0) | 2022.08.25 |
【SQL】Group by와 Order by를 활용해서 데이터 추출해보자 (0) | 2022.08.17 |
【SQLite】select, where문 예제 (0) | 2022.08.04 |