๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์กฐ๊ฑด2

[thymeleaf] th:if ์กฐ๊ฑด ์•ˆ์— ๋ฐฐ์—ด์˜ ๊ธธ์ด ๊ฐ€์ ธ์˜ค๊ธฐ / #arrays.length() thymeleaf์˜ th:if๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์กฐ๊ฑด์„ ํ™•์ธํ•˜๊ณ  true์ผ ๊ฒฝ์šฐ ์š”์†Œ๋ฅผ ํ‘œ์‹œ false์ผ ๊ฒฝ์šฐ ์š”์†Œ๋ฅผ ํ‘œ์‹œํ•˜์ง€ ์•Š๊ฒŒ ๋œ๋‹ค. th:if๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ ์กฐ๊ฑด์‹ ๊ฒฐ๊ณผ๊ฐ€ true์ผ ๊ฒฝ์šฐ ํ‘œ์‹œ๋˜๊ฒŒ ๋จ ์กฐ๊ฑด์‹ ๊ฒฐ๊ณผ๊ฐ€ false์ผ ๊ฒฝ์šฐ ํ•ด๋‹น ์š”์†Œ๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด th:unless๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค! ๋ฌผ๋ก  th:if=${ num != 5 } ๋กœ ํ•ด๋„ ์ƒ๊ด€ ์—†๋‹ค. ํ”„๋กœ์ ํŠธ ์ž‘์—… ์ค‘ model๋กœ ๋ณด๋‚ธ ๋ฐฐ์—ด ๋ฆฌํ„ฐ๋Ÿด์ด null์ผ ๊ฒฝ์šฐ ์—๋Ÿฌ๊ฐ€ ์ƒ๊ธฐ์ง€ ์•Š๋„๋ก th:if๋ฅผ ์ด์šฉํ•ด null์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ๋ฅผ ํ–ˆ๋Š”๋ฐ ์ƒ๊ฐํ•œ ๋Œ€๋กœ ์ฒ˜๋ฆฌ๊ฐ€ ์ž˜ ๋˜์ง€ ์•Š์•˜๋‹ค. ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. java๋กœ list๋ฅผ ์ถœ๋ ฅํ–ˆ์„ ๋•Œ ํ™•์‹คํžˆ ๋นˆ ๊ณต๊ฐ„์ธ ๊ฒƒ์„ ํ™•์ธํ–ˆ๋‹ค. list์— ๋‹ด๊ธด ๊ฐ’์ด ์—†์–ด ๋นˆ ๊ณต๊ฐ„์ผ ๋•Œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค๊ฐ€ ๋‚˜์™€.. 2023. 11. 28.
[thymeleaf] layout decorate ์กฐ๊ฑด ๋ถ€์—ฌ - @{}, @{||} ํ”„๋กœ์ ํŠธ ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์œ„ํ•œ ๋ฆฌํŒฉํ† ๋ง ์ž‘์—… ๋„์ค‘ ํ•˜๋‚˜์˜ ํŽ˜์ด์ง€์—์„œ ์‚ฌ์šฉ์ž ๊ถŒํ•œ์— ๋”ฐ๋ผ thymeleaf์˜ layout decorate์˜ ๊ฒฝ๋กœ๊ฐ€ ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง€๋„๋ก ์ฒ˜๋ฆฌํ•ด์•ผ ํ–ˆ๋‹ค. ์ฒ˜์Œ์—” layout:decorate ์ž‘์„ฑํ•˜๋Š” html ํƒœ๊ทธ ๋ถ€๋ถ„์„ th:block์œผ๋กœ ๊ฐ์‹ธ th:if๋ฅผ ์ด์šฉํ•ด ์ฒ˜๋ฆฌํ•˜๋ ค ํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋ ‡๊ฒŒ ์ฒ˜๋ฆฌํ•  ๊ฒฝ์šฐ 500 ์—๋Ÿฌ๊ฐ€ ๋œฌ๋‹ค. java.lang.IllegalArgumentException: layout:decorate/data-layout-decorate must appear in the root element of your template ๋ฌธ์ œ์˜ ์˜ค๋ฅ˜๋Š” layout:decorate๋‚˜ data-layout-decorate๊ฐ€ ํ…œํ”Œ๋ฆฟ์˜ ์ตœ์ƒ์œ„ ์—˜๋ฆฌ๋จผํŠธ์— ๋‚˜ํƒ€๋‚˜์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ฒฐ๊ตญ.. 2023. 11. 26.