Q1. HTMLμ href μμ μλκ²½λ‘(../) , μ λκ²½λ‘ (/)κ° μ‘΄μ¬νλλ°,
μ€νλ§νλ μμν¬μ view 리ν΄μ λ°λ‘ μ λκ²½λ‘λ‘ λΏλ €μ£Όλ νμμΈκ°?
μμ1) <li><a href="/user/form" role="button">νμκ°μ
</a></li>
μμ2) registry.addViewController("/qna/form").setViewName("qna/form");
Q2. Optional κ³Ό Objects.requireNonNull() κ³Ό μ°¨μ΄μ
μꡬμ¬νμ μλ μΈ λ©λͺ¨λ¦¬ νμ λ°μ΄ν°λ² μ΄μ€ h2 λ₯Ό μ€μΉνλ €κ³ νλλ°, μꡬμ¬νμ λΉλ λκ΅¬κ° maven νμμ΄μ΄μ λ΄κ° μ°κ³ μλ gradle 쑰건μΌλ‘ κ²μμ νλλ°
λΈλ‘κ·Έλ€μ΄ λͺ¨λ μν©μμ μ λ΅μ΄ μλλΌ..μλ§μ μμ‘΄μ±μ μ°ΎλλΌ μ’ ν€λ§Έλ€..
μꡬμ¬νμ μλ DB Connection μ€μ β application.properties μ μ μ©νλ λμ€ λ¬Έμ λ°μ
spring.datasource.url=jdbc:h2:mem://localhost/~/java-qna;MVCC=TRUE;DB_CLOSE_ON_EXIT=FALSE
H2 1.4.200 λ²μ λΆν° MVCC μ΅μ μ΄ μ κ±°λμμ΅λλ€. κ·Έλμ μ΄μ λ μ κ±°νλ κ²μ΄ λ§μ΅λλ€.
public LocalDateTime getTime() {
return time;
}
Getter λ©μλκ° μμΌλ©΄ μ€νλ§νλ μμν¬κ° ν΄λμ€μ λ©€λ²λ³μλ₯Ό μ½μ§ λͺ»νλ€.
ν μ΄λΈ μλ μμ± μ€μ β application.properties
μλ²λ₯Ό μμνλ μμ μ DB ν μ΄λΈμ dropνμ§ μλλ‘ μ€μ νλ λ°©λ².
spring.jpa.hibernate.ddl-auto=validate