
| 항목 | Tool |
|---|---|
| 🖥️ 서버 | Tomcat |
| 🍭 프레임워크 | Spring Boot |
| 📀 데이터베이스 | MySQL |
가. bulid.gradle 세팅
runtimeOnly 'com.mysql:mysql-connector-j' //mysql 접속 도와주는 라이브러리
implementation 'org.springframework.boot:spring-boot-starter-data-jpa' // Hibernate
Hibernate란 JAP ORM 문법의 한 종류로, ORM은 자바 코드를 사용해서 DB 입출력을 관리할 수 있게 해주는 라이브러리이고 이를 모아둔 것이 JAP이다. 보통 Hibernate를 많이 쓰고, JAP = Hibernate라고 할 만큼 Hibernate를 많이 쓴다. 하지만 단점은 입출력 딜레이가 걸린다는 점이다. 그래도 감안하고 많이 쓴다.
나. application.properties 세팅
spring.datasource.url=jdbc:mysql://hii.mysql.database.azure.com:3306/mysql
spring.datasource.username=nan7789
spring.datasource.password=gustjq3735!
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.properties.hibernate.show_sql=true
spring.jpa.hibernate.ddl-auto=update
필자의 DB 정보에 맞게 세팅해주었다.
가. @Entity
클래스 안의 정보들을 테이블로 바꿔줌.
@Entity
public class Item {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column
private String title;
private Integer price;
}
가. DB url 오입력 문제
Caused by: java.net.UnknownHostException: hii.mysl.database.azure.com: nodename nor servname provided, or not known
필자의 DB url를 서버 이름과 헷갈려서 올바른 엔드포인트 주소를 찾는데 좀 걸렸지만, DB nevigater setting에 들어가서 찾을 수 있었다.
하지만 또 문제가 발생했다. 바로 이 url에는 내가 원하는 서버의 url이 아니라 DB이름을 넣어야했던 것이다. 나는 이제까지 이 서버 url이 DB url인줄 알았다.
다시 말하자면,
내가 현재 쓰고 있는 서버의 url은 다음과 같고
"hii.mysql.database.azure.com"
쓰고자 하는 DB는 shop이다.
그리고 그 아래에 Item, Notice 테이블을 납둔것이다! (테이블과 DB를 헷갈리지 말 것!)
잼다.