μμ‘΄μ± μ£Όμ (Dependency Injection) : μ€νλ§μ νΉμ§ μ€ νλλ‘ μ μ΄μ μνμ΄ λ°μν λ μ€νλ§ λ΄λΆμ μλ κ°μ²΄(Bean)μ κ΄λ¦¬νλ κΈ°λ²
* μ μ΄μ μν : (IoC : Inversion Of Control) : λ©μλλ κ°μ²΄μ νΈμΆμ κ°λ°μκ° κ²°μ νλ κ²μ΄ μλλΌ μΈλΆμμ κ²°μ λλ κ². μ¦ μ μ΄κΆμ κ°λ°μκ° μλ μ 3μκ° κ°μ§κ² νλ κ²μ λ§νλ€. >> λμ¨ν κ²°ν©μ μ 곡νλ κ²μ΄ λͺ©μ
* μμ‘΄μ± : ν΄λμ€λ κ°μ²΄κ° κ΄κ³λ₯Ό λ§νλ©° μμ‘΄μ±μ΄ λμ μλ‘ κ°μ²΄κ° νΌμμ μ²λ¦¬ν μ μκ³ λ€λ₯Έ κ°μ²΄λ₯Ό ν΅ν΄μ λμμ λ°μμΌλ§ μ²λ¦¬κ° κ°λ₯νλ€. >> ν ν΄λμ€κ° λ°λ λ λ€λ₯Έ ν΄λμ€κ° μν₯μ λ§μ΄ λ°λλ€.
=> κ²°κ΅ DIλ μμ‘΄ κ΄κ³μ μλ κ°μ²΄λ₯Ό μ§μ μμ±νκ³ μ μ΄νλ κ²μ΄ μλλΌ μ μ΄μ μνμ ν΅ν΄ νμν κ°μ²΄λ₯Ό μΈλΆμμ κ²°μ ν΄μ μ°κ²°νλ κ²μ λ§νλ€.
public class BoardDAOTest {
//DAO κ°μ²΄ νμ => κ°μ²΄ μ£Όμ
@Inject
private BoardDAO dao;
//@Test
public void κΈμ°κΈ°λμ() {
BoardVO vo = new BoardVO();
vo.setTitle("곡μ§μ¬νμ
λλ€.");
vo.setContent("μ£Όλ§μ ν΄λ¬΄");
vo.setWriter("κ΄λ¦¬μ");
dao.create(vo);
}
//@Test
public void νμ΄μ§μ²λ¦¬_νΈμΆ() {
List<BoardVO> boardList = dao.listPage();
for(BoardVO vo :boardList) {
System.out.println(vo.getBno()+" : "+vo.getTitle());
}
}
//@Test
public void νμ΄μ§μ²λ¦¬_νΈμΆ2() {
List<BoardVO> boardList = dao.listPage(3, 10);
for(BoardVO vo : boardList) {
System.out.println(vo.getBno()+" : "+vo.getTitle());
}
}
@Test
public void νμ΄μ§μ²λ¦¬_νΈμΆ3() {
Criteria cri = new Criteria();
cri.setPage(3);
cri.setPerPageNum(5);
List<BoardVO> boardList = dao.listPage(cri);
for(BoardVO vo : boardList) {
System.out.println(vo.getBno()+" : "+vo.getTitle());
}
}
}
daoκ°μ²΄κ° νμν λλ§λ€ newμ°μ°μλ‘ μλ‘μ΄ κ°μ²΄λ₯Ό κ³μ μμ±ν΄λ΄λ κ²(κ°ν κ²°ν©)μ΄ μλλΌ
@Inject
private BoardDAO dao;
μ μ½λλ₯Ό μ΄μ©ν΄ μμ‘΄μ±μ μ£Όμ νλ©΄ κ°μ±κ°μ κ²°ν©λλ₯Ό μ€μΌ μ μλ€(λμ¨ν κ²°ν©)
μ₯μ
1. μμ‘΄μ±μ΄ μ€μ΄λ λ€.
2. μ¬μ¬μ©μ±μ΄ λμμ§λ€.
3. ν μ€νΈνκΈ° μ’μμ§λ€.
4. κ°λ μ±μ΄ μ’μμ§λ€.
μμ§κΉμ§ μμ‘΄μ±μ£Όμ μ λν΄ μμ ν μ΄ν΄νμ§λ λͺ»ν΄μ κ³μ μΆκ°ν μμ
'STUDY > SPRING' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
Spring boot - ν리λ§μ»€(freemaker) μ€μ (0) | 2023.07.06 |
---|---|
Spring Boot 기본 ꡬ쑰 (0) | 2023.07.06 |
μΉ΄μΉ΄μ€ λ‘κ·ΈμΈ API μ¬μ©νκΈ° - 4(λ‘κ·ΈμΈ μλ£) (0) | 2022.08.18 |
μΉ΄μΉ΄μ€ λ‘κ·ΈμΈ API μ¬μ©νκΈ° - 3 (0) | 2022.08.18 |
μΉ΄μΉ΄μ€ λ‘κ·ΈμΈ API μ¬μ©νκΈ° -2 (1) | 2022.08.16 |