sách gpt4 ăn đã đi

Giải pháp cắt xén của Trung Quốc SpringMVC

In lại Tác giả: qq735679552 Thời gian cập nhật: 29-09-2022 22:32:09 25 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.

Bài viết trên blog CFSDN SpringMVC Chinese cắt xén 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é.

lý lịch

Ví dụ: một ví dụ về các ký tự bị cắt xén của Trung Quốc xuất hiện: khi gửi biểu mẫu.

hình thức.

?
1
2
3
4
5
6
7
8
9
10
11
12
<%@ nội dung trangType="text/html;charset=UTF-8" ngôn ngữ="java" %>
< html >
< cái đầu >
     < tiêu đề >Tiêu đề tiêu đề >
cái đầu >
< thân hình >
< hình thức hoạt động = "/c02/t1" phương pháp = "bưu kiện" >
     < đầu vào kiểu = "chữ" tên = "tên" >
     < đầu vào kiểu = "nộp" >
hình thức >
thân hình >
html >

Lớp kiểm soát kinh doanh.

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
bưu kiện bộ điều khiển;
 
nhập khẩu org.springframework.stereotype.Controller;
nhập khẩu org.springframework.ui.Model;
nhập khẩu org.springframework.web.bind.annotation.RequestMapping;
 
@Bộ điều khiển
công cộng lớp học bộ điều khiểnDemo02 {
 
     @Yêu cầu lập bản đồ ( "/c02/t1" )
     công cộng Chuỗi test1(Tên chuỗi, Mô hình mô hình){
         System.out.println(tên);
         model.addAttribution( "tin nhắn" ,tên);
         trở lại "Bài kiểm tra" ;
     }
}

Kết quả: Xuất hiện các ký tự bị cắt xén.

Giải pháp cắt xén của Trung Quốc SpringMVC

giải pháp

Sử dụng bộ lọc của riêng bạn

Tùy chỉnh Bộ lọc để lọc các ký tự bị cắt xén.

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
bưu kiện Lọc;
 
nhập khẩu javax.servlet.*;
nhập khẩu java.io.IOException;
 
công cộng lớp học Bộ lọc mã hóa thực hiện Lọc {
     công cộng vô hiệu init(Cấu hình bộ lọcCấu hình bộ lọc) ném Ngoại lệ Servlet {
 
     }
 
     công cộng vô hiệu doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) ném Ngoại lệ IO, Ngoại lệ Servlet {
         servletRequest.setCharacterEncoding( "utf-8" );
         servletResponse.setCharacterEncoding( "utf-8" );
         filterChain.doFilter(servletRequest,servletResponse);
     }
 
     công cộng vô hiệu hủy hoại() {
 
     }
}

Định cấu hình bộ lọc này trong web.xml.

?
1
2
3
4
5
6
7
8
< lọc >
     < tên bộ lọc >Bộ lọc mã hóa tên bộ lọc >
     < lớp lọc >Bộ lọc.Bộ lọc mã hóa lớp lọc >
lọc >
< ánh xạ bộ lọc >
     < tên bộ lọc >Bộ lọc mã hóa tên bộ lọc >
     < mẫu url >/* mẫu url >
ánh xạ bộ lọc >

Sử dụng các bộ lọc do SpringMVC cung cấp

Định cấu hình trực tiếp trong web.xml (đã sửa).

?
1
2
3
4
5
6
7
8
9
10
11
12
< lọc >
    < tên bộ lọc >mã hóa tên bộ lọc >
    < lớp lọc >org.springframework.web.filter.CharacterEncodingFilter lớp lọc >
    < thông số nhiệt >
        < tên tham số >mã hóa tên tham số >
        < giá trị tham số >utf-8 giá trị tham số >
    thông số nhiệt >
lọc >
< ánh xạ bộ lọc >
    < tên bộ lọc >mã hóa tên bộ lọc >
    < mẫu url >/* mẫu url >
ánh xạ bộ lọc >

Nếu hai phương pháp trên vẫn không đạt được, hãy thử phương pháp sau, được viết bởi một bậc thầy

?
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
bưu kiện Lọc;
 
nhập khẩu javax.servlet.*;
nhập khẩu javax.servlet.http.HttpServletRequest;
nhập khẩu javax.servlet.http.HttpServletRequestWrapper;
nhập khẩu javax.servlet.http.HttpServletResponse;
nhập khẩu java.io.IOException;
nhập khẩu java.io.UnsupportedEncodingException;
nhập khẩu java. util. Bản đồ;
 
công cộng lớp học Bộ lọc mã hóa chung thực hiện Lọc {
 
     công cộng vô hiệu hủy hoại() {
     }
 
 
     công cộng vô hiệu doFilter(yêu cầu ServletRequest, phản hồi ServletResponse, chuỗi FilterChain) ném Ngoại lệ IO, Ngoại lệ Servlet {
         // Xử lý mã hóa ký tự của phản hồi
         HttpServletResponse myResponse=(HttpServletResponse) phản hồi;
         myResponse.setContentType( "text/html;charset=UTF-8" );
 
         // Chuyển đổi thành các đối tượng liên quan đến giao thức
         HttpServletRequest httpServletRequest = (HttpServletRequest) yêu cầu;
         // Tăng cường việc đóng gói yêu cầu
         HttpServletRequest yêu cầu của tôi = mới Yêu cầu của tôi(httpServletRequest);
         chain.doFilter(yêu cầu của tôi, phản hồi);
     }
 
 
     công cộng vô hiệu init(Cấu hình bộ lọcCấu hình bộ lọc) ném Ngoại lệ Servlet {
     }
 
}
 
//Đối tượng yêu cầu tùy chỉnh, lớp bao bọc của HttpServletRequest
lớp học Yêu cầu của tôi mở rộng HttpServletRequestWrapper {
 
     riêng tư Yêu cầu HttpServletRequest;
     // Có mã hóa nhãn hiệu hay không
     riêng tư Boolean hasEncode;
     //Định nghĩa một hàm tạo có thể được truyền vào đối tượng HttpServletRequest để trang trí nó
     công cộng MyRequest(yêu cầu HttpServletRequest) {
         siêu (lời yêu cầu); // super phải được viết
         cái này .request = yêu cầu;
     }
 
     // Bao gồm các phương thức cần nâng cao
 
     công cộng Bản đồ getParameterMap() {
         // Lấy phương thức yêu cầu trước
         Phương thức chuỗi = request.getMethod();
         nếu như (phương pháp.equalsIgnoreCase( "bưu kiện" )) {
             // gửi yêu cầu
             thử {
                 // Xử lý các ký tự bị cắt xén
                 yêu cầu.setCharacterEncoding( "utf-8" );
                 trở lại yêu cầu.getParameterMap();
             } nắm lấy (UnsupportedEncodingException e) {
                 e.printStackTrace();
             }
         } khác nếu như (phương pháp.equalsIgnoreCase( "lấy" )) {
             // nhận yêu cầu
             Bản đồ tham sốMap = yêu cầu.getParameterMap();
             nếu như (!hasEncode) { // Đảm bảo rằng logic được mã hóa thủ công chỉ chạy một lần
                 (Chuỗi tham sốName: parameterMap.keySet()) {
                     String[] giá trị = parameterMap.get(parameterName);
                     nếu như (giá trị != vô giá trị ) {
                         ( số nguyên tôi = 0 ; i < giá trị.chiều dài; i++) {
                             thử {
                                 // Xử lý lấy mã bị cắt xén
                                 giá trị[i] = mới Chuỗi(giá trị[i]
                                         .getBytes( "ISO-8859-1" ), "utf-8" );
                             } nắm lấy (UnsupportedEncodingException e) {
                                 e.printStackTrace();
                             }
                         }
                     }
                 }
                 hasEncode = ĐÚNG VẬY ;
             }
             trở lại tham sốMap;
         }
         trở lại siêu .getParameterMap();
     }
 
     //Lấy một giá trị
 
     công cộng Chuỗi getParameter(Tên chuỗi) {
         Bản đồ tham sốMap = getParameterMap();
         String[] giá trị = parameterMap.get(tên);
         nếu như (giá trị == vô giá trị ) {
             trở lại vô giá trị ;
         }
         trở lại giá trị[ 0 ]; // Lấy giá trị đầu tiên của tham số
     }
 
     // Lấy tất cả các giá trị
 
     công cộng String[] getParameterValues(Tên chuỗi) {
         Bản đồ tham sốMap = getParameterMap();
         String[] giá trị = parameterMap.get(tên);
         trở lại giá trị;
     }
}
 

Trên đây là chi tiết về giải pháp cắt xén tiếng Trung của SpringMVC. Để biết thêm thông tin về mã cắt xén tiếng Trung của SpringMVC, vui lòng theo dõi các bài viết liên quan khác của tôi! .

Liên kết gốc: https://juejin.cn/post/6944667529717481485.

Cuối cùng, bài viết về giải pháp cắt xén tiếng Trung của SpringMVC kết thúc tại đây. Nếu bạn muốn biết thêm về giải pháp cắt xén tiếng Trung của SpringMVC, 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. .

25 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