일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- JPQL
- 스프링 핵심 원리
- http
- JDBC
- Servlet
- java
- db
- jpa
- 스프링 핵심 기능
- 백준
- 그리디
- Greedy
- 스프링
- Exception
- SpringBoot
- spring
- Proxy
- springdatajpa
- pointcut
- Android
- Spring Boot
- AOP
- 알고리즘
- 인프런
- kotlin
- 김영한
- QueryDSL
- Thymeleaf
- transaction
- 자바
- Today
- Total
목록Thymeleaf (26)
개발자되기 프로젝트
1. 메시지 기능. 화면에 보이는 문구가 마음에 들지 않는다고, 상품명이라는 단어를 모두 상품이름으로 고쳐달라고 하면 어떻게 해야할까? 여러 화면에 보이는 상품명, 가격, 수량 등, label 에 있는 단어를 변경하려면 관련있는 모든 화면들을 다 찾아가면서 변경해야 한다. addForm.html , editForm.html , item.html , items.html 귀찮다.. 이렇게 다 바꿔야 하는 이유가 뭘까? 바로 HTML 파일에 메시지가 하드코등 되어있기 때문. 메시지를 한 곳에서 관리하는 기능이 메시지 기능임. 예를들어 message.properties 와 같은 관링용 파일 생성. item=상품 item.id=상품 ID item.itemName=상품명 item.price=가격 item.quant..
1. 셀렉트 박스 여러 선택지 중 하나를 선택하는 경우. 2. select 박스 추가 배송 방식 빠른 배송 일반 배송 느린 배송 셀렉트 박스로 하나만 선택이 가능. 3. Controller 자바 객체 사용. @ModelAttribute("deliveryCodes") public List deliveryCodes(){ List deliveryCodes = new ArrayList(); deliveryCodes.add(new DeliveryCode("FAST", "빠른 배송")); deliveryCodes.add(new DeliveryCode("NORMAL", "일반 배송")); deliveryCodes.add(new DeliveryCode("SLOW", "느린 배송")); return deliveryCod..
1. 라디오 버튼 라디오 버튼은 여러 선택지 중에 하나를 선택할 때 사용할 수 있음 2. 라디오 버튼 추가 상품 종류 도서, 식품, 기타 ENUM 사용 3. Controller @ModelAttribute("itemTypes") 사용 return되는 ItemType.values()를 model의 attribute에 추가함. ItemType.values() -> ENUM의 모든 정보를 배열로 반환. @ModelAttribute("itemTypes") public ItemType[] itemTypes(){ return ItemType.values(); } 4. addForm.html type.name() : enum의 name?? Returns the name of this enum constant, exa..
1. Thymeleaf 매뉴얼 기본 메뉴얼: https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html 스프링 통합 메뉴얼: https://www.thymeleaf.org/doc/tutorials/3.0/thymeleafspring.html 2. Spring 통합으로 추가되는 기능 스프링의 SpringEL 문법 통합 SpringEL 표현식 ~~.username : 프로퍼티 접근 -> user.getUsername() ~~['username'] -> user.getUsername() ~~.getUsername() -> -> getUsername() 직접 호출. ${@myBean.doSomething()} 처럼 스프링 빈 호출 지원 편리한 폼 관리를 위..
template layout 개념을 레이아웃 H1 레이아웃 컨텐츠 레이아웃 푸터 2. layoutExtendMain html 자체를 th:replace함. 뭐로? 위의 layoutFile로. 이 때 title, section 태그를 넘겨줌. 메인 페이지 컨텐츠 메인 페이지 포함 내용 3. 결과 레이아웃 H1 메인 페이지 컨텐츠 메인 페이지 포함 내용 레이아웃 푸터 4. GitHub : 210919 layout 2 GitHub - bsh6463/Thymeleaf Contribute to bsh6463/Thymeleaf development by creating an account on GitHub. github.com
fragment는 코드 조각을 가지고 와서 사용했다. 이번에는 코드 조각을 layout에 넘겨서 사용해보자. 예를 들어서 메인 컨텐츠 3. base.html layoutMain에서 title 태그와 link태그가 넘어온다. 레이아웃 타이틀로 넘어온 title 태그로 replace. link의 경우 th:block으로 지정했다. 넘어온 link tag를 가지고 th:block을 대체한다. 4. 결과 메인 컨텐츠 5. GitHub : 210919 layout 1 GitHub - bsh6463/Thymeleaf Contribute to bsh6463/Thymeleaf development by creating an account on GitHub. github.com
1. JAVA Script Inline Thymeleaf는 Javascript에서 Thymeleaf를 편리하게 사용할 수 있도록 해당 기능을 제공 4. javascript inline 적용 전 text var username = [[${user.username}]]; text의 경우 "[[${user.username}]]"로 JavaScript에 전달되어야 함.. 랜더링 후 : 흠.."UserA"로 넘어가지 않아서 에러.. var username = UserA; Javascript natural template //자바스크립트 내추럴 템플릿 var username2 = /*[[${user.username}]]*/ "test username"; 자바스크립트는 "test username" 부분을 랜더링 후..
1. Thymeleaf자체 태그 예를 들어 를 여러 개 묶어서 루프 돌리고 싶을 때 사용하면 좋음. 해당 tag를 사용해서 여거 div을 하나의 block으로 묶을 수 있음. 2. controller @GetMapping("/block") public String block(Model model){ addUsers(model); return "basic/block"; } 3. block.html 사용자 이름1 사용자 나이1 요약 4. GitHub : 210919 Block GitHub - bsh6463/Thymeleaf Contribute to bsh6463/Thymeleaf development by creating an account on GitHub. github.com