Springboot整合web開發
阿新 • • 發佈:2018-11-08
一,整合 Servlet
1,通過註解掃描完成 Servlet 元件的註冊
1.1 編寫 servlet
1 /** 2 * 3 * springboot整合servlet方式一 4 * @author java 5 *<servlet> 6 * <servlet-name>FirstServletController</servlet-name> 7 * <servlet-class>com.zzp.controller.FirstServletController</servlet-class>8 *</servlet> 9 *<servlet-mapping> 10 * <servlet-name>FirstServletController</servlet-name> 11 * <url-pattern>/firstServlet</url-pattern> 12 *</servlet-mapping> 13 */ 14 @WebServlet(name="FirstServletController",urlPatterns="/firstServlet") 15 public classFirstServletController extends HttpServlet{ 16 17 @Override 18 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 19 System.out.println("FirstServlet。。。。。。。。。。。。。"); 20 } 21 22 }
1.2 編寫啟動類
/** * * springboot整合servlet方式一 *@author java * */ @SpringBootApplication @ServletComponentScan//在servlet啟動時掃描@WebServlet這個註解 public class APP { public static void main(String[] args) { SpringApplication.run(APP.class, args); } }
2,通過方法完成 Servlet 元件的註冊
2.1 編寫 servlet
1 /** 2 * 3 * springboot整合servlet的方式二 4 * 5 * @author java 6 * 7 */ 8 public class SecondServlet extends HttpServlet{ 9 10 @Override 11 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 12 System.out.println("secondServlet................."); 13 } 14 15 }
2.2 編寫啟動類
1 /** 2 * 3 * springboot整合servlet的第二種方式 4 * 如果第二種方式啟動專案時,埠號被佔用了, 5 * 則在在src->main->resources目錄下新建一個檔案,名稱為:application.properties 6 * 設定埠號為server.port = 9527 7 * @author java 8 * 9 */ 10 @SpringBootApplication 11 public class AppSecond { 12 13 public static void main(String[] args) { 14 SpringApplication.run(AppSecond.class, args); 15 } 16 17 @Bean 18 public ServletRegistrationBean getServletRegistrationBean() { 19 ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet()); 20 bean.addUrlMappings("/secondServlet"); 21 return bean; 22 } 23 }
二,整合 Filter
1,通過註解掃描完成 Filter 元件的註冊
1.1 編寫Filter
1 /** 2 * 3 * 方式一:通過註解掃描完成filter元件的注入 4 * <filter> 5 * <filter-name></filter-name> 6 * <filter-class></filter-class> 7 * </filter> 8 * <filter-mapping> 9 * <filter-name></filter-name> 10 * <url-pattern></url-pattern> 11 * </filter-mapping> 12 * @author java 13 * 14 */ 15 //@WebFilter(filterName="FirstFilter",urlPatterns={"*.do","*.jsp"}) 16 @WebFilter(filterName="FirstFilter",urlPatterns="/firstServlet") 17 public class FirstFilter implements Filter{ 18 19 @Override 20 public void init(FilterConfig filterConfig) throws ServletException { 21 // TODO Auto-generated method stub 22 23 } 24 25 @Override 26 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) 27 throws IOException, ServletException { 28 System.out.println("開始進入filter"); 29 chain.doFilter(request, response); 30 System.out.println("離開filter"); 31 } 32 33 @Override 34 public void destroy() { 35 // TODO Auto-generated method stub 36 37 } 38 39 }
1 /** 2 * 3 * springboot整合servlet方式一 4 * @author java 5 *<servlet> 6 * <servlet-name>FirstServletController</servlet-name> 7 * <servlet-class>com.zzp.controller.FirstServletController</servlet-class> 8 *</servlet> 9 *<servlet-mapping> 10 * <servlet-name>FirstServletController</servlet-name> 11 * <url-pattern>/firstServlet</url-pattern> 12 *</servlet-mapping> 13 */ 14 @WebServlet(name="FirstServletController",urlPatterns="/firstServlet") 15 public class FirstServletController extends HttpServlet{ 16 17 @Override 18 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 19 System.out.println("FirstServlet。。。。。。。。。。。。。"); 20 } 21 22 }
1.2 編寫啟動類
1 @SpringBootApplication 2 @ServletComponentScan 3 public class APP01 { 4 5 public static void main(String[] args) { 6 SpringApplication.run(APP01.class, args); 7 } 8 }
2,通過方法完成 Filter 元件的註冊
2.1 編寫 Filter
1 public class SecondFilter implements Filter{ 2 3 @Override 4 public void init(FilterConfig filterConfig) throws ServletException { 5 // TODO Auto-generated method stub 6 7 } 8 9 @Override 10 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) 11 throws IOException, ServletException { 12 System.out.println("開始進入filter"); 13 chain.doFilter(request, response); 14 System.out.println("離開filter"); 15 16 } 17 18 @Override 19 public void destroy() { 20 // TODO Auto-generated method stub 21 22 } 23 24 }
1 /** 2 * 3 * springboot整合servlet的方式二 4 * 5 * @author java 6 * 7 */ 8 public class SecondServlet extends HttpServlet{ 9 10 @Override 11 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 12 System.out.println("secondServlet................."); 13 } 14 15 }
2.2 編寫啟動類
1 /** 2 * 3 * springboot通過方法註冊filter的第二種方式 4 * @author java 5 * 6 */ 7 @SpringBootApplication 8 public class App02 { 9 10 public static void main(String[] args) { 11 SpringApplication.run(App02.class, args); 12 } 13 14 @Bean 15 public ServletRegistrationBean getServletRegistrationBean() { 16 ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet()); 17 bean.addUrlMappings("/secondServlet"); 18 return bean; 19 } 20 21 @Bean 22 public FilterRegistrationBean getFilterRegistrationBean() { 23 FilterRegistrationBean bean = new FilterRegistrationBean(new SecondFilter()); 24 //bean.addUrlPatterns(new String[] {"*.do","*.jsp"}); 25 bean.addUrlPatterns("/secondServlet"); 26 return bean; 27 } 28 }