程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> SSH框架網上商城項目第22戰之銀行圖標和付出頁面顯示

SSH框架網上商城項目第22戰之銀行圖標和付出頁面顯示

編輯:關於JAVA

SSH框架網上商城項目第22戰之銀行圖標和付出頁面顯示。本站提示廣大學習愛好者:(SSH框架網上商城項目第22戰之銀行圖標和付出頁面顯示)文章只能為提供參考,不一定能成為您想要的結果。以下是SSH框架網上商城項目第22戰之銀行圖標和付出頁面顯示正文


從上一節的小demo中我們弄清晰了若何跟易寶對接和易寶的付出流程。這一節我們來做一下付出頁面和在頁面中導入銀行圖標。

1. 存儲銀行圖標

  銀行圖標普通不會老是去加載,由於這些器械是逝世的,沒需要每次進入付出頁面就去加載銀行圖標,如許機能會遭到必定的影響。這讓我們聯想到了之前的加載首頁數據了,其實跟誰人事理是一樣的,我們可以在項目啟動的時刻就將銀行圖標資本加載到application中,前面用到了就直接在application域中取就好了。所以跟本來一樣,我們在監聽器中加載銀行圖標。
  銀行圖標易寶官方會供給給我們,那末我們須要做的就是將這些圖標放到工程下的某個文件夾裡,我是放在了WebRoot/files/bankImages中,這些圖標的稱號都嚴厲依據易寶官方請求的名字定名,就像上一節中看到的,工行就定名為ICBC-NET.gif。

加載圖標的思緒是以下:
  1)起首從指定目次中獲得一切圖標的名字,而且過濾失落不須要的文件,這個過濾很主要,由於假如有一些過剩的文件或許隱蔽文件的話,我們都獲得到了,然後前台顯示的時刻就會湧現一些奇異的器械,所以我們只需有效的圖標。
  2)其次我們拿到圖標稱號後將它們放到數組或許聚集中,然後把數組或聚集存到application域中
  很顯著,第二步是在監聽器中完成的,第一步我們可以本身新寫一個對象類,也能夠在我們之前寫過的fileUploadUtil類中完成。

1.1 獲得圖標稱號

  我們在fileUploadUtil中添加獲得圖標稱號的代碼:

@Component("fileUpload")
public class FileUploadUtil implements FileUpload {
 //省略本來的代碼……

 //@Value表現去beans.xml文件中找id="prop"的bean,它是經由過程注解的方法讀取properties設置裝備擺設文件的,然後去響應的設置裝備擺設文件中讀取
 @Value("#{prop.basePath+prop.bankImagePath}")
 private String bankImagePath;

 public String[] getBankImage() {
 String[] list = new File(bankImagePath).list(new FilenameFilter() {

  //測試指定文件能否應當包括在某一文件列表中
  @Override
  public boolean accept(File dir, String name) {
  System.out.println("dir:" + dir + ",name:" + name);  
  //經由過程後綴名來完成文件的過濾後果
  //前往真就放到list中,前往假就過濾失落
  return name.endsWith(".gif");
  }
 });
 return list;
 }

  我們加載的是public.properties設置裝備擺設文件,看一下設置裝備擺設文件中的內容:

basePath=E\:\\web\\apache-tomcat-8.0.26\\webapps\\E_shop
filePath=\\files
bankImagePath=\\files\\bankImages

  之所以有個basePath是為了便於擴大,並且今後修正的話basePath不須要動。我們持續看下面誰人辦法,new File(path).list() 辦法是獲得途徑中一切文件名,然則new File(path).list(FilenameFilter filter) 帶有過濾功效,可以過濾失落不想要的文件,只前往想要的文件到數組中。FilenameFilter 接口中只要一個accept辦法,所以我們可以用外部類來完成,在外面斷定 一下能否是.gif後綴的文件便可。

1.2 將圖標稱號存入application域

  上面我們在監聽器中將方才保留圖標稱號的數組存儲到application域中,這些辦法之前都有引見過,就不多做說明了,直接看代碼:

//@Component //監聽器是web層的組件,它是tomcat實例化的,不是Spring實例化的。不克不及放到Spring中
public class InitDataListener implements ServletContextListener {
 //省略其他代碼……

 private ApplicationContext context = null;
 private FileUpload fileUpload = null;

 @Override
 public void contextInitialized(ServletContextEvent event) {
 context = WebApplicationContextUtils.getWebApplicationContext(event.getServletContext());  
 //將存儲銀行圖片的數組放到application中,項目啟動的時刻加載
 fileUpload = (FileUpload) context.getBean("fileUpload");
 event.getServletContext().setAttribute("bankImageList", fileUpload.getBankImage());
 }
}

2. 付出頁面顯示

  我們來看一下bank.jsp關於銀行圖標這一塊的代碼,以下:

 

  

還有一塊是顯示定單的相干信息的,從上面的代碼中也能夠看出,是從session中拿我們之前備份的定單信息,原信息在用戶確認定單跳到付出頁面時曾經燒毀了。


3. 測試一下後果

  上面我們來測試一下付出頁面的顯示後果,以下:

好了,付出頁面顯示正常,上面要完成付出功效了,即上一節用servlet寫的誰人demo的功效,只不外如今放到Struts中,而且能夠要斟酌到一些其他的成績,下一節再寫吧。

原文鏈接:http://blog.csdn.net/eson_15/article/details/51452243

以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved