天天看點

SSH架構實作線上支付功能

        線上支付是指賣方與賣方通過網際網路上的電子商務網站進行交易時,銀行為其提供網上資金結算服務的一種業務,她為企業和個人提供了一個安全、快捷、友善的電子商務應用環境和網上資金結算工具,線上支付不僅幫助企業實作了銷售款項的快速歸集,縮短收款周期,同時也為個人網上銀行客戶提供了網上消費支付結算方式,使客戶正在做到了足不出戶,網上購物,不知道小夥伴們有沒有這種感覺,逛街的時候,還能管住自己,少買點,因為鈔票是直接通過自己的手給了賣家,但是網購就不一樣了,我們直接點選滑鼠,一個按鈕的操作,鈔票就嗖的一下打到第三方支付公司了,但是并沒有啥感覺,還想買,因為沒有經過自己的手,沒有那麼心疼,咳咳,以前的時候感覺支付特别的神秘,随着項目的進行,在小便的項目中也遇到這個功能,線上支付,今天這篇部落格,小編就來簡單的和小夥伴的分享一下如何使用SSH架構實作線上支付功能,希望對有需要的小夥伴有幫助,還請小夥伴們多多指教。

       要想完成線上支付的功能,首先我們來簡單的來了解一下線上支付的方式,線上支付方式有兩種,第一種支付方式,就是通過網站和各個銀行直接進行對接,進而完成支付操作;第二種方式,網站通過和第三方公司進行對接,第三方公司再和各個銀行進行對接,完成支付操作,那麼兩種支付方式有什麼優點和缺點呢?如下所示:

  第一種支付方式:(網站直接和各個銀行進行對接);

  優點:免費;

  缺點:網站需要了解各個銀行的網銀系統,才可以完成對接;

  第二種方式:(網站和第三方支付公司對接,第三方公司再和網站進行對接);

  優點:網站不需要了解各個網銀的接口,了解第三方支付公司的接口;

  缺點:收費的,一般費用1%,安全,使用友善,支付擔保業務可以在很大程度上保證付款人的收益。介紹完了支付的方式,接着結合小編的項目來分析一下線上支付的流程,在小編的項目中采用第二種支付方式,也就是網站和第三方公司對接,第三方公司再和網站進行對接;那麼這中方式的流程是什麼樣子呢?使用者通路網站,找到第三方支付公司,那麼使用者如何才能找到第三方公司呢?通過重定向,才能找到第三方公司,有的小夥伴可能會說,使用轉發的方法,轉發市過不去的,因為轉發隻能實作内容的跳轉;第三方公司進行付款的操作,肯定要跳轉到網銀的界面,那麼怎麼樣才能跳轉到網銀的界面呢?沒錯還是需要通過重定向的操作,這個時候會重定向到網銀系統,網銀中進行付款的操作,這個時候需要重定向到第三方支付公司,這個時候,又回到第三方支付公司,第三方支付公司付完款之後通知網站,支付成功,這個過程中都是一系列的重定向操作,這一個過程,會傳遞很多的資料,那麼如何保證資料的安全呢?這個時候,我們需要用到電子簽名,所謂的電子簽名,就是指資料電文中以電子形式所含、所附用于識别簽名人身份并表明簽名人認可其中内容的資料。通俗點說,電子簽名就是通過密碼技術對電子文檔的電子形式的簽名,并非是書面簽名的數字圖像化,它類似于手寫簽名或印章,也可以說它就是電子印章。接着,小編畫一張圖來簡簡單的說明一下,線上支付的流程,如下圖所示:

SSH架構實作線上支付功能

         ok,接着小編來詳細講解一下,如何使用SSH架構完成支付的功能,首先第一步,我們來編寫jsp裡面的代碼,如下所示:

       第二步,我們需要接收支付的通道,編碼如下所示:

       第三步,編寫orderService裡面的代碼如下所示:

       第四步,編寫orderDao裡面的代碼,如下所示:

       第五步,擷取hmac,由一個算法和密鑰來獲得,代碼如下所示:

        接着,我們來運作一下,看一下效果:

SSH架構實作線上支付功能

        由于後面的操作涉及到個人資訊,小編就不進行展示了。

        小編寄語:該博文,小編主要簡單的介紹了如何使用SSH架構實作線上支付的功能,簡單的介紹了直線支付的兩種支付方式,并且簡單分析了在該項目中用到了支付方式,講解了一下該項目中的支付流程,簡單的實作了線上支付的功能,其實很多時候,很多東西并沒有我們詳細中的那麼困難,隻要我們從心裡征服她,java之路,精彩仍在繼續......