日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

springmvc整合redis_111 SpringBoot整合Servlet JSP Filter Listener

發(fā)布時(shí)間:2025/3/20 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springmvc整合redis_111 SpringBoot整合Servlet JSP Filter Listener 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1. SpringBoot介紹

(1) 什么是Spring Boot?

(2) Spring Boot有哪些特點(diǎn)?

Spring Boot 設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新 Spring 應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程。

嵌入的 Tomcat,無(wú)需部署 WAR 文件

Spring Boot 并不是對(duì) Spring 功能上的增強(qiáng),而是提供了一種快速使用 Spring 的方式。

2. 構(gòu)建SpringBoot項(xiàng)目以及啟動(dòng)器講解

(1) Spring Boot常見(jiàn)的啟動(dòng)器有哪些?

所謂的SpringBoot啟動(dòng)器其實(shí)就是一些jar包的集合。SpringBoot一共提供44啟動(dòng)器。

spring-boot-starter-web 支持全棧式的web開(kāi)發(fā),包括了tomcat和springMVC等jar

Spring-boot-starter-jdbc 支持spring以jdbc方式操作數(shù)據(jù)的jar包的集合。

Spring-boot-starter-redis 支持redis鍵值存儲(chǔ)的數(shù)據(jù)庫(kù)操作。

(2) Spring Boot的Web啟動(dòng)器的坐標(biāo)是什么?

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>

3. 編寫(xiě)HelloWorld

(1) 如何編寫(xiě)Spring Boot啟動(dòng)類(lèi)?

package com.bjsxt;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /*** SpringBoot 啟動(dòng)類(lèi)* @author MSI-PC**/ @SpringBootApplication public class App {public static void main(String[] args) {SpringApplication.run(App.class, args);} }

(2) 編寫(xiě)Spring Boot啟動(dòng)類(lèi)時(shí)需要注意什么?

啟動(dòng)器存放的位置,啟動(dòng)器可以和controller位于同一個(gè)包下,或者位于controller的上一級(jí)包中,但是不能放到controller平行的包及子包下。即啟動(dòng)器只能位于Controller所在包及其上級(jí)包中。

4. Spring Boot整合Servlet

(1) Spring Boot整合Servlet有幾種方式?

通過(guò)注解掃描完成Servlet組件的注冊(cè)

通過(guò)方法完成Servlet組件的注冊(cè)

(2) 各種方式有什么特點(diǎn)?

通過(guò)注解掃描完成Servlet組件的注冊(cè)

Servlet

package com.bjsxt.servlet;import java.io.IOException;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /*** SpringBoot整合Servlet方式一* @author MSI-PC**/ @WebServlet(name="FirstServlet",urlPatterns="/first") public class FirstServlet extends HttpServlet{@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("FirstServlet.........................");} }

App啟動(dòng)類(lèi)

package com.bjsxt;import javax.servlet.annotation.WebServlet;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan;/*** SpringBoot啟動(dòng)類(lèi)* 整合Servlet方式一:通過(guò)注解* @author MSI-PC**/ @SpringBootApplication @ServletComponentScan //在SpringBoot啟動(dòng)時(shí),會(huì)掃描@WebServlet注解,并將該類(lèi)實(shí)例化 public class App {public static void main(String[] args) {SpringApplication.run(App.class, args);} }

通過(guò)方法完成Servlet組件的注冊(cè)

Servlet

package com.bjsxt.servlet;import java.io.IOException;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /*** SpringBoot整合Servlet方式二:通過(guò)方法* @author MSI-PC**/ public class SecondServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("SecondServlet......................");} }

App啟動(dòng)類(lèi)

package com.bjsxt;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletRegistrationBean; import org.springframework.context.annotation.Bean;import com.bjsxt.servlet.SecondServlet;/*** SpringBoot整合Servlet方式二:通過(guò)方法* @author MSI-PC**/ @SpringBootApplication public class App2 {public static void main(String[] args) {SpringApplication.run(App2.class, args);}@Beanpublic ServletRegistrationBean getServletRegistrationBean(){ServletRegistrationBean bean = new ServletRegistrationBean<>(new SecondServlet());return bean;} }

5. Spring Boot整合Filter

(1) Spring Boot整合Filter有幾種方式?

通過(guò)注解掃描完成Filter組件的注冊(cè)

通過(guò)方法完成Filter組件的注冊(cè)

(2) 各種方式有什么特點(diǎn)?

通過(guò)注解掃描完成Filter組件的注冊(cè)

Servlet類(lèi)

package com.bjsxt.servlet;import java.io.IOException;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;@WebServlet(name="FirstServlet",urlPatterns="/first") public class FirstServlet extends HttpServlet{@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("FirstServlet................");} }

Filter類(lèi)

package com.bjsxt.filter;import java.io.IOException;import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebFilter; /*** SpringBoot整合Filter方式一:注解方式* @author MSI-PC**/ @WebFilter(filterName="FirstFilter",urlPatterns="/first") public class FirstFilter implements Filter {@Overridepublic void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)throws IOException, ServletException {System.out.println("進(jìn)入Filter.........");arg2.doFilter(arg0, arg1);System.out.println("離開(kāi)Filter..............");}}

App啟動(dòng)類(lèi)

package com.bjsxt;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan;@SpringBootApplication @ServletComponentScan public class App {public static void main(String[] args) {SpringApplication.run(App.class, args);} }

通過(guò)方法完成Filter組件的注冊(cè)

Servlet

package com.bjsxt.servlet;import java.io.IOException;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class SecondServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("SecondServlet...................");} }

Filter

package com.bjsxt.filter;import java.io.IOException;import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse;public class SecondFilter implements Filter {@Overridepublic void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)throws IOException, ServletException {System.out.println("進(jìn)入SecondFilter............");arg2.doFilter(arg0, arg1);System.out.println("離開(kāi)SecondFilter................");}}

SpringBoot啟動(dòng)類(lèi)

package com.bjsxt;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.FilterRegistrationBean; import org.springframework.boot.web.servlet.ServletRegistrationBean; import org.springframework.context.annotation.Bean;import com.bjsxt.filter.SecondFilter; import com.bjsxt.servlet.SecondServlet;/*** SpringBoot整合Filter方式二:通過(guò)方法* @author MSI-PC**/ @SpringBootApplication public class App2 {public static void main(String[] args) {SpringApplication.run(App2.class, args);}/*** 注冊(cè)Servlet* @return*/@Beanpublic ServletRegistrationBean getServletRegistrationBean() {ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet());bean.addUrlMappings("/second");return bean;}/*** 注冊(cè)Filter* @return*/@Beanpublic FilterRegistrationBean getFilterRegistrationBean() {FilterRegistrationBean bean = new FilterRegistrationBean(new SecondFilter());bean.addUrlPatterns("/second");return bean;} }

6. springBoot整合Listener

(1) Spring Boot整合Listener有幾種方式?

通過(guò)注解掃描方式

通過(guò)方法的方式

(2) 各種方式有什么特點(diǎn)?

通過(guò)注解掃描方式

Listener類(lèi)

package com.bjsxt.listener;import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import javax.servlet.annotation.WebListener; /*** SpringBoot整合Listener方式一:注解掃描方式* @author MSI-PC**/ @WebListener public class FirstListener implements ServletContextListener {@Overridepublic void contextInitialized(ServletContextEvent sce) {// TODO Auto-generated method stubServletContextListener.super.contextInitialized(sce);System.out.println("Listener..........init..........");} }

SpringBoot啟動(dòng)類(lèi)

package com.bjsxt;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan;@SpringBootApplication @ServletComponentScan public class App {public static void main(String[] args) {SpringApplication.run(App.class, args);} }

通過(guò)方法的方式

Listener類(lèi)

package com.bjsxt.listener;import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener;public class SecondListener implements ServletContextListener{@Overridepublic void contextInitialized(ServletContextEvent sce) {// TODO Auto-generated method stubServletContextListener.super.contextInitialized(sce);System.out.println("SecondListener............init..........");} }

SpringBoot啟動(dòng)類(lèi)

package com.bjsxt;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /*** SpringBoot整合Listener方式二:通過(guò)方法* @author MSI-PC**/ import org.springframework.boot.web.servlet.ServletListenerRegistrationBean; import org.springframework.context.annotation.Bean;import com.bjsxt.listener.SecondListener; @SpringBootApplication public class App2 {public static void main(String[] args) {SpringApplication.run(App2.class, args);}@Beanpublic ServletListenerRegistrationBean<SecondListener> getServletListenerRegistrationBean(){ServletListenerRegistrationBean bean = new ServletListenerRegistrationBean(new SecondListener());return bean;} }

7. Spring Boot訪(fǎng)問(wèn)靜態(tài)資源

(1) 在Spring Boot中訪(fǎng)問(wèn)靜態(tài)資源有幾種方式?

兩種:

SpringBoot從classpath/static的目錄

ServletContext根目錄 src/main/webapp

8. Spring Boot文件上傳

(1) 在Spring Boot中如何設(shè)置單個(gè)上傳文件大小?

在resources文件夾下添加application.properties配置文件,并添加

spring.http.multipart.maxFileSize=200MB

(2) 在Spring Boot中如何設(shè)置一次請(qǐng)求上傳文件大小?

在application.properties文件中添加如下配置:

spring.http.multipart.maxRequestSize=200MB

9. Spring Boot整合jsp

(1) 在Spring Boot中整合jsp需要添加哪些坐標(biāo)?

<dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId></dependency><dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId><scope>provided</scope></dependency>

10. Spring Boot整合Freemarker

(1) 在Spring Boot中整合Freemarker需要添加哪些坐標(biāo)?

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-freemarker</artifactId></dependency>

(2) Freemarker視圖的擴(kuò)建名是什么?

.ftl

11. Thymeleaf入門(mén)-創(chuàng)建項(xiàng)目

在Spring Boot中整合Thymeleaf需要添加哪些坐標(biāo)?

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>

(2) Thymeleaf視圖的擴(kuò)建名是什么?

.html

(3) Thymeleaf視圖要求放到項(xiàng)目的哪個(gè)目錄下?

Src/main/resources/templates

該目錄是安全的。意味著該目錄下的內(nèi)容是不允許外界直接訪(fǎng)問(wèn)的。

12. Thymeleaf入門(mén)-Thymeleaf基本使用

(1) Thymeleaf的特點(diǎn)是什么?

Thymeleaf是通過(guò)它特定的語(yǔ)法對(duì)html的標(biāo)記做渲染。

(2) 在使用Thymeleaf時(shí)頁(yè)面會(huì)出現(xiàn)什么異常?

(2) 解決Thymeleaf中標(biāo)簽匹配的異常有幾種方式?

兩種

解決異常方式 1

讓 html 的標(biāo)記按照嚴(yán)禁的語(yǔ)法去編寫(xiě)。

解決異常方式 2

Thymeleaf.jar:更新為 3.0 以上的版本

thymeleaf-layout-dialect.jar:更新為 2.0 以上的版本

更換 thymeleaf 的 jar 包的版本

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.10.RELEASE</version> </parent> <groupId>com.bjsxt</groupId> <artifactId>10-spring-boot-view-thymeleaf</artifactId> <version>0.0.1-SNAPSHOT</version> <properties> <java.version>1.7</java.version> <thymeleaf.version>3.0.2.RELEASE</thymeleaf.version> <thymeleaf-layout-dialect.version>2.0.4</thymeleaf-layout-dialect.versi on> </properties> <dependencies> <!-- springBoot 的啟動(dòng)器 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- springBoot 的啟動(dòng)器 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> </dependencies> </project>

總結(jié)

以上是生活随笔為你收集整理的springmvc整合redis_111 SpringBoot整合Servlet JSP Filter Listener的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。