中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

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

三亞網(wǎng)紅餐廳衡水網(wǎng)站seo

三亞網(wǎng)紅餐廳,衡水網(wǎng)站seo,淮北哪里做網(wǎng)站,畢業(yè)設(shè)計(jì)代做網(wǎng)站都有哪些SpringBoot系列文章目錄 SpringBoot知識(shí)范圍-學(xué)習(xí)步驟–【思維導(dǎo)圖知識(shí)范圍】 文章目錄 SpringBoot系列文章目錄本系列校訓(xùn) SpringBoot技術(shù)很多很多環(huán)境及工具:必要的知識(shí)深層一些的知識(shí) 上效果圖在Spring Boot里使用ErrorPage還要注意的是 配套資源作業(yè)&#xff…

SpringBoot系列文章目錄

SpringBoot知識(shí)范圍-學(xué)習(xí)步驟–【思維導(dǎo)圖知識(shí)范圍】

文章目錄

  • SpringBoot系列文章目錄
    • 本系列校訓(xùn)
  • SpringBoot技術(shù)很多很多
  • 環(huán)境及工具:
  • 必要的知識(shí)
    • 深層一些的知識(shí)
  • 上效果圖
  • 在Spring Boot里使用ErrorPage
    • 還要注意的是
  • 配套資源
  • 作業(yè):

本系列校訓(xùn)

用免費(fèi)公開(kāi)視頻,卷飛培訓(xùn)班哈人!打死不報(bào)班,賺錢(qián)靠狠干!
只要自己有電腦,前后項(xiàng)目都能搞!N年苦學(xué)無(wú)人問(wèn),一朝成名天下知!

SpringBoot技術(shù)很多很多

本文專(zhuān)指ErrorPage出錯(cuò)頁(yè)面,可以是SSM的項(xiàng)目,也可以是springBoot 的項(xiàng)目
在這里插入圖片描述

韓順平說(shuō):學(xué)習(xí)JAVA的人有兩大難
第一困惑,JAVA能百度到的知識(shí)太多太多,完全不知道學(xué)啥
第二困惑,就是不知道以什么樣的順序去學(xué),有的時(shí)候亂看一堆視頻有遺漏,有的時(shí)候,兩邊的視頻還有重復(fù)。
Spring的外圍技術(shù)就更多了。其實(shí),ErrorPage就是其中之一。
在這里插入圖片描述
所以,學(xué)習(xí)東西要系統(tǒng)一些,如果基本功不夠,那后面的技術(shù)就會(huì)學(xué)的很浮。

環(huán)境及工具:

本系列環(huán)境

環(huán)境win11
工具idea 2017/idea 2018
jdk1.8
數(shù)據(jù)庫(kù)mysql5.5
maven3.2.1
項(xiàng)目導(dǎo)入方式maven 導(dǎo)入
數(shù)據(jù)庫(kù)前端工具mysql-front (navicat 也可以)

數(shù)據(jù)庫(kù)前端工具:mysql-front (navicat 也可以)
主要是這些跟PHPStudy 2018 整合了,所以有的時(shí)候懶的打開(kāi)navicat
關(guān)于環(huán)境的重要性,直接看上面的《SpringBoot 的項(xiàng)目編譯即報(bào)錯(cuò)處理–JSB系列之001》

必要的知識(shí)

error-page元素用于將一段錯(cuò)誤代碼或一個(gè)異常類(lèi)型映射到Web應(yīng)用中的資源路徑,從而在產(chǎn)生特殊的HTTP錯(cuò)誤或指定的Java異常時(shí),將顯示相關(guān)的資源。
error-code元素包含HTTP錯(cuò)誤代碼。exception-type是Java異常類(lèi)型的完全限定的名稱(chēng)。location元素是Web應(yīng)用中的資源相對(duì)于應(yīng)用目錄的路徑。
下圖就是一個(gè)錯(cuò)誤頁(yè)面的例子:
本質(zhì)上就是讓你原來(lái)的錯(cuò)誤頁(yè)數(shù),換了一個(gè)“膚”,所以,其實(shí),錯(cuò)誤頁(yè)面是接手了以前的那一堆的文字(這個(gè)會(huì)讓客戶(hù)很難受)
在這里插入圖片描述
但是問(wèn)題也是相對(duì)的。
在這里插入圖片描述
事實(shí)上成熟的程序員更愿意看到的是這樣的出錯(cuò)頁(yè)面,因?yàn)檫@里包括了出錯(cuò)的信息,方便程序員修正這個(gè)錯(cuò)誤,
所以,ErrorPage(錯(cuò)誤頁(yè)面)一般是在項(xiàng)目的后期再加上去,不然很影響項(xiàng)目的前期調(diào)錯(cuò)

這里舉個(gè)例子要注意的是這是JSP技術(shù),每次產(chǎn)生HTTP 404錯(cuò)誤代碼時(shí),下面的部署描述符可使Web容器顯示error404.html頁(yè)面:

JSP page指令errorPage設(shè)置錯(cuò)誤頁(yè)
errorPage 屬性用來(lái)指定一個(gè) JSP 頁(yè)面,由該頁(yè)面來(lái)處理當(dāng)前頁(yè)面中拋出但未被捕獲的任何異常(即類(lèi)型為 Throwable 的對(duì)象)。它的應(yīng)用方式如下:
<%@ page errorPaqe=“Relative URL” %>
會(huì)出現(xiàn)錯(cuò)誤的頁(yè)面

<%@ page language="java" contentType="text/html" pageEncoding="GBK"%>
<%@ page errorPage="error.jsp"%>
<html>
<head>
<title>test errorPage</title>
</head>
<body>
<center><h2>errorPage屬性測(cè)試</h2></center>
</body>
</html>

錯(cuò)誤處理頁(yè)error.jsp

<%@ page language="java" contentType="text/html" pageEncoding="GBK"%>
<%@ page isErrorPage="true"%><%--表示該頁(yè)面是錯(cuò)誤頁(yè) --%>
<html>
<head>
<title>test isErrorPage</title>
</head>
<body>
<center><h2>isErrorPage屬性測(cè)試</h2></center>
</body>
</html>

深層一些的知識(shí)

異常由外到內(nèi)如下:
web服務(wù)器處理異常—>web應(yīng)用里面web.xml處理異?!?gt;Spring框架處理異常---->控制器注釋處理異常
—>控制器方法里面try處理異常
這里有一個(gè)順序的問(wèn)題
在這里插入圖片描述

  1. Tomcat異常處理
    簡(jiǎn)單,暴力,項(xiàng)目實(shí)施人員就搞定,完全不管項(xiàng)目技術(shù)。

  2. Web應(yīng)用程序
    有web.xml 的時(shí)候真香系列
    :在conf/web.xml里面加入錯(cuò)誤頁(yè)面配置信息。

    <error-page><error-code>404</error-code><location>/WEB-INF/jsp/404.jsp</location></error-page>    <error-page><error-code>500</error-code><location>/WEB-INF/jsp/500.jsp</location></error-page><error-page><exception-type>java.lang.Exception</exception-type><location>/WEB-INF/jsp/error.jsp</location></error-page>
  1. Spring框架處理異常
    就是本文啦。

上效果圖

這里的效果圖是本項(xiàng)目的,要區(qū)分開(kāi)
在這里插入圖片描述

在Spring Boot里使用ErrorPage

這里還需要配置類(lèi)的知識(shí),請(qǐng)參見(jiàn)《SpringBoot 的配置類(lèi)–JSB系列之003》
這里一定要把這個(gè)知識(shí)點(diǎn)弄懂,還有就是配置類(lèi)與其它的controller的運(yùn)行順序。
在這里插入圖片描述

package com.code.config;import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;@Configuration
public class WebConfig extends WebMvcConfigurerAdapter implements WebMvcConfigurer {@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(new ErrorPageInterceptor());super.addInterceptors(registry);}
}

然后,做一個(gè)ErrorPageInterceptor 攔截器
在這里插入圖片描述

package com.code.config;import org.springframework.stereotype.Component;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List;/*** @program: ccx-axis-change* @description: 自定義errorPage攔截器* @author: YangPeng* @create: 2018-07-11 15:51**/
@Component
public class ErrorPageInterceptor extends HandlerInterceptorAdapter {private List<Integer> errorCodeList = Arrays.asList(404, 403, 500);@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throwsException {if (errorCodeList.contains(response.getStatus())) {//捕獲異常后進(jìn)行重定向,controller對(duì)應(yīng)的requestMapping為/error/{code}response.sendRedirect("/error/" + response.getStatus());return false;}return super.preHandle(request, response, handler);}
}

再然后,是處理這個(gè)映射地址的controler類(lèi)

在這里插入圖片描述

package com.code.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;/*** @program: ccx-axis-change* @description: 自定義controller,來(lái)接收攔截器攔截后重定向的請(qǐng)求* @author: YangPeng* @create: 2018-07-11 15:51**/
@Controllerpublic class ErrorPageController {@RequestMapping(value = "/error/{code}")public String error(@PathVariable int code, Model model) {String pager = "";switch (code) {case 403:model.addAttribute("code", 404);pager = "/common/error_403";break;case 404:model.addAttribute("code", 500);pager = "/common/error_404";break;case 500:model.addAttribute("code", 500);pager = "/common/error_500";break;}return pager;}
}

最后還要做一個(gè)errorpage.html 或error.jsp的頁(yè)面。
這里寫(xiě)的簡(jiǎn)單一些。

<html>
<head><title>Title</title>
</head>
<body>
<img src="../img/error.jpg">
</body>
</html>

最后的成果。
在這里插入圖片描述

還要注意的是

如果項(xiàng)目里使用了shiro 的話(huà),一定要把 驗(yàn)證碼的URL放出來(lái),不然的話(huà),你的驗(yàn)證碼的路徑被你自己的shiro 敵我不分的胡亂殺掉了。
這里就不詳細(xì)說(shuō)了,這個(gè)知識(shí)點(diǎn)涉及的問(wèn)題,比驗(yàn)證碼還多。

/*** 配置shiro的過(guò)濾器*/@Bean(SHIRO_FILTER)public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager) {ShiroFilterFactoryBean factoryBean = new ShiroFilterFactoryBean();// 設(shè)置安全管理器factoryBean.setSecurityManager(securityManager);// 設(shè)置未登陸的時(shí)要跳轉(zhuǎn)的頁(yè)面factoryBean.setLoginUrl(loginUrl);Map<String, String> filterChainDefinitionMap = new HashMap<>();// 設(shè)置放行的路徑if (anonUrls != null && anonUrls.length > 0) {for (String anon : anonUrls) {filterChainDefinitionMap.put(anon, "anon");}}filterChainDefinitionMap.put("/static/**", "anon"); // 先把頁(yè)面全放行了,不然調(diào) 試起來(lái)太麻煩了 ,by項(xiàng)目花園范德彪filterChainDefinitionMap.put("/code/**", "anon"); //這里要注意的是把驗(yàn)證碼的URL放出來(lái),不然不會(huì)顯示到登陸上。by項(xiàng)目花園范德彪// 設(shè)置登出的路徑if (null != logOutUrl) {filterChainDefinitionMap.put(logOutUrl, "logout");}// 設(shè)置攔截的路徑if (authcUlrs != null && authcUlrs.length > 0) {for (String authc : authcUlrs) {filterChainDefinitionMap.put(authc, "authc");}}Map<String, Filter> filters=new HashMap<>();
//		filters.put("authc", new ShiroLoginFilter());//配置過(guò)濾器factoryBean.setFilters(filters);factoryBean.setFilterChainDefinitionMap(filterChainDefinitionMap);return factoryBean;}

成功之后就可以展示出效果圖的樣子了。

另外:
數(shù)據(jù)源里的datasource 的名字。用戶(hù)名,密碼。還有就是mysql 的驅(qū)動(dòng)是com.mysql.jdbc.Driver
總的來(lái)說(shuō),
com.mysql.jdbc.Driver 是 mysql-connector-java 5.5之前的,
com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6及6之后的的,
初學(xué)者容易陷入一個(gè)誤區(qū),就是什么東西最新版是最好的,事實(shí)上很有可能他寫(xiě)的東西,明明JDK6.0就完全足夠。一邊喊著自己的機(jī)器內(nèi)存不足,一邊讓內(nèi)存運(yùn)行著他自己用不到的東西。就比如說(shuō)idea應(yīng)該算是這些開(kāi)發(fā)者工具里最卡的。有人可能明明只是打開(kāi)幾個(gè)網(wǎng)頁(yè),那為什么不使用webstorm? 甚至不是寫(xiě)很多代碼的時(shí)候,為什么不選擇更輕量級(jí)的VSCode?

配套資源

配套資源
SpringBoot中ErrorPage(錯(cuò)誤頁(yè)面)的使用–【ErrorPage組件】
https://download.csdn.net/download/dearmite/88136229

作業(yè):

無(wú),看懂即是神
范德彪經(jīng)典語(yǔ)錄: 學(xué)SpringBoot,你不能按套路出牌,你要靈活
在這里插入圖片描述

http://m.risenshineclean.com/news/33360.html

相關(guān)文章:

  • wap網(wǎng)站建設(shè)管理制度百度平臺(tái)營(yíng)銷(xiāo)寶典
  • 學(xué)校網(wǎng)站免費(fèi)建設(shè)關(guān)鍵詞搜索愛(ài)站
  • aap手機(jī)網(wǎng)站建設(shè)畢業(yè)設(shè)計(jì)網(wǎng)站
  • flash怎么做電子書(shū)下載網(wǎng)站seo關(guān)鍵詞快速排名
  • .net開(kāi)發(fā)的網(wǎng)站有哪些淘寶寶貝關(guān)鍵詞排名查詢(xún)工具
  • 專(zhuān)門(mén)做瓷磚的網(wǎng)站百度推廣客服工作怎么樣
  • 自己做網(wǎng)站排名好嗎熱搜榜排名今日
  • 網(wǎng)站上的圖分辨率做多少搜狗站長(zhǎng)工具
  • 大型門(mén)戶(hù)網(wǎng)站建設(shè)需要哪些技術(shù)百度號(hào)碼認(rèn)證平臺(tái)官網(wǎng)首頁(yè)
  • 西安做網(wǎng)站需要多少錢(qián)京東seo搜索優(yōu)化
  • 站長(zhǎng)網(wǎng)seo綜合查詢(xún)工具百度托管公司
  • 做網(wǎng)站優(yōu)化有用嗎百度廣告公司聯(lián)系方式
  • 電腦手機(jī)網(wǎng)站制作網(wǎng)站免費(fèi)優(yōu)化
  • ps做網(wǎng)站的流程2023年8月份新冠
  • 專(zhuān)業(yè)網(wǎng)絡(luò)推廣公司排名北京推廣優(yōu)化經(jīng)理
  • 成都網(wǎng)站注冊(cè)域名注冊(cè)后如何建網(wǎng)站
  • 點(diǎn)擊未來(lái)網(wǎng)站建設(shè)游戲代理
  • 新手做網(wǎng)站的詳細(xì)步驟網(wǎng)站友鏈
  • 北京做網(wǎng)站定制價(jià)格seo診斷服務(wù)
  • 1688運(yùn)營(yíng)自學(xué)全套教程seo網(wǎng)站推廣工具
  • 蘇州吳中區(qū)做網(wǎng)站新東方教育培訓(xùn)機(jī)構(gòu)官網(wǎng)
  • wordpress恢復(fù)分類(lèi)目錄seo營(yíng)銷(xiāo)論文
  • 自動(dòng)化東莞網(wǎng)站建設(shè)北京疫情最新消息
  • 網(wǎng)站開(kāi)發(fā)視頻壓縮上傳seo資源
  • 旅游網(wǎng)站在提高用戶(hù)體驗(yàn)方面應(yīng)做哪些工作長(zhǎng)春網(wǎng)站建設(shè)制作
  • 做吃的教程網(wǎng)站品牌整合營(yíng)銷(xiāo)方案
  • 典型網(wǎng)站開(kāi)發(fā)的一般流程推廣app是什么工作
  • 好看網(wǎng)站手機(jī)版批量查詢(xún)權(quán)重
  • 網(wǎng)站建設(shè)php帶數(shù)據(jù)庫(kù)模板網(wǎng)絡(luò)安全
  • 如何做網(wǎng)站鏡像百度鏈接提交入口