日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

aspx跳转页面的符号_解决SpringBoot+MyBatis框架下页面跳转问题与代码优化处理。...

發布時間:2023/11/27 生活经验 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 aspx跳转页面的符号_解决SpringBoot+MyBatis框架下页面跳转问题与代码优化处理。... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、關于頁面跳轉的疑問

  • 后臺「return "/pool/index"」返回的是字符串,會自動尋找名為“index”的頁面模板文件是怎樣實現的?

答:這是SpringMVC實現的,如果在Action層方法名頂部,不能添加注釋“@ResponseBody”否則后臺會以數據形式返回到前臺
如果action層中的方法,需要返回頁面,卻添加了“@ResponseBody”注解,就會出現下面問題:

  • 如果想要返回以“.shtml”后綴的模板文件,需要怎樣設置?

答:修改application.yml配置文件如下: #################模板參數配置#################thymeleaf:mode: HTML5 prefix: classpath:/templates/ suffix: .shtml servlet: content-type: text/html mvc: static-path-pattern: /** resources: static-locations: classpath:/webapp/, classpath:/META-(換行)INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/

  • 注意,不建議在action層,RequestMapping中配置以“.html”結束的請求名。

原因:會與頁面文件重復,分不清是文件名還是請求。也不利于后續代碼維護。

  • 關于action層返回值是「頁面模板文件名」或「redirect:/請求名」

以下面代碼為例:

@RequestMapping("/receive-success.shtml")
public String reciveSuccess(HttpServletRequest request,Model model) {
String mobile = (String) request.getSession().getAttribute("mobile");
if(mobile == null) {
return "redirect:/index.shtml"; ----------1
}
return "receiveSuccess"; --------------------2
}

1:后臺重定向符號,發起了新的后臺請求;此處未處理完成,需要再發送請求,請求內容是「/index.shtml」

2:在工程中尋找指定文件名的頁面模板文件;此處已處理完成,只需把已處理好的數據(或者沒有數據),發給頁面模板文件展示即可(ps:也可以理解為html后綴的頁面文件)。

二、后臺錯誤處理的疑問

在外部審計平臺中已實現效果:后臺若拋出異常信息{"code","msg"},在某個ErrorAction中統一處理,展現給用戶的是一個自定義錯誤頁面,頁面風格統一,同時能顯示異常信息msg的內容和返回之前正常頁面的按鈕。

三、關于優化equity項目代碼:

用stringMap把所有bean的屬性逐一存進去,影響代碼可讀性,并且寫起來也麻煩

方案1:最簡單的,在bean中添加一些屬性,后臺方法查詢出來的另一些屬性,設置進去。或者根據聯合查詢,獲取需要的屬性值。

方案2:擔心污染bean的有序性?查詢出來的所有屬性,按照bean分類存儲,thymleaf中用「beanA.屬性;beanB.屬性;屬性」的方式取出來。

方案3:最規范的,使用po「存儲object」和vo「展示object」,不同對象的用途不同,缺點是麻煩,如果僅有幾個屬性不建議這樣做。

擔心上線后,由于少數后臺參數錯誤導致整個頁面錯誤?

thymleaf中使用下面寫法:「bean?.屬性」或「屬性.」

特殊字符:三角符號

?

代碼建議:

無需實例化 dateUtils

若需要實例化,請加上@Autoweird或@Resource@service注解

四、頁面代碼優化:

thymleaf模板注意事項

注意:

下面這段代碼中{{if type}} {{else} {{/if}}不能濫用,因為若type的類型為int,后臺傳來的值為「0」則解析時,認為沒有獲取值,因此表格中會顯示為「null」。

{{if type}}<td>${type}</td>{{else}}<td>undefined</td>{{/if}} 

親測截圖:選中行的所有值都為0,其中「權益類型、申請環境、有效期限」字段的類型為int,如果使用下面的代碼,效果如下:

            {{if name}}<td>${name}</td>{{else}}<td>null</td>{{/if}} {{if type}}<td>${type}</td>{{else}}<td>null</td>{{/if}} {{if productId}}<td>${productId}</td>{{else}}<td>null</td>{{/if}} {{if channelId}}<td>${channelId}</td>{{else}}<td>null</td>{{/if}} {{if currentCostCount}}<td>${currentCostCount}</td>{{else}}<td>null</td>{{/if}} {{if environmentType}}<td>${environmentType}</td>{{else}}<td>null</td>{{/if}} {{if validPeriod}}<td>${validPeriod}</td>{{else}}<td>null</td>{{/if}} {{if approveStatus}}<td>${approveStatus}</td>{{else}}<td>null</td>{{/if}} 

總結

以上是生活随笔為你收集整理的aspx跳转页面的符号_解决SpringBoot+MyBatis框架下页面跳转问题与代码优化处理。...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。