sách gpt4 ăn đã đi

Phân tích cách sử dụng Springmvc @PathVariable

In lại Tác giả: qq735679552 Thời gian cập nhật: 28-09-2022 22:32:09 38 4
mua khóa gpt4 giày nike

CFSDN nhấn mạnh vào giá trị tạo ra nguồn mở và chúng tôi cam kết xây dựng nền tảng chia sẻ tài nguyên để mọi nhân viên CNTT có thể tìm thấy thế giới tuyệt vời của bạn tại đây.

Phân tích cách sử dụng Springmvc @PathVariable trong bài blog CFSDN này được tác giả sưu tầm và biên soạn. Nếu các bạn quan tâm đến bài viết này thì nhớ like nhé.

Phân tích cách sử dụng @PathVariable

Mô tả vấn đề

?
1
2
3
4
@Yêu cầu lập bản đồ (giá trị = "/auth1/{uuid}/xxx" , phương thức = RequestMethod.GET)
công cộng vô hiệu Mã hình ảnh1( @PathVariable (giá trị = "Uuid" ) Chuỗi uuid) {
     logger.info(uuid);
}

Xem đoạn mã trên, cách phân tích uuid trong url và chuyển nó dưới dạng tham số.

quá trình phân tích cú pháp

(Nhận yêu cầu: chẳng hạn như /auth1/xxxx-xxx-xxx/xxx).

1. Tách /auth1/{uuid}/xxx thành auth1, {uuid} và xxx theo /.

2. Thay thế {uuid} bằng (.*) và ghi khóa là uuid.

3. Tương tự chia /auth1/xxxx-xxx-xxx/xxx thành auth1, xxxx-xxx-xxx, xxx.

4. Thực hiện khớp thông thường và nhận uuid=xxxx-xxx-xxx dựa trên nhóm.

5. Đặt uuid=xxxx-xxx-xxx vào thuộc tính của yêu cầu.

6. Lấy biến đường dẫn có tên uuid dựa trên sự phản ánh và chú thích.

7. Đi tới yêu cầu lấy uuid, sau đó gọi phương thức.

Sau đây là mã phân tích cú pháp để kiểm tra springmvc.

?
1
2
3
4
5
6
công cộng tĩnh vô hiệu main(String[] args) {
     AntPathMatcher phù hợp = mới AntPathMatcher();
     Hệ thống.out.println(matcher.match( "{uuid}" , "xxx" ));
     Bản đồ kết quả = matcher.extractUriTemplateVariables( "{uuid}" , "xxx" );
     System.out.println(kết quả);
}

Khi câu hỏi trên được viết là:

?
1
2
3
4
@Yêu cầu lập bản đồ (giá trị = "/auth1/{uuid}/xxx" , phương thức = RequestMethod.GET)
công cộng vô hiệu Mã hình ảnh1( @PathVariable Chuỗi uuid) {
     logger.info(uuid);
}

Khi , đoạn mã sau mô phỏng và kiểm tra quá trình lấy uuid bằng phản xạ.

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
công cộng tĩnh vô hiệu main(String[] args) ném Ngoại lệ {
     BeanInfo beanInfo = Introspector.getBeanInfo(A. lớp học );
     MethodDescriptor[] methodDescriptors = beanInfo.getMethodDescriptors();
     (Phương thứcDescriptor phương thứcDescriptor : phương thứcDescriptors) {
         Hệ thống.out.println( "phương pháp:" + phương thứcDescriptor.getName());
         ParameterDescriptor[] params = methodDescriptor.getParameterDescriptors();
         nếu như (tham số != vô giá trị ) {
             (Tham sốDescriptor: params) {
                 Hệ thống.out.println( "tham số:" + param.getName());
             }
         }
     }
     Phương pháp[] phương pháp = A. lớp học .getMethods();
     (Phương pháp phương pháp : các phương pháp) {
         nếu như (phương thức.getName().bằng( "Xin chào" )) {
             LocalVariableTableParameterNameDiscoverer người khám phá =
                     mới Biến cục bộTableParameterNameDiscoverer();
             String[] methodNames = discoverer.getParameterNames(phương thức);
             (Chuỗi methodName : methodNames) {
                 System.out.println(tên phương thức);
             }
         }
     }
}

Tham số động sử dụng @PathVariable

Hiện tại có một siêu liên kết như sau.

?
1
2
"/actions/article/readArticle/${article.id} "/> "
                                                  mục tiêu= "_trống" >${article.title}

Đặc điểm của siêu liên kết này là giá trị id được phân tích bằng biểu thức EL sẽ được thêm vào đường dẫn URL.

Do đó, trong lớp Trình điều khiển của SpringMVC, nó cần được phân tích cú pháp bằng cách sử dụng @PathVariable("articleId") Long ArticleId.

@PathVariable được sử dụng đặc biệt để phân tích các tham số động trong các yêu cầu URL.

Mã trong lớp Trình điều khiển như sau

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
công cộng tĩnh cuối cùng Chuỗi URL_ARTICLE_READ = "bài viết/đọcArticle/{articleId}" ;
     /**
      * Tới trang chi tiết bài viết
      * Lấy nội dung bài viết được chỉ định dựa trên số ID bài viết được chỉ định trong đường dẫn URL
      *
      * @param ArticleId Số ID của bài viết được chỉ định
      * @return Lấy dữ liệu của bài viết này và vào trang chi tiết bài viết
      */
     @Yêu cầu lập bản đồ (giá trị = {URL_ARTICLE_READ} )
     công cộng ModelAndView đọcBài viết( @PathVariable ( "Id bài viết" ) Id bài viết dài){
         LOGGER.thông tin "nhập trang chi tiết bài viết, ArticleId = {}" , Id bài viết);
         cuối cùng Bài viết bài viết = ArticleService.getArticleById(articleId);
  ...
     }

Bằng cách này, giá trị của ${article.id} trên trang cuối cùng được ánh xạ tới Long ArticleId trong Java.

Trên đây là kinh nghiệm cá nhân của mình, hi vọng có thể cho các bạn tham khảo và mong các bạn có thể ủng hộ mình.

Liên kết gốc: https://blog.csdn.net/zxy861114/article/details/51459077.

Cuối cùng, bài viết về phân tích cách sử dụng của Springmvc @PathVariable kết thúc tại đây. Nếu bạn muốn biết thêm về phân tích cách sử dụng của Springmvc @PathVariable, vui lòng tìm kiếm bài viết CFSDN hoặc tiếp tục duyệt các bài viết liên quan. blog tương lai! .

38 4 0
qq735679552
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress