{"id":18621,"date":"2024-03-15T17:20:49","date_gmt":"2024-03-15T17:20:49","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/"},"modified":"2024-03-21T13:44:49","modified_gmt":"2024-03-21T13:44:49","slug":"how-can-spring-boot-filter-data","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/","title":{"rendered":"How can Spring Boot filter data?"},"content":{"rendered":"<p>Spring Boot can use filters or interceptors to filter data.<\/p>\n<p>Using filters:<\/p>\n<ol>\n<li>A Filter in javax.servlet<\/li>\n<li>This is a component.<\/li>\n<li>filter<\/li>\n<li>carry out the filterChain<\/li>\n<li>Please place an order.<\/li>\n<\/ol>\n<p>Sample code:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">@Component<\/span>\r\n<span class=\"hljs-meta\">@Order(1)<\/span>\r\n<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title class_\">MyFilter<\/span> <span class=\"hljs-keyword\">implements<\/span> <span class=\"hljs-title class_\">Filter<\/span> {\r\n    \r\n    <span class=\"hljs-meta\">@Override<\/span>\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">doFilter<\/span><span class=\"hljs-params\">(ServletRequest request, ServletResponse response, FilterChain chain)<\/span> <span class=\"hljs-keyword\">throws<\/span> IOException, ServletException {\r\n        <span class=\"hljs-comment\">\/\/ \u8fdb\u884c\u8fc7\u6ee4\u64cd\u4f5c<\/span>\r\n        <span class=\"hljs-comment\">\/\/ ...<\/span>\r\n        \r\n        <span class=\"hljs-comment\">\/\/ \u5c06\u8bf7\u6c42\u4f20\u9012\u7ed9\u4e0b\u4e00\u4e2a\u8fc7\u6ee4\u5668\u6216\u76ee\u6807\u8d44\u6e90<\/span>\r\n        chain.doFilter(request, response);\r\n    }\r\n}\r\n<\/code><\/pre>\n<p>Use interceptors.<\/p>\n<ol>\n<li>Interceptor for handling requests<\/li>\n<li>The component<\/li>\n<li>handle before<\/li>\n<li>truth<\/li>\n<li>incorrect<\/li>\n<li>@Request<\/li>\n<\/ol>\n<p>Example code:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">@Component<\/span>\r\n<span class=\"hljs-meta\">@Order(1)<\/span>\r\n<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title class_\">MyInterceptor<\/span> <span class=\"hljs-keyword\">implements<\/span> <span class=\"hljs-title class_\">HandlerInterceptor<\/span> {\r\n    \r\n    <span class=\"hljs-meta\">@Override<\/span>\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-type\">boolean<\/span> <span class=\"hljs-title function_\">preHandle<\/span><span class=\"hljs-params\">(HttpServletRequest request, HttpServletResponse response, Object handler)<\/span> <span class=\"hljs-keyword\">throws<\/span> Exception {\r\n        <span class=\"hljs-comment\">\/\/ \u8fdb\u884c\u8fc7\u6ee4\u64cd\u4f5c<\/span>\r\n        <span class=\"hljs-comment\">\/\/ ...<\/span>\r\n        \r\n        <span class=\"hljs-comment\">\/\/ \u8fd4\u56detrue\u8868\u793a\u7ee7\u7eed\u6267\u884c\u540e\u7eed\u7684\u62e6\u622a\u5668\u6216\u5904\u7406\u5668\uff0c\u8fd4\u56defalse\u8868\u793a\u4e2d\u65ad\u540e\u7eed\u7684\u6267\u884c<\/span>\r\n        <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-literal\">true<\/span>;\r\n    }\r\n}\r\n<\/code><\/pre>\n<p>It is important to note that filters are based on the Servlet specification, allowing filtering operations on all requests, while interceptors are provided by the Spring MVC framework and can only filter requests for controllers.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Spring Boot can use filters or interceptors to filter data. Using filters: A Filter in javax.servlet This is a component. filter carry out the filterChain Please place an order. Sample code: @Component @Order(1) public class MyFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { \/\/ \u8fdb\u884c\u8fc7\u6ee4\u64cd\u4f5c \/\/ [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-18621","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How can Spring Boot filter data? - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How can Spring Boot filter data?\" \/>\n<meta property=\"og:description\" content=\"Spring Boot can use filters or interceptors to filter data. Using filters: A Filter in javax.servlet This is a component. filter carry out the filterChain Please place an order. Sample code: @Component @Order(1) public class MyFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { \/\/ \u8fdb\u884c\u8fc7\u6ee4\u64cd\u4f5c \/\/ [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T17:20:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T13:44:49+00:00\" \/>\n<meta name=\"author\" content=\"William Carter\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"William Carter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/\"},\"author\":{\"name\":\"William Carter\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0\"},\"headline\":\"How can Spring Boot filter data?\",\"datePublished\":\"2024-03-15T17:20:49+00:00\",\"dateModified\":\"2024-03-21T13:44:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/\"},\"wordCount\":88,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/\",\"name\":\"How can Spring Boot filter data? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T17:20:49+00:00\",\"dateModified\":\"2024-03-21T13:44:49+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How can Spring Boot filter data?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0\",\"name\":\"William Carter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g\",\"caption\":\"William Carter\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/williamcarter\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How can Spring Boot filter data? - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/","og_locale":"en_US","og_type":"article","og_title":"How can Spring Boot filter data?","og_description":"Spring Boot can use filters or interceptors to filter data. Using filters: A Filter in javax.servlet This is a component. filter carry out the filterChain Please place an order. Sample code: @Component @Order(1) public class MyFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { \/\/ \u8fdb\u884c\u8fc7\u6ee4\u64cd\u4f5c \/\/ [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T17:20:49+00:00","article_modified_time":"2024-03-21T13:44:49+00:00","author":"William Carter","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"William Carter","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/"},"author":{"name":"William Carter","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0"},"headline":"How can Spring Boot filter data?","datePublished":"2024-03-15T17:20:49+00:00","dateModified":"2024-03-21T13:44:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/"},"wordCount":88,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/","url":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/","name":"How can Spring Boot filter data? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T17:20:49+00:00","dateModified":"2024-03-21T13:44:49+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-can-spring-boot-filter-data\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How can Spring Boot filter data?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0","name":"William Carter","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g","caption":"William Carter"},"url":"https:\/\/www.silicloud.com\/blog\/author\/williamcarter\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/18621","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=18621"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/18621\/revisions"}],"predecessor-version":[{"id":52314,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/18621\/revisions\/52314"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=18621"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=18621"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=18621"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}