๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ/JPA & JDBC7 spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl -์์ฑ์ค- ์ง์ ํ ์ด๋ฆ ๊ทธ๋๋ก ๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ/JPA & JDBC 2024. 4. 1. ๋๋ณด๊ธฐ โบโบ Caused by: java.sql.SQLSyntaxErrorException: Table 'test8.cardlist' doesn't exist -์์ฑ์ค- ๋ค, ์ ํํ ๋ง์ํ์ จ์ต๋๋ค. spring.jpa.hibernate.ddl-auto=create ์ค์ ์ผ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ํ ๋, JPA/Hibernate๋ ์ํฐํฐ ํด๋์ค๋ค์ ์ค์บํ๊ณ ํด๋นํ๋ ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์์ฑํฉ๋๋ค. ๋ง์ฝ ์ํฐํฐ ๊ฐ์ ๊ด๊ณ๊ฐ ์ ์๋์ด ์๊ณ , ์ด ๊ด๊ณ๋ฅผ ๋ํ๋ด๋ ์ธ๋ ํค(foreign key)๋ ์กฐ์ธ ํ ์ด๋ธ(join table)์ด ํ์ํ ๊ฒฝ์ฐ, ์ด ๊ด๊ณ์ ํด๋นํ๋ ๋ชจ๋ ์ํฐํฐ์ ํ ์ด๋ธ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฑ๊ณต์ ์ผ๋ก ์์ฑ๋์ด ์์ด์ผ ํฉ๋๋ค. JPA/Hibernate๊ฐ ํ ์ด๋ธ์ ์์ฑํ๋ ๊ณผ์ ์์ ๋ค์๊ณผ ๊ฐ์ ์ํฉ์ด ๋ฐ์ํ ์ ์์ต๋๋ค: ์์ ๋ฌธ์ : JPA/Hibernate๊ฐ ํ ์ด๋ธ ์์ฑ ์์๋ฅผ ๊ด๋ฆฌํ๋ฉฐ, ๊ด๊ณ์ ์๋ ์ํฐํฐ๋ค์ ํ ์ด๋ธ์ ์ฌ๋ฐ๋ฅธ ์์๋ก ์์ฑํด์ผ ํฉ๋๋ค. ํ์ง๋ง, ํน์ ํ .. ๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ/JPA & JDBC 2024. 4. 1. ๋๋ณด๊ธฐ โบโบ JDBC jdbc๋ ์๋ฐ ํ๋ก๊ทธ๋จ ์์์ SQL์ ์คํ ํ๊ธฐ ์ํ ์์ฉํ๋ก๊ทธ๋จ ์ธํฐํ์ด์ค์ด๋ค. ์ฐ๊ฒฐํ๋๋ฒ ์ฐ์ DB์ ์ฐ๊ฒฐํด์ฃผ๊ธฐ ์ํ ์์ ์ ํ๋ค. package dev.syntax.step05statemanaging.step03practice; import java.io.FileInputStream; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.Properties; /* * DB์ ๊ด๋ จ๋ ๊ณตํต ์ฒ๋ฆฌ ์ฝ๋๋ค์ ๋ณ๋์ ์ ํธ ํด๋์ค๋ก ์์ฑ */ public class DBUtil { /* java.util ํจํค์ง์์ ์ ๊ณตํ๋.. ๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ/JPA & JDBC 2024. 1. 20. ๋๋ณด๊ธฐ โบโบ MySQL ์๋ชป๋ ๋ฌธ๋ฒ์ ์์ฑํ๋ฉด ๋ฐ์ํ๋ ์๋ฌ You have an error in your SQL syntax; check the manual that correspondsto your MySQL server version for the right syntax to use near ~~ ์ด๋ ๋ณดํต ์ฟผ๋ฆฌ๋ฌธ์ ๋ฌธ๋ฒ์ด ํ๋ ธ๊ธฐ์ ๋ฐ์ํ๋ ์๋ฌ์ด๋ค. ๊ทธ๋ฌ๋ ์ฟผ๋ฆฌ ๋ฌธ๋ฒ์ ๋ค์ ์ดํด๋ณผ ํ์๊ฐ ์๋ค. ๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ/JPA & JDBC 2024. 1. 18. ๋๋ณด๊ธฐ โบโบ "select * from todo where id = ?" ์ฌ์ฉ๋ฒ ๋๋ ์ํ๋ ๊ฐ๋ง ์ถ์ถํ๊ธฐ ์ํด for๋ฌธ์ ํตํด ์ฒ์ ๊ตฌํ ํ๋ค. ํ์ง๋ง query๋ฌธ ๊ฐ์ ๊ฒฝ์ฐ where id = ? ์ด๋ ๊ฒ ์ค์ ํด๋๊ณ statement.setInt(1, todoId) ์ด๋ฐ์์ผ๋ก ์ค์ ํด๋๋ฉด todoId์ ํด๋นํ๋ ๊ฐ๋ง ์ถ์ถํ๋ค. setInt(1, todoId) ์ฌ๊ธฐ ๋งค๊ฐ๋ณ์ ์ค์ 1 ๊ฐ์ ๊ฒฝ์ฐ๋ ?๊ฐ ์ฌ๋ฌ๊ฐ ์์ ๋ ๋ช๋ฒ ์งธ ์๋ฆฌ์ ?์ todoId ๊ฐ์ ๋ฃ์์ง ์ค์ ํด์ฃผ๋ ๊ฒ์ด๋ค!! ๋ง์ฝ ?๊ฐ 3๊ฐ์ด๊ณ 2๋ฒ์งธ ?์ ๋ฃ๊ณ ์ถ๋ค๋ฉด setInt(2, todoId) ์ด๋ ๊ฒ ์ค์ ํ๋ฉด ๋๋ค. public Todo findById(int todoId) throws SQLException { // ex. findById(2); // id๊ฐ 2๋ฒ์ธ Todo ๊ฐ์ฒด๋ฅผ ๋ฐํํ๋ ๋ฉ์๋ Todo todo .. ๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ/JPA & JDBC 2024. 1. 18. ๋๋ณด๊ธฐ โบโบ ์ด์ 1 2 ๋ค์