Spring/Spring ์
๋ฌธ
JPA๋ ์๋ฐ ์ง์์์ ORM(Object-Relational Mapping) ๊ธฐ์ ํ์ค์ผ๋ก ์ฌ์ฉ๋๋ ์ธํฐํ์ด์ค์ ๋ชจ์์ด๋ค ์ค์ ์ ์ผ๋ก ๊ตฌํ๋๊ฒ์ด ์๋๋ผ ๊ตฌํ๋ ํด๋์ค์ ๋งคํ์ ํด์ฃผ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ํ๋ ์์ํฌ์ด๋ค. JPA๋ฅผ ๊ตฌํํ ๋ํ์ ์ธ ์คํ์์ค๋ก๋ Hibernate๊ฐ ์๋ค ( JPA๋ ์ธํฐํ์ด์ค / ๊ตฌํ hibernate ) ORM(Object-Relational Mapping) ๋๋ณด๊ธฐ ๊ฐ์ฒด-๊ด๊ณ ๋งคํ ๊ฐ์ฒด์งํฅ ์ธ์ด์ ๊ฐ์ฒด์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ ์ฌ์ด์์ ๋ํ๋๋ ๋ฏธ๋ฌํ ์ฐจ์ด์ ์ด๋ก ์ธํ ๋ฌธ์ ๋ค์ ๊ทน๋ณตํ๊ธฐ ์ํด ๋ฑ์ฅํ ๊ธฐ์ ์ด๋ค. ์ฐ๋ฆฌ๊ฐ ์ผ๋ฐ ์ ์ผ๋ก ์๊ณ ์๋ ์ ํ๋ฆฌ์ผ์ด์
Class์ RDB(Relational DataBase)์ ํ
์ด๋ธ์ ๋งคํ(์ฐ๊ฒฐ)ํ๋ค๋ ๋ป์ด๋ฉฐ, ๊ธฐ์ ์ ์ผ๋ก๋ ์ดํ๋ฆฌ์ผ์ด์
์ ๊ฐ์ฒด..
Algorithm/ํ์ด์ฌ ์ฝ๋ฉํ
์คํธ
๋์ ํ์ด Selection Sort (์ ํ ์ ๋ ฌ) ๋ค์๊ณผ ๊ฐ์ ์์๋ฅผ ๋ฐ๋ณตํ๋ฉฐ ์ ๋ ฌํ๋ ์๊ณ ๋ฆฌ์ฆ 1. ์ฃผ์ด์ง ๋ฐ์ดํฐ ์ค, ์ต์๊ฐ์ ์ฐพ๋๋ค. 2. ํด๋น ์ต์๊ฐ์ ๋ฐ์ดํฐ ๋งจ ์์ ์์นํ ๊ฐ๊ณผ ๊ต์ฒดํ๋ค. 3. ๋งจ ์์ ์์น๋ฅผ ๋บ ๋๋จธ์ง ๋ฐ์ดํฐ๋ฅผ ๋์ผํ ๋ฐฉ๋ฒ์ผ๋ก ๋ฐ๋ณตํ๋ค. ํ์ ๋๋๋ ์๊ฐ ๊ธฐ์ค ์ ๋ ฌํ๊ธฐ ๊ฐ์ ํ์ด ํ์ ๋๋๋ ์๊ฐ ๊ธฐ์ค ์ ๋ ฌํ๊ธฐ โท key ์ธ์์ ํจ์๋ฅผ ๋๊ฒจ์ฃผ๋ฉด ์ฐ์ ์์๊ฐ ์ ํด์ง. ๋ฆฌ์คํธ๋ฅผ ์ ๋ ฌ key ์ฌ์ฉ
Spring/Spring ์
๋ฌธ
์์ Jdbc์ ๋์ผํ ํ๊ฒฝ์ค์ ์ ํ๋ฉด ๋๋ค. ์คํ๋ง JdbcTemplate๊ณผ MyBatis ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ JDBC API์์ ๋ณธ ๋ฐ๋ณต ์ฝ๋๋ฅผ ๋๋ถ๋ถ ์ ๊ฑฐํด์ค๋ค. ํ์ง๋ง SQL์ ์ง์ ์์ฑํด์ผ ํ๋ค. ์คํ๋ง JdbcTemplate ํ์ ๋ฆฌํฌ์งํ ๋ฆฌ JdbcTemplateMemberRepository.class public class JdbcTemplateMemberRepository implements MemberRepository { private final JdbcTemplate jdbcTemplate; public JdbcTemplateMemberRepository(DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource); } Da..
Spring/Spring ์
๋ฌธ
์คํ๋ง ์ปจํ
์ด๋์ DB๊น์ง ์ฐ๊ฒฐํ ํตํฉ ํ
์คํธ๋ฅผ ์งํํด๋ณด์. MemberServiceTest : ์์ํ ์๋ฐ์ฝ๋๋ก test ( spring๊ณผ ๊ด๋ จ์์ ) Database connection ์ ๋ณด๋ ์คํ๋ง ๋ถํธ๊ฐ ๋ค๊ณ ์์ -> ํ
์คํธ๋ฅผ ์คํ๋ง์ด๋ ์ฎ์ด์ MemberSerivceIntegarionTest class ์์ฑ ( MemberServiceTest ๋ณต์ฌ ) @SpringBootTest @Transactional class MemberServiceIntegarionTest { @Autowired MemberService memberService; @Autowired MemoryMemberRepository memberRepository; @SpringBootTest : ์คํ๋ง ์ปจํ
์ด๋์ ํ
์คํธ๋ฅผ ํจ๊ป ..
Spring/Spring ์
๋ฌธ
์ด์ ์ ์ด์ฉํด์๋ ๋ฐ์ดํฐ๋ค์ ๋ฉ๋ชจ๋ฆฌ์ ์๊ธฐ ๋๋ฌธ์ ์๋ฒ๋ฅผ ๋ค์ ๊ป๋ค ์ผ๋ฉด ๋ฐ์ดํฐ๊ฐ ์ง์์ง๋ค ๋ฐ์ดํฐ๋ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํด์ ๊ด๋ฆฌํด๋ณด์ H2 ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค์น ๋ค์ด๋ก๋ ๋ฐ ์ค์น ๊ถํ ์ฃผ๊ธฐ: chmod 755 h2.sh ์คํ: ./h2.sh jdbc:h2:~/test (์ต์ด ํ๋ฒ) ~/test.mv.db ํ์ผ ์์ฑ ํ์ธ ์ดํ๋ถํฐ๋ jdbc:h2:tcp://localhost/~/test ์ด๋ ๊ฒ ์ ์ ํ
์ด๋ธ ์์ฑํ๊ธฐ ํ
์ด๋ธ ๊ด๋ฆฌ๋ฅผ ์ํด ํ๋ก์ ํธ ๋ฃจํธ์ sql/ddl.sql ํ์ผ์ ์์ฑ drop table if exists member CASCADE; create table member ( id bigint generated by default as identity, name varchar(255), prima..