版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、 西 安 郵 電 大 學 (計算機學院)綜合應用軟件課程設計報告題 目:易貸寶-企業(yè)-銀行-農(nóng)民貸款系統(tǒng) 專業(yè)名稱: 計算機科學與技術班 級: 計科1201 學生姓名: 學號(8位): 指導教師: 喬平安起止時間: 2014年11月17日2014年11月28日一、 課程設計目的在數(shù)據(jù)庫原理課程基礎上,培養(yǎng)綜合運用數(shù)據(jù)庫知識的能力。學會數(shù)據(jù)庫的設計、規(guī)劃以及應用程序的開發(fā)和調(diào)試,掌握客戶機/服務器體系結構,學會大型數(shù)據(jù)庫的工作模式。大型數(shù)據(jù)庫管理系統(tǒng)存放于服務器,數(shù)據(jù)庫放在服務器上,學生在客戶機上開發(fā)應用程序訪問服務器上的數(shù)據(jù)庫,并完成應用系統(tǒng)所要求的各項功能,應用程序的開發(fā)需要采用當
2、前流行的新軟件。二、課程設計內(nèi)容數(shù)據(jù)庫的設計根據(jù)所選的題目,經(jīng)過調(diào)查研究,構建合理的數(shù)據(jù)庫。首先構建基本表以及表和表之間的聯(lián)系,在此基礎上構建視圖和索引表。此次選題共建立11張表,各表之間外鍵關聯(lián)極強。 服務器的組織根據(jù)建立的基本表、視圖和索引表搭建服務器。前端開發(fā)工具:采用JAVA進行編寫 服務器端:JDK 1.7 , mysql 5.6 開發(fā)應用程序利用所學的新軟件開發(fā)工具進行應用程序的開發(fā)。 連接、調(diào)試。三、軟硬件環(huán)境及系統(tǒng)所采用的體系結構系統(tǒng)的體系結構為C/S結構1.前臺開發(fā)工具Eclipse+ADT 22.0.3+GenyMotion開發(fā)語言為:Java(使用JDK1.6)開發(fā)環(huán)境:
3、Android4+Windows8 x642. 后臺開發(fā)工具:MyEclipse2014+Tomcat7.0+MySQL5.6+SQLYog開發(fā)語言為:Java(使用JDK1.7),SQL開發(fā)環(huán)境為:Windows7 x64四、需求分析易貸寶是一款為面向農(nóng)戶貸款的貸款應用,實行“公司+農(nóng)戶+信貸”的產(chǎn)業(yè)鏈模式進行申貸。所謂“公司+農(nóng)戶+信貸”,就是實行農(nóng)戶貸款,企業(yè)擔保方式。利用企業(yè)市場洞察力、信息敏感度和資金實力相對較強的優(yōu)勢,由企業(yè)為關聯(lián)農(nóng)戶貸款提供擔保,既把企業(yè)與農(nóng)戶的利益緊密地聯(lián)系在一起,又能增強單個農(nóng)戶抗風險能力創(chuàng)新?lián)P问剑瑢崿F(xiàn)風險共擔。這樣利用農(nóng)戶現(xiàn)成生產(chǎn)設備減少了生產(chǎn)成本,公司
4、和周圍農(nóng)民都有了經(jīng)濟效益。通過對農(nóng)業(yè)龍頭企業(yè)進行支持,以及對形成農(nóng)業(yè)產(chǎn)業(yè)鏈的前提農(nóng)戶種植、收購、加工等上下游提供相應的信貸支持、提供信息服務、發(fā)放惠農(nóng)卡等,不僅滿足企業(yè)發(fā)展的資金需求還對上下游客戶提供延伸的金融服務,這樣銀行也能降低風險,形成農(nóng)戶、企業(yè)、銀行等多贏局面。 “易貸寶”是一款集貸款服務、供需資訊于一體的金融類應用程序。很好的運用了“公司+農(nóng)戶+信貸”這一模式。具體流程如下:農(nóng)產(chǎn)品收購企業(yè)向銀行申請貸款,并按照企業(yè)和銀行協(xié)議,棉花收購企業(yè)需將這筆款項中的一定比例借給有需求的農(nóng)戶,用于農(nóng)戶的擴大再生產(chǎn),并負責向農(nóng)戶提供生產(chǎn)技術指導和產(chǎn)品收購。這筆借款以農(nóng)戶在企業(yè)中的訂單做抵押。農(nóng)戶將其
5、現(xiàn)在或?qū)砩a(chǎn)的農(nóng)場品銷售給企業(yè),作為獲得貸款的對價和償還貸款的方式,最后由企業(yè)向銀行償還貸款本息?!耙踪J寶” 創(chuàng)新了信貸管理方式,依托產(chǎn)業(yè)化龍頭企業(yè),把銀行貸款發(fā)放和農(nóng)業(yè)產(chǎn)業(yè)化有機地結合在一起。“易貸寶”貸款的設計理念是通過產(chǎn)業(yè)鏈貸款資金封閉運行化解信貸資金的風險,從而解決農(nóng)戶貸款難、擔保難的問題。同時立足于簡化企業(yè)貸款流程,減少企業(yè)款項下達時間,為企業(yè)提供優(yōu)惠利率。同時利用銀行做資金融通,以“公司農(nóng)戶+信貸”的模式實現(xiàn)三方共贏。具體的需求分析:1. 農(nóng)戶注冊登陸:用戶名、用戶密碼、用戶密碼確認、手機號。注冊之后出現(xiàn)用戶信息,可以暫不填寫,但是在申請貸款之前必須得填寫2. 用戶信息:身份認證
6、:中文姓名、身份證號、出生年月、現(xiàn)居地址 經(jīng)營狀況:種植行業(yè)、種植規(guī)模、種植年限、年投入成本、年收入、貸款用途銀行卡號: 卡號、余額 (貸款對象須從事種養(yǎng)殖業(yè),并且有過種植經(jīng)歷,即年限不可為0。規(guī)模、年限、成本收入、貸款用途作為銀行放貸金額的考量)3. 擔保企業(yè)信息:企業(yè)名稱、企業(yè)注冊號、企業(yè)地址、企業(yè)電話、申請進度(銀行線上電話核實,符合后根據(jù)企業(yè)地址線下審核,審查交易來往記錄等內(nèi)容)4.貸款申請:申請農(nóng)戶、貸款金額、貸款期限、申請企業(yè)、狀態(tài)、申請日期、用途、應還日期(必須完善用戶信息之后才能在線申請,提交申請后根據(jù)用戶信息進行審核)5.進度查詢:查詢用戶款項審核進度。有未審核,正在審核,審
7、核未通過三種情況。未通過審核列有未審核通過的原因。6.在線尋找擔保企業(yè):可以通過定位尋找附近的農(nóng)企,也可搜索企業(yè),并實現(xiàn)線上溝通。發(fā)送擔保申請。7.申請記錄:申請記錄中有農(nóng)戶貸款的申請記錄,記錄農(nóng)戶貸款的金額,貸款日期,款項狀態(tài)(已還款,未還款)顯示到期償還金額,應還款的日期8.還款:產(chǎn)品申請 數(shù)量 單價 合計金額 提交還款申請 等待企業(yè)線上核實(農(nóng)戶提交申請后,在線下交易的同時企業(yè)完成線上核實)9.邀請好友:邀請通訊錄中的好友。方式為短信。10.平臺介紹:介紹易貸寶,語言通俗易懂關于:簡單介紹開發(fā)團隊意見反饋:提交文字信息客服電話:一鍵撥打客服電話11.企業(yè)注冊:用戶名、密碼、密碼確認、企業(yè)
8、名稱、注冊號(注冊號必須輸入完整信息,名稱可以模糊匹配)成立日期、登記機關、地址、經(jīng)營范圍、企業(yè)電話 12.我的消息:查看農(nóng)戶的消息,并在線溝通。13.查看申請:查看向自己申請的農(nóng)戶的所有信息,線下核實之后線上通過擔保申請。通過或拒絕擔保申請的農(nóng)戶。通過的農(nóng)戶保存在我的擔保農(nóng)戶中。 查看農(nóng)戶的還款申請,在交易的同時通過還款驗證,農(nóng)戶的申請記錄中款項更新為已還款。14.我的擔保農(nóng)戶:查看所擔保農(nóng)戶的所有信息、審核進度、并實現(xiàn)交流。五、系統(tǒng)設計1.系統(tǒng)結構圖(功能模塊圖)見附件一2.后臺接口:1.農(nóng)民注冊servlet/FarmerRegistServletString name農(nóng)民姓名Strin
9、g password密碼String phone農(nóng)民電話返回值name_has_registed有信息姓名,注冊失敗phone_has_registed有重復電話,注冊失敗regist_success注冊成功regist_failed注冊失敗2.農(nóng)民資料完善http:/localhost:8080/ servlet/FarmerDetialServletInteger fid農(nóng)民idString plantIndestury種植行業(yè)String plantScale種植規(guī)模Integer plantYear種植年限Float annualInvestment年投入Float annualEar
10、ning年收入String loanUse貸款用途返回值message_save_success信息保存成功message_has_certained信息已確認過save_failed保存失敗3.農(nóng)民個人信息完善http:/localhost:8080/ servlet/FarmerIdentityServletInteger fid農(nóng)民idcnNAME中文姓名identityNumber農(nóng)民身份證號birthday生日address住址返回值message_save_success信息保存成功message_has_certained信息已確認過save_failed保存失敗4.農(nóng)民持有銀行
11、卡情況http:/localhost:8080/ servlet/ servlet/FBankCardServletInteger fid農(nóng)民idString bankName銀行名稱String cardNumber銀行卡號返回值cardNumber_has_certained銀行卡已存在message_save_success信息保存成功message_has_save信息保存(超過一張卡)save_failed保存失敗5.企業(yè)注冊http:/localhost:8080/ servlet/ servlet/ EnterpriseServletString name企業(yè)登錄名String
12、password登錄密碼String enterpriseName企業(yè)名稱String registNumber企業(yè)注冊號返回結果name_has_registed存在相同注冊名,注冊失敗enterpriseName_has_registed存在相同企業(yè)名,注冊失敗registNumber_has_registed存在相同注冊號,注冊失敗regist_success注冊成功regist_failed注冊失敗6.企業(yè)信息完善/servlet/EnterpriseDetialServletInteger eid企業(yè)idString establishDate成立日期String registAut
13、horith登記機關String businessScope經(jīng)營范圍String phoneNumber企業(yè)電話返回結果message_save_success信息插入成功message_has_certained信息已插入save_failed插入失敗7.企業(yè)持有銀行卡情況http:/localhost:8080/ servlet/ servlet/EBankServletInteger eid企業(yè)idString bankName銀行名稱String cardNumber銀行卡號返回值number_has_certained銀行卡已存在message_save_success信息保存成功m
14、essage_has_save信息保存(超過一張卡)message_save_failed保存失敗8.農(nóng)民登陸http:/localhost:8080/ servlet/FarmerLoginServletString name農(nóng)民姓名String password密碼返回結果login_failed登陸失敗"farmer":"id":1,"name":"zc","password":"123","hasIdentity":1,"hasDetia
15、l":1,"hasBankCard":1,"farmerDetial":"fid":1,"plantIndestury":"123","plantScale":"123","plantYear":123,"annualInvestment":123,"annualEarning":123,"loanUse":"123","farmerId
16、entity":"fid":1,"cnName":"qwe","identityNumber":"123","birthday":"123","address":"123","bankCards":"fid":1,"bankName":"123","cardNumber":"123",&q
17、uot;money":100009.企業(yè)登陸http:/localhost:8080/servlet/EnterpriseLoginServletString name企業(yè)登錄名String password登錄密碼返回結果login_failed登陸失敗"enterprise":"id":1,"name":"haha","password":"123","enterpriseName":"123","registN
18、umber":"123","hasDetial":1,"hasBankCard":1,"enterprisedetial":"eid":1,"establishDate":"123","registAuthorith":"123","businessScope":"123","phoneNumber":"123","b
19、ankCards":"eid":1,"bankName":"123","cardNumber":"123","money":600000010.更新農(nóng)民銀行卡金額/servlet/FarmerUpdateMoneyServletInteger id銀行卡idFloat money錢數(shù)返回結果money_less_failed所要取出的錢大于已有的錢,取錢失敗get_money_success取錢成功save_money_success存錢成功update_money
20、_failed更新失敗11.更新企業(yè)銀行卡金額/servlet/EnterpriseUpdateMoneyServletInteger id銀行卡idFloat money錢數(shù)返回結果money_less_failed所要取出的錢大于已有的錢,取錢失敗get_money_success取錢成功save_money_success存錢成功update_money_failed更新失敗12.查詢企業(yè)銀行卡信息/servlet/EBankCardDetialServletInteger eid企業(yè)id返回結果no_bankcard無銀行卡信息"id":1,"eid&qu
21、ot;:1,"bankName":"123","cardNumber":"123","money":5930000,"id":2,"eid":2,"bankName":"234","cardNumber":"23456","money":800000013.查詢農(nóng)民銀行卡信息/servlet/FBankCardDetialServletInteger fid
22、農(nóng)民id返回結果no_bankcard無銀行卡信息"id":1,"fid":1,"bankName":"123","cardNumber":"123","money":11000014.模擬在線查找企業(yè)(產(chǎn)生10個eid隨機數(shù),返回enterprise,enterprisedetial中的全部內(nèi)容)/servlet/FindEnterpriseServlet返回結果"id":1,"name":"haha&q
23、uot;,"enterpriseName":"123","registNumber":"123","businessScope":"123","phoneNumber":"123","establishDate":"123",.隨機返回10個企業(yè)及其信息15. 用戶提出擔保申請/servlet/GurantEnterpriseServletInteger fid農(nóng)民idInteger eid企業(yè)i
24、d返回結果gurant_success申請?zhí)岢龀晒urant_failed申請?zhí)岢鍪?6.企業(yè)接受農(nóng)戶擔保申請/servlet/UpdateGurantDateSuccessServletInteger id擔保信息id返回結果update_success更新申請信息為接受成功update_failed更新申請信息為接受失敗17.企業(yè)不接受農(nóng)戶擔保申請/servlet/UpdateGurantDateFailedServletInteger id擔保信息id返回結果update_success更新申請信息為不接受成功update_failed更新申請信息為不接受失敗18.用戶向企業(yè)貸款/s
25、ervlet/LoanServletfid農(nóng)民ideid企業(yè)idfbid農(nóng)民存入的銀行卡idmoney貸款金額remoney應還金額loanDays貸款期限useOfLoan貸款用途返回結果loan_success申請貸款成功loan_failed申請貸款失敗19.企業(yè)正在審理貸款/servlet/LoanPendingServletid貸款id返回參數(shù)loan_update_pending_success更改狀態(tài)為企業(yè)正在審理貸款成功loan_update_pending_failed更改狀態(tài)為企業(yè)正在審理貸款失敗20.企業(yè)決定不放貸/servlet/LoanFailedServletid貸
26、款id返回結果loan_update_failed_success更改狀態(tài)為企業(yè)不放貸成功loan_update_failed_failed更改狀態(tài)為企業(yè)不放貸失敗21.企業(yè)決定放貸/servlet/LoanSuccessServletid貸款idebid企業(yè)所用的銀行卡id返回結果loan_update_success_success更改狀態(tài)為企業(yè)決定放貸成功loan_update_success_success更改狀態(tài)為企業(yè)決定放貸失敗22.農(nóng)戶查看我的所有貸款情況/servlet/FarmerAllLoanServletInteger fid返回結果"eid":1,&
27、quot;establishDate":"123","registAuthorith":"123","businessScope":"123","phoneNumber":"123","fid":1,"fbid":1,"money":123,"remoney":234,"loanDays":12,"loanSuccessDate"
28、;:"2014-11-17","repaymentDate":"2014-11-17","useOfLoan":"12","status":723.農(nóng)戶提出還款/servlet/FarmerRepaymentServletInteger fid農(nóng)民idInteger eid企業(yè)idInteger fbid農(nóng)戶選擇還款的銀行卡idInteger lid借款項idString repaymentContent還款內(nèi)容返回結果reapply_success更改狀態(tài)為農(nóng)民提出還款成功
29、reapply_failed更改狀態(tài)為農(nóng)民提出還款失敗24.企業(yè)正在審核還款/servlet/LoanRependingServletInteger id還款id返回結果update_loan_repending_success更改狀態(tài)為企業(yè)正在審核還款成功update_loan_repending_failed更改狀態(tài)為企業(yè)正在審核還款失敗25.企業(yè)決定還款成功/servlet/RepaySuccessServletInteger id還款idInteger ebid企業(yè)銀行卡id返回結果update_loan_success_success更改狀態(tài)為企業(yè)決定還款成功成功update_loa
30、n_success_failed更改狀態(tài)為企業(yè)決定還款成功失敗26.農(nóng)戶查看所有還款信息27.農(nóng)戶查詢?nèi)繐P畔?servlet/FarmerGetAllGurantInfoServletInteger fid農(nóng)戶id返回結果no_data沒有數(shù)據(jù)JSON:"id":1,"askDate":"2014-11-17","status":1,"enterprise":"enterpriseName":"dell"擔保進度數(shù)據(jù)28.企業(yè)查詢所有擔保信息/ser
31、vlet/EnterpriseGetAllGurantApplyServletInteger eid企業(yè)id返回結果(no_data沒有數(shù)據(jù)JSON:"id":3,"askDate":"2014-11-17","cnName":"zzzc","identityNumber":"quot;,"address":"xian changan"此處返回status=1的信息,表示我要處理的擔保申請
32、3.數(shù)據(jù)庫設計ER圖1.農(nóng)戶表farmeridINT農(nóng)民id(主鍵)nameVARCHAR(255)農(nóng)民姓名passwordVARCHAR(255)登陸密碼phoneVARCHAR(20)農(nóng)民電話hasIdentityTINYINT是否確認身份信息,1確認hasDetialTINYINT是否確認經(jīng)營信息,1確認hasBankCardTINYINT是否擁有銀行卡2農(nóng)戶細節(jié)表farmerdetialfidINT農(nóng)民id(主鍵+外鍵)plantIndesturyVARCHAR(255)種植行業(yè)plantScaleVARCHAR(255)種植規(guī)模plantYearINT種植年限annualInvest
33、mentFLOAT年投入annualEarningFLOAT年收入loanUseVARCHAR(255)貸款用途3.農(nóng)戶確認信息表farmeridentityfidINT農(nóng)民id(主鍵+外鍵)cnNameVARCHAR(255)中文姓名identityNumberVARCHAR(255)身份證號birthdayVARCHAR(255)出生年月addressVARCHAR(255)現(xiàn)居地址4.農(nóng)民銀行卡表fbankcardidINT銀行卡id(主鍵)fidINT農(nóng)民id(外鍵)bankNameVARCHAR(255)銀行名稱cardNumberVARCHAR(255)銀行卡號moneyFLOAT
34、金額5.企業(yè)表enterpriseidINT企業(yè)id(主鍵)nameVARCHAR(255)企業(yè)登陸名稱passwordVARCHAR(255)密碼enterpriseNameVARCHAR(255)企業(yè)名稱registNumberVARCHAR(255)注冊號hasDetialTINYINT是否填寫企業(yè)信息hasBankCardTINYINT是否填寫銀行卡6.企業(yè)細節(jié)表enterprisedetialeidINT企業(yè)id(主鍵+外鍵)establishDateVARCHAR(255)成立日期registAuthorithVARCHAR(255)登記機關businessScopeVARCHAR
35、(255)經(jīng)營范圍phoneNumberVARCHAR(255)企業(yè)電話7.企業(yè)銀行卡表ebankcardidINT銀行卡id(主鍵)eidINT企業(yè)id(外鍵)bankNameVARCHAR(255)銀行名稱cardNumberVARCHAR(255)銀行卡號moneyFLOAT金額8.擔保表gurantidINT擔保信息id(主鍵)fidINT農(nóng)民id(外鍵)eidINT企業(yè)id(外鍵)askDateVARCHAR(255)申請日期gurantDateVARCHAR(255)申請成功日期statusINT申請狀態(tài)9.信息表messageidINT信息idtypeINT信息類型content
36、VARCHAR(255)信息內(nèi)容fidINT農(nóng)民ideidINT企業(yè)iddateVARCHAR(255)發(fā)送日期hasReadTINYINT是否閱讀,1已讀10. 貸款表loanIdINT貸款id(主鍵)fidINT農(nóng)民id(外鍵)eidINT企業(yè)id(外鍵)fbidINT農(nóng)民存入的銀行卡id(外鍵)ebidINT企業(yè)存入的銀行卡id(外鍵)moneyFLOAT貸款金額remoneyFLOAT應還金額loanDaysINT貸款期限loanSuccessDateVARCHAR(255)成功貸款日期repaymentDateVARCHAR(255)還款日期useOfLoanVARCHAR(255)
37、貸款用途statusINT狀態(tài)11. 還款表repaymentIdINT還款id(主鍵)fidINT農(nóng)民id(外鍵)eidINT企業(yè)id(外鍵)fbidINT農(nóng)民存入的銀行卡id(外鍵)ebidINT企業(yè)存入的銀行卡id(外鍵)lidINT借款id(外鍵)repaymentContentVARCHAR(255)還款項目六、系統(tǒng)的實施系統(tǒng)的實現(xiàn)方法,應用程序的編制方法,重要代碼的說明。(可以給出流程圖)1. 系統(tǒng)的實現(xiàn)方法Server端使用JDBC+Apache的開源接口進行數(shù)據(jù)庫操作,同時使用了傳統(tǒng)的Servlet+Service+Dao設計,實現(xiàn)了事務管理,Servlet層實現(xiàn)參數(shù)接收和信息
38、發(fā)送接收,Service實現(xiàn)業(yè)務邏輯的處理,Dao層直接操縱數(shù)據(jù)庫2. 數(shù)據(jù)庫的設計軟件的設計采用面向?qū)ο蟮膶崿F(xiàn)方式,所以數(shù)據(jù)庫要遵循這一思想,先不編寫數(shù)據(jù)庫SQL腳本,先設計實體類(對應服務器代碼的com.xiyou.ydb.model層下的Entity)3. Server端對請求參數(shù)的處理關鍵代碼如下:public class EncodingFilter implements Filter private String charset = "UTF-8"Overridepublic void destroy() Overridepublic void doFilter
39、(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException HttpServletRequest req = (HttpServletRequest) request;if(req.getMethod().equalsIgnoreCase("GET") if(!(req instanceof GetRequest) req = new GetRequest(req, charset);/處理get請求編碼 else req.
40、setCharacterEncoding(charset);/處理post請求編碼chain.doFilter(req, response);Overridepublic void init(FilterConfig fConfig) throws ServletException String charset = fConfig.getInitParameter("charset");if(charset != null && !charset.isEmpty() this.charset = charset;使用一個過濾器,實現(xiàn)全站請求碼轉(zhuǎn)碼,方便中文數(shù)
41、據(jù)的發(fā)送和接受4. Server端數(shù)據(jù)庫連接方式為了提高Server的系統(tǒng)吞吐量,采用C3P0數(shù)據(jù)庫連接池,C3P0依賴的jar包有c3p0-0.9.2-pre1.jar和mchange-commons-0.2.jar,并且需要在classpath下添加c3p0數(shù)據(jù)庫的連接信息c3p0-config.xml:<?xml version="1.0" encoding="UTF-8" ?><c3p0-config><!- 數(shù)據(jù)庫連接池 -><default-config> <property name=&
42、quot;jdbcUrl"><!CDATAjdbc:mysql:/localhost:3306/ydb?useUnicode=true&characterEncoding=UTF8&useServerPrepStmts=true&prepStmtCacheSqlLimit=256&cachePrepStmts=true&prepStmtCacheSize=256&rewriteBatchedStatements=true></property><property name="driverCl
43、ass">com.mysql.jdbc.Driver</property><property name="user">root</property><property name="password">root</property><property name="acquireIncrement">3</property><property name="initialPoolSize">10</pro
44、perty><property name="minPoolSize">2</property><property name="maxPoolSize">10</property></default-config></c3p0-config>5. Android網(wǎng)絡請求實現(xiàn)方式:原則上手寫,不使用GitHub上的開源項目,不使用別人的jar包。關鍵代碼:Http請求/* * 用于POST請求生成字符串的方法 * * param url * (請求的地址) * param para
45、ms * (POST請求參數(shù)) * return 請求結果 */public static String queryStringForPost(String url,Map<String, String> rawParams) HttpPost request = new HttpPost(url);List<NameValuePair> params = null;if (rawParams != null) params = new ArrayList<NameValuePair>();for (String key : rawParams.keySet
46、() params.add(new BasicNameValuePair(key, rawParams.get(key);try if (params != null) request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8); catch (UnsupportedEncodingException e1) e1.printStackTrace();String result = null;try HttpResponse response = new DefaultHttpClient().execute(request);
47、if (response.getStatusLine().getStatusCode() = 200) System.out.println("requese successful");result = EntityUtils.toString(response.getEntity(), "utf-8");System.out.println("result->" + result);return result; catch (ClientProtocolException e) e.printStackTrace();resu
48、lt = HttpUtils.NETWORK_ERROR;return result; catch (IOException e) e.printStackTrace();result = HttpUtils.NETWORK_ERROR;return result;return null;該方法返回的字符串即為Server返回的數(shù)據(jù),可以是JSON數(shù)據(jù),之后通過客戶端對JSON數(shù)據(jù)進行解析,從而得到View上的數(shù)據(jù)6. Android端的MVC設計方式:Model即和服務器同步,使用實體類封裝數(shù)據(jù)庫中的數(shù)據(jù);View層即使用xml文件完成靜態(tài)布局,節(jié)省代碼;Controller即使用Activ
49、ity控制Android程序的執(zhí)行7. Android實現(xiàn)的類似WEB(B/S)的應用的Cookie保存在Android平臺下,有一個特殊的類android.app.Application,作用范圍類似WEB應用的ApplicationScope,使用它來保存應用程序的當前狀態(tài)public class AppStatus extends Application public final static String TAG = "AppStatus"private Farmer farmer;private FarmerDetial farmerDetial;private
50、FarmerIdentity farmerIdentity;private List<FBankCard> fbankCards = new ArrayList<FBankCard>();private EnterPrise enterPrise;private EnterPriseDetial enterPriseDetial;private List<EBankCard> ebankCards = new ArrayList<EBankCard>();public Farmer getFarmer() return farmer;public
51、 void setFarmer(Farmer farmer) this.farmer = farmer;public FarmerDetial getFarmerDetial() return farmerDetial;public void setFarmerDetial(FarmerDetial farmerDetial) this.farmerDetial = farmerDetial;public FarmerIdentity getFarmerIdentity() return farmerIdentity;public void setFarmerIdentity(FarmerId
52、entity farmerIdentity) this.farmerIdentity = farmerIdentity;public List<FBankCard> getFbankCards() return fbankCards;public void setFbankCards(List<FBankCard> fbankCards) this.fbankCards = fbankCards;public EnterPrise getEnterPrise() return enterPrise;public void setEnterPrise(EnterPrise
53、 enterPrise) this.enterPrise = enterPrise;public EnterPriseDetial getEnterPriseDetial() return enterPriseDetial;public void setEnterPriseDetial(EnterPriseDetial enterPriseDetial) this.enterPriseDetial = enterPriseDetial;public List<EBankCard> getEbankCards() return ebankCards;public void setEb
54、ankCards(List<EBankCard> ebankCards) this.ebankCards = ebankCards;public boolean isFarmerStatus() return isFarmerStatus;public void setFarmerStatus(boolean isFarmerStatus) this.isFarmerStatus = isFarmerStatus;private boolean isFarmerStatus ;/當前用戶種類 true為農(nóng)戶.false為企業(yè)Overridepublic void onCreate(
55、) super.onCreate();Log.i(TAG, "onCreate");8. Android端自定義View的實現(xiàn):以SearchView為例:這個自定義View繼承自android.widget.RelativeLayout,實現(xiàn)他的三個構造函數(shù)public SearchView(Context context)public SearchView(Context context,AttributeSet attrs)和public SearchView(Context context,AttributeSet attrs,int defStyle),這樣便能通
56、過xml文件調(diào)用。之后需要實現(xiàn)protected void onDraw(CanvasCanvas)方法,對整個View進行繪制;最后重寫public boolean onTouch(MotionEvent event)方法,對點擊時間監(jiān)聽響應,即可完成點擊后執(zhí)行的動作。完整代碼:public class SearchView extends RelativeLayout public static final String TAG = "SearchView"private OnClickListener onClickListener;public OnClickLis
57、tener getOnClickListener() return onClickListener;public void setOnClickListener(OnClickListener onClickListener) this.onClickListener = onClickListener;public SearchView(Context context) super(context);initBitmap();public SearchView(Context context, AttributeSet attrs) super(context, attrs);initBitmap();public SearchView(Context context, AttributeSet attrs, int defStyle) super(context, attrs, defStyle);init
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《電氣火災》課件
- 《研究生培養(yǎng)與管理》課件
- 《服務行業(yè)的戴爾》課件
- 廣東省梅州市五華縣華城鎮(zhèn)初級中學-主題班會-防性侵【課件】
- 單位管理制度集合大合集【人事管理篇】
- 單位管理制度集粹匯編【人力資源管理篇】十篇
- 單位管理制度匯編大合集【人力資源管理】
- 單位管理制度合并匯編人事管理十篇
- 單位管理制度分享匯編【職工管理篇】
- 高中語文常見的病句類型及其辨析
- 2025年1月八省聯(lián)考河南新高考物理試卷真題(含答案詳解)
- (完整版)混凝土公司組織機構框圖
- 煤氣化工藝路線的比較
- 寶石學 第11章 有機寶石.
- SAP-按銷售訂單采購生產(chǎn)系統(tǒng)實現(xiàn)之配置和操作
- 《安寧療護培訓》PPT課件
- 第5章煤炭氣化技術
- 全口義齒修復匯總
- 公墓施工組織設計
- 業(yè)余無線電臺設置(變更)申請表
- 擔保公司員工守則(共18頁)
評論
0/150
提交評論