분류 전체보기 썸네일형 리스트형 <label for=""> 과 name 속성(Feat. HTML) 상품명 for 속성의 역할for="itemName"의 역할은 태그와 태그를 연결하는 것입니다.for 속성의 값은 연결하고자 하는 태그의 id 속성과 동일해야 합니다.이렇게 하면 사용자가 을 클릭했을 때, 해당하는 요소로 포커스가 자동으로 이동합니다.이는 사용자 경험을 향상시키고 접근성을 높이는 데 중요한 역할을 합니다.위 코드에서는: 태그의 for="itemName"은 태그의 id="itemName"와 연결됩니다.결과적으로, "상품명" 레이블을 클릭하면 "이름을 입력하세요"라는 입력 필드에 포커스가 이동합니다.이 기능은 특히 키보드나 화면 읽기 프로그램을 사용하는 사용자들에게 유용합니다. name 속성의 역할name="itemName"의 역할은 FORM 데이터를 서버로 전송.. 더보기 [타임리프와 스프링의 통합]의 진짜 의미! 타임리프의 메뉴얼 2가지 형태로 제공된다. 1] 타임리프만 사용할 경우의 메뉴얼2] 스프링과 통합할 경우의 메뉴얼그런데 Spring MVC 구조를 살펴보면 Spring이 제공하는 viewResolver를 통하여 자동으로 뷰 페이지 경로를 찾고, Spring이 제공하는 Model 객체를 통해서 뷰에서 데이터를 꺼내 쓸 수가 있는 것이다. 그럼 이것 또한 Spring과 이미 통합된상태에서 타임리프를 사용하고 있다고 말할 수 있는 것 아닌가??결론부터 말하면 타임리프가 사용된 뷰 페이지에 스프링이 Model 객체를 이용하여 단방향으로 데이터를 뿌려주기만 한다면 그건 타임리프와 스프링이 통합되었다고 할 수 없다. 그 반대로도 즉 타임리프를 통해 스프링 MVC로 데이터가 전송이 돼서 Spring이 제공하는 여러 .. 더보기 Map :: values() 사용 시 주의점(Feat. ConcurrentModificationException) package hello.itemservice.domain.item;import org.springframework.stereotype.Repository;import java.util.*;@Repositorypublic class ItemRepository { private static final Map store = new HashMap(); //static private static long sequence = 0L; //static public List findAll() { return new ArrayList(store.values()); }}, 위 코드에서 store.values()를 new ArrayList(store.values())로.. 더보기 javascript는 서버에서 절대 실행되지 않음 자바 스크립트는 웹 브라우저에서 실행이 되는 언어이다. 고로, 서버 사이드에서 타임리프가 렌더링 될 때 같이 실행되지 않고, 위 뷰가 웹 브라우저에 전달이 되면 그때 웹 브라우저가 실행이 된다. (서버 사이드에서는 타임리프 부분만 렌더링이 된다) 더보기 타임리프 프로토타입 주석(Feat. 타임리프 주석) 타임리프 프로토타입 주석 : 파일을 직접 열람(서버 렌더링을 거치지 않고 웹브라우저로 열람)을 할 경우에는 해당 주석 안의 HTML 소스가 렌더링이 안 되지만, 서버에서 타임리프로 렌더링 됐을 때에만 주석 안의 HTML 코드가 보인다. 3. 타임리프 프로토타입 주석html data/*/--> 타임리프 주석 : 렌더링을 서버에서 거치지 않으면, 해당 주석이 그대로 보인다(타임리프는 "내추럴 템플릿"이라는 점을 기억하자). 그러나 서버 렌더링 작업을 거치면 해당 주석 부분이 사라진다. 더보기 checked(Feat.html,thymeleaf) - checked=false = HTML의 경우, type=checkedbox인 경우 chcked="false"로 설정을 해도 아래와 같이 무조건 체크가 돼 있다. 그러나 타임리프를 사용하면 설정을 마음대로 조종할 수가 있다. - checked o = - checked x = 더보기 static class에 @Component 사용 시 주의점! @Controllerpublic class BasicController { @Component("helloBean") // 이름을 지정하지 않으면, BasicController.helloBean으로 빈 이름이 자동 등록! static class HelloBean{ public String hello(String data){ return "Hello " + data; } } @GetMapping("/text-basic") public String textBasic(Model model) { model.addAttribute("data","Hello Spring!"); return "basic/text-ba.. 더보기 External Schema 데이터베이스에서 External Level은 사용자나 응용 프로그램이 데이터베이스를 어떻게 보는지를 정의하는 가장 상위의 뷰입니다. 쉽게 말해, 이는 데이터를 사용하는 개별 사용자 맞춤 뷰라고 생각하면 됩니다.더 쉽게 설명하자면:사용자 관점의 데이터 뷰데이터를 필요로 하는 사람이 원하는 형태로 제공됩니다.예를 들어, 직원 데이터베이스가 있다면:HR 팀: 직원 이름, 직급, 급여 정보만 필요.IT 팀: 직원 ID, 로그인 기록만 필요.각 팀이 보는 화면이나 데이터는 External Level에 의해 결정됩니다.추상화데이터베이스의 복잡한 구조(테이블, 관계 등)를 숨기고, 필요한 데이터만 보여줍니다.실제 데이터가 어디에 있고 어떻게 저장되어 있는지는 몰라도 됩니다.안전성사용자는 자신이 권한이 있는 데이터만 .. 더보기 이전 1 2 3 4 5 6 7 8 ··· 78 다음