Springboot Thymeleaf 디지털 대상 사용 방법

Thymeleaf 는 org.thymeleaf.expression.Numbers 클래스 로 숫자 를 처리 하고 템 플 릿 에서\#numbers 대상 으로 숫자 를 처리 합 니 다.
개발 환경:IntelliJ IDEA 2019.2.2
Spring Boot 버 전:2.1.8
데모 라 는 Spring Boot 프로젝트 를 새로 만 듭 니 다.
pom.xml Thymeleaf 의존 추가:

  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-thymeleaf</artifactId>
  </dependency>
정수 포맷
네 가지 방법 이 있다.
(1)formatInteger(number,digits)
첫 번 째 매개 변 수 는 하나의 숫자 이 고 작은 숫자 점 이 있 으 면 반올림 하고 두 번 째 매개 변 수 는 가장 적은 정수 자릿수 를 설정 하 며 부족 하면 0(이하 동일)을 보충 합 니 다.
(2)arrayFormatInteger(numbers,digits)
배열 에 들 어가 처리 한 배열 을 되 돌려 줍 니 다.
(3)listFormatInteger(numbers,digits)
List 에 들 어가 처리 한 List 를 되 돌려 줍 니 다.
(4)setFormatInteger(numbers,digits)
Set 로 전송,처 리 된 Set 로 되 돌아 가기
이 네 가지 방법 은 과부하 방법 이 세 번 째 매개 변 수 를 전달 하여 천 자리 구분자 를 표시 하 는 데 사용 된다.
POINT:"."를 사용한다COMMA:사용","
  • WHITESPACE:"(빈 칸)사용
  • NONE:구분자 사용 안 함
  • DEFAULT:Locale 대상 에 따라 결정 합 니 다
  • 1、src/main/resources/templates/integer.html
    
    formatInteger(number,digits)
    <div th:text="${#numbers.formatInteger(10,0)}"></div>
    <div th:text="${#numbers.formatInteger(10.6,2)}"></div>
    <div th:text="${#numbers.formatInteger(10.6,5)}"></div>
    <div th:text="${#numbers.formatInteger(10.50,0)}"></div>
    <div th:text="${#numbers.formatInteger(10.51,2)}"></div>
    <div th:text="${#numbers.formatInteger(10000000,0,'COMMA')}"></div>
    <div th:text="${#numbers.formatInteger(10000000,0,'POINT')}"></div>
    
    arrayFormatInteger(numbers,digits)
    <div th:each="num : ${#numbers.arrayFormatInteger(arr,0)}">
     <div th:text="${num}"></div>
    </div>
    listFormatInteger(numbers,digits)
    <div th:each="num : ${#numbers.listFormatInteger(list,2)}">
     <div th:text="${num}"></div>
    </div>
    setFormatInteger(numbers,digits)
    <div th:each="num : ${#numbers.setFormatInteger(set,4)}">
     <div th:text="${num}"></div>
    </div>
    2、src/main/java/com/example/demo/IntegerController.java
    
    package com.example.demo;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    import java.util.Arrays;
    import java.util.HashSet;
    import java.util.List;
    import java.util.Set;
    
    @Controller
    public class IntegerController {
     @RequestMapping("/integer")
     public String integer(Model model){
      Double[] arr = new Double[]{10D, 10.9};
      List list = Arrays.asList(arr);
      Set set = new HashSet(list);
      model.addAttribute("arr", arr);
      model.addAttribute("list", list);
      model.addAttribute("set", set);
      return "integer";
     }
    }
    브 라 우 저 접근:http://localhost:8080/integer
    페이지 출력:
    formatInteger(number,digits)
    10
    11
    00011
    10
    11
    10,000,000
    10.000.000
    arrayFormatInteger(numbers,digits)
    10
    11
    listFormatInteger(numbers,digits)
    10
    11
    setFormatInteger(numbers,digits)
    0010
    0011
    소수 포맷
    똑 같이 네 가지 방법 이 있다.
    (1)formatDecimal(number,intDig,decDig)
    첫 번 째 매개 변 수 는 하나의 숫자 이 고 두 번 째 매개 변 수 는 가장 적은 정수 자릿수 를 설정 합 니 다(부족 하면 0 을 보충 합 니 다).세 번 째 매개 변 수 는 소수 자릿수 를 유지 합 니 다.
    (2)arrayFormatDecimal(numArray,intDig,decDig)
    배열 에 들 어가 처리 한 배열 을 되 돌려 줍 니 다.
    (3)listFormatDecimal(numList,intDig,decDig)
    List 에 들 어가 처리 한 List 를 되 돌려 줍 니 다.
    (4)setFormatDecimal(numSet,intDig,decDig)
    Set 로 전송,처 리 된 Set 로 되 돌아 가기
    이 네 가지 방법 은 모두 두 가지 과부하 방법 이 존재 합 니 다.format Decimal 을 예 로 들 면:
    (a)formatDecimal(number,intDig,decDig,decPoint)
    decPoint 는 어떤 기 호 를 소수점 으로 하고 값 을 POINT,COMMA,WHITESPACE,NONE 와 DEFAULT 로 하 는 지 표시 합 니 다.
    (b)formatDecimal(number,intDig,separator,decDig,decPoint)
    separator 는 어떤 기 호 를 천 자리 구분자 로 하 는 지 를 나타 내 며,같은 값 은 POINT,COMMA,WHITESPACE,NONE 와 DEFAULT 이다.
    1、src/main/resources/templates/decimal.html
    
    <div th:text="${#numbers.formatDecimal(10, 0, 0)}"></div>
    <div th:text="${#numbers.formatDecimal(10.6, 0, 2)}"></div>
    <div th:text="${#numbers.formatDecimal(10.6, 5, 2)}"></div>
    <div th:text="${#numbers.formatDecimal(10000000, 0, 2, 'COMMA')}"></div>
    <div th:text="${#numbers.formatDecimal(10000000, 2, 2, 'POINT')}"></div>
    <div th:text="${#numbers.formatDecimal(10000000, 2, 'POINT', 2, 'POINT')}"></div>
    2、src/main/java/com/example/demo/DecimalController.java
    
    package com.example.demo;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @Controller
    public class DecimalController {
     @RequestMapping("/decimal")
     public String decimal(){
      return "decimal";
     }
    }
    브 라 우 저 접근:http://localhost:8080/decimal
    페이지 출력:
    10
    10.60
    00010.60
    10000000,00
    10000000.00
    10.000.000.00
    3.백분율 포맷
    소수 포맷 과 유사 하 게 4 가지 방법 이 있 는데,그 중에서 하나의 숫자 를 처리 하 는 데 쓰 인 다.
    formatPercent(number,intDig,decDig)
    첫 번 째 매개 변 수 는 하나의 숫자 이 고 두 번 째 매개 변 수 는 가장 적은 정수 자릿수 를 설정 합 니 다(부족 하면 0 을 보충 합 니 다).세 번 째 매개 변 수 는 소수 자릿수 를 유지 합 니 다.
    1、src/main/resources/templates/percent.html


    2、src/main/java/com/example/demo/PercentController.java
    
    package com.example.demo;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @Controller
    public class PercentController {
     @RequestMapping("/percent")
     public String percent(){
      return "percent";
     }
    }
    브 라 우 저 접근:http://localhost:8080/percent
    페이지 출력:
    12.30%
    00,012.30%
    4.sequence 방법
    sequence 방법 은 Integer 배열 로 되 돌아 갑 니 다.
    (1)sequence(from,to)
    시작 값 과 끝 값 을 설정 합 니 다.from 이 to 보다 크 면 기본 걸음 길이 가 1 이 고 그렇지 않 으 면-1 입 니 다.
    (2)sequence(from,to,step)
    시작 값 과 끝 값,보폭 을 설정 합 니 다.
    1、src/main/resources/templates/sequence.html
    
    <div th:each="num : ${#numbers.sequence(0,3)}">
     <div th:text="${num}"></div>
    </div>
    ----------
    <div th:each="num : ${#numbers.sequence(5,1)}">
     <div th:text="${num}"></div>
    </div>
    2、src/main/java/com/example/demo/SequenceController.java
    
    package com.example.demo;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @Controller
    public class SequenceController {
     @RequestMapping("/sequence")
     public String sequence(){
      return "sequence";
     }
    }
    브 라 우 저 접근:http://localhost:8080/percent
    페이지 출력:
    0
    1
    2
    3
    ----------
    5
    4
    3
    2
    1
    이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

    좋은 웹페이지 즐겨찾기