728x90
반응형
Java의 VO
1
2
3
4
5
6
7
8
9
10
11
|
@Setter
@Getter
@ToString
public class MaterialVO {
private int mtrlSeq;
private String mtrlNm;
private String mtrlTp;
private String qty;
}
|
cs |
====
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
@Setter
@Getter
@ToString
public class ProductVO {
private int prodSeq;
private String prodNm;
private String recipe;
private String showYn;
// 재료 리스트
private List<MaterialVO> material;
}
|
cs |
대략 이런 구조라고 해보자.
이때 html에서는 재료리스트는 어떻게 네이밍 해줘야 할까?
1
2
3
4
5
6
|
<input type="text" name="prodSeq" th:value="${detailVO != null ? detailVO.prodSeq: '-1'}"/>
<!-- List -->
<input type="text" name="material[0].mtrlNm" th:value="${detailVO.mainMaterial[0].mtrlNm}">
<input type="text" name="material[1].mtrlNm" th:value="${detailVO.mainMaterial[1].mtrlNm}">
|
cs |
이건 thymeleaf 문법이 포함된 건데,
value 부분은 ModelAndView에 mav.addObject("detailVO", detailVO) 로 값을 넣어준 경우로 참고하면 되고,
중요건 name 부분이다. name="material[i].mtrlNm" 형태다.
ProductVO이 List<MaterialVO> material;
name="material[i].mtrlNm"
붉은색 부분의 네이밍이 같다는 것과 배열과 형태로 인덱스를 지정하고 마침표(.)로 변수명을 구분한다는 것을 주의하면 된다.
출처 : https://cofs.tistory.com/84
728x90
반응형
'코딩 삽질' 카테고리의 다른 글
[thymeleaf, javascript] thymeleaf 3.0.10 이상을 사용하는 html에서 javascript 함수에 인수를 전달할때 (1) | 2019.11.03 |
---|---|
[mybatis] java.lang.NumberFormatException (0) | 2019.10.31 |
[springboot] lombok 컴파일 에러 (0) | 2019.10.13 |
[Intellij, lombok] Intellij에서 lombok 사용 (0) | 2019.10.13 |
[iis] code 413 (0) | 2019.10.13 |