????????????????????????????????????????????????????
一、電子商業匯票系統簡介:
?
是指出票人依托電子商業匯票系統,以數據電文形式制作的,委托付款人在指定日期無條件支付確定的金額給收款人或者持票人的票據。即實現商業匯票業務操作完全電子化,在業務操作的過程中,沒有實物票據的流轉,全部是數據電文通過人民銀行電子商業匯票系統及接入銀行、財務公司的電子票據系統在流轉和被處理。
?
電子商業匯票種類:
?
1、電子銀行承兌匯票?
電子銀行承兌匯票由銀行業金融機構、財務公司(以下統稱為金融機構)承兌。?
?
2、電子商業承兌匯票?
電子商業承兌匯票由金融機構以外的法人或其它組織承兌,電子商業匯票的付款人為承兌人。
?
?
電子商業匯票與紙票區別:
?
3、電子商業匯票:?
票號組成不同,電票號碼30位長度。
發起渠道不同;電子商業匯票由企業客戶在網上銀行進行登記。
網絡方式傳輸,而電子商業匯票以電子方式流通,采用計算機等電子設備錄入和記載。
?
4、紙票:?
紙質商業匯票票據號碼為12位長度。
紙質商業匯票以實物方式由商業銀行發行。
紙質商業匯票是具有特定格式的紙憑證,采用手工傳遞或郵寄等方式傳輸。
電子商業匯票產品優勢:
客戶與我行操作人員均在網上操作,全程無紙化,票據信息可及時處理隨時查詢;
票據交付支持跨行流通,使用便捷、高效;
電子化票據網上背書轉讓,與紙質票據相比企業節省異地交付而產生的財務費用,并降低票據丟失的風險;
票據期限從六個月延長至十二個月,極大提高了商業匯票的融資性;
數據統一存在于央行系統,安全可靠避免克隆票據引起的損失;
?
電子商業匯票辦理條件:
具備獨立的組織機構代碼證號;
在我行開立結算賬戶,資金往來正常,信譽良好;
在我行開通網上銀行,持有有效數字證書、簽章密鑰;
與我行簽訂統一版本的《XX銀行電子商業匯票業務服務協議》;
在網上銀行開通電子商業匯票業務功能;
資信良好,無違法違規記錄;
?
二、課程培訓目標
?
本系列講座主要講述如何利用Struts2,Hibernate,Spring架構來構建企業級應用解決方案,前臺用ExtJS展現主要分為兩部分完成
第一部分介紹電子商業匯票系統業務。
第二部分,將實際應用(某銀行-電子商業匯票系統)為例,以ExtJS作為前臺界面展示,按照需求分析和規劃->設計和實現->部署與應用->運維的思路展開討論,這種方式是迅速掌握某種技術及銀行里業務一種佳方式。
?
學完本系列課程后,學員將會達到以下學習目標:
1、本課程針對有一定程序開發基礎并有志于JAVA web開發的學員,培訓學員掌握三層架構設計思想、傳授銀行應用開發中的經驗技巧、業務流程以及與現有SSH2框架之間如何集成開發,幫助學員掌握應用程序體系結構的基本知識。完成該課程后,學員將有能力參與企業級J2EE軟件設計。
2、本課程并不僅僅是介紹ExtJS這種前端技術結合java編程語言及在軟件開發中的技巧和應用,同時也會向學員展示分析一個開發完整的、高效的、安全的企業級java軟件應用系統完整開發流程。
?
三、實戰篇—應用ExtJS+SSH技術構建電子商業匯票平臺
?
3.1、第一部分: 分析系統的設計架構與實現
3.1.1了解電子商業匯票系統架構業務梳理
3.1.2 分析系統技術架構與實現
a、設計的目的、原則與模式
b、系統架構
c、業務實體和分析類結構?
d、設計類結構?
e、Web服務層設計
?
3.1.3 從web.xml加載開始
a、設置log4j配置文件路徑
b、struts2攔截器
c、TowerFlow 工作流
d、設置Spring監聽器
?
3.1.4 數據庫配置
a、byName裝配方式
b、DataSource參數配置
c、Oracle9i本地Connection抽取器
d、hibernate參數配置
e、ehCache的配置
f、 使用事務
?
3.1.5 封裝服務
a、運行管理service
b、數據字典緩存
c、貼現
d、假期
?
3.1.6 銀行內系統通訊及接口
a、通訊協議格式
b、網銀接口設計
c、信貸接口設計
d、核心接口設計
?
3.1.7 服務層
a、業務接口層
b、業務實現層
?
3.1.8 邏輯層
a、Action基類
b、向客戶端輸出正確/錯誤JSON格式信息
c、信息反饋持有容器
?
3.1.9 Web層
a、公共類頁面
b、模塊頁面
c、主頁
d、登錄頁
e、ExtJS應用
--ExtJS介紹
--ExtJS Sample演示
-- ExtJS組件結構分析
--Eclipse的JS編輯工具IDE Spket應用
--布局DIY
?
3.2、第二部分: 部署與應用
3.2.1 ECDS部署前準備
a、消息中間MQ安裝
b、Oracle數據庫安裝
c、Websphere Application Server安裝
?
3.2.2 ?MBFE安裝配置
a、MBFE數據庫的配置
b、MQ的隊列管理器配置
--創建開啟隊列管理器
--導入腳本
--配置監聽端口
c、通過windows連接AIX上的MQ服務器
d、MBFE應用程序配置
--修改配置文件
--打war包
e、MBFE程序部署應用
?
3.2.3 ECDS應用程序部署
a、oracle數據庫的配置
--創建數據庫
--修改表cd_runstate
-- 清理歷史數據
--導入基礎數據
?b、ECDS應用程序配置
--業務應用配置文件
--工作流數據庫配置文件
--工作流初始化數據配置文件
--行內系統接口配置文件
--日終隊列時間設置文件
c、ECDS應用程序部署
--登錄WebSphere Application Server管理控制臺
--java虛擬機參數設置
--創建JDBC提供程序
--定義數據源,修改連接池
--安裝ECDS應用程序
d、啟動應用程序
e、ECDS應用部署驗證
?
3.2.4測試環境接入驗證
a、初始化流程圖
b、數字證書綁定
c、發送自由格式報文
?
3.3、第三部分: 銀行運維部分
3.3.1 性能優化
a、數據庫優化
--建立正確的主鍵,外鍵,以及索引
--分離原則:讀寫分離,業務數據分離
--保證事務簡短以及減少不必要的鎖機制
--利用數據庫緩存
--做大量數據排序時相關數據放在臨時表中
--視圖,臨時表等大程度優化系統
--存儲過程和函數進行必要的優化
--SQL優化
b、應用層優化
--優化算法
--降低內存泄露(using,Dispose,弱引用,Finalize)
--使用頻率較高的大文件,大對象,大數組盡量緩存
--考慮多線程技術
--緩存機制:緩存常用的,不易變化的,偶有變化,可以考慮緩存依賴機制
--考慮延遲加載,或者提前加載兩種方式
--考慮分布式應用,分布式存儲,如以上所有仍然搞不定的
c、web優化
--減少http請求
--避免404錯誤
--在html頁面header加入緩存標簽
-- Gzip壓縮網頁
--壓縮JS
d、架構優化
--硬件方面使用高性能的小型機、存儲設備
--部署多臺Web Server
-- Web負載均衡-F5
-- Web分布式,應用分布式,數據分布式
e、工具包
--使用dotTrace,跟蹤方法執行時間,找出速度慢的方法,針對性優化
-- Sql Profile跟蹤SQL耗時情況,針對性優化
-- HttpWatch跟蹤請求耗時,以及發送和收到數據量
-- LoadRunner,壓力測試,發現性能瓶頸
?
3.3.2 備份/清理數據
a、shell腳本初識
b、AIX常用命令
c、備份/清理腳本
d、Crontab定時任務
?
3.3.3 AIX下的安裝與配置
a、AIX下JDK1.6安裝與配置
b、HTTP Server 6.1安裝配置
c、Xmanager工具的使用
?
3.3.4 ?應用安全性考慮
3.3.4.1、安全的Web應用程序
a、設計階段的安全考慮
b、實現階段的安全考慮
c、部署階段的安全考慮
d、運行與維護階段的安全考慮
?
3.3.4.2、ECDS應用程序的安全方案
a、硬件
b、數字證書
c、權限管理
d、防SQL注入
e、防驗證欺騙
?
四、開發介紹:
1、ExtJS所涉及到客戶端技術。
?
2、全面了解如何開發完整的、高效的銀行MIS系統完整開發流程。
?
3、軟件開發必備工具的使用:Xmanger應用、框架的搭建及使用、AIX下的ECDS部署、Junit單元測試、Log4j進行日志跟蹤等。
?
4、深入了解spring技術,了解三層架構思想、ExtJS、以及編寫shell腳本來備份,清除數據等。
?
5、了解銀行里電子商業匯票需求分析,開發,運維,性能提升與安全性管理。
?
五、開發工具
1.IDE:MyEclipse
?
2. WEB服務器:Websphere
?
3. 數據庫:oracle9i
?
4、Xmanager
?