freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于安卓android平臺的新聞客戶端的設(shè)計與實現(xiàn)-wenkub

2022-12-17 01:14:46 本頁面
 

【正文】 聞,方便操作,不需要返回上一個界面之后才能閱讀上一條或者下一條。 如下圖 36 所示的是新聞欄目的 ER 圖: 圖 36 新聞欄目 ER 圖 新聞欄目 標(biāo)題 序列 編號 7 如下圖 37 所示的是新聞詳細(xì)內(nèi)容的 ER 圖: 圖 37 新聞詳細(xì)內(nèi)容 ER 圖 如下圖 38 所示的是新聞評論的 ER 圖: 圖 38 新聞評論內(nèi)容 ER 圖 本軟件中有三張表的數(shù)據(jù)需要存儲,因此在 MySql 中分別建立三張表。 在完成用戶界面設(shè)計、 服務(wù)器 和 數(shù)據(jù)庫設(shè)計 后,至此 軟件的框架 設(shè)計階段基本完成。 表 “快看新聞 ”工程的文件用途說明 包 名 稱 文 件 名 說 明 新聞欄目的 bean 類 新聞欄目標(biāo)題的適配器 像素和 dip 之間的轉(zhuǎn)換工具類 String 數(shù)據(jù)轉(zhuǎn)化成 int 的工具類 主新聞界面的 Activity 新聞評論界面的 Activity 新聞詳細(xì)內(nèi)容的 Activity 包內(nèi)所有文件 互聯(lián)網(wǎng)上開源的 異步訪問框架結(jié)構(gòu) Android 中資源文件都保存在 /res 的子目錄中。 圖 310 android 資源文件圖 2)服務(wù)器端 Eclipse Standard 開發(fā)部分 在服務(wù)器開發(fā)端,建立工程名為 “News”的工程,如下 圖 311 所示 圖 311 服務(wù)器端目錄 圖 配合上圖的目錄結(jié)構(gòu)圖,使結(jié)構(gòu)更加清晰,目標(biāo)類 的作用分別展示在如下表35 的工程文件目錄說明中。 2) 訪問接口成功后,會從服務(wù)器得到一個 json 數(shù)據(jù),我們要做的就是解析它,然后將之填充到我們的頁面顯示,解析 頁面中接收各個欄目的 json 格式數(shù)據(jù) ,需要導(dǎo)入 json 包的支持,代碼見附錄 A。 } })。 startActivity(intent)。// 評 論的 編輯 區(qū)域 ,LinearLayout news_reply_img_layout。 3)發(fā)送評論信息 以 post 方式請求數(shù)據(jù),通過 Requestparams 對象傳遞參數(shù)信息,發(fā)送評論的接口地址是: String url = 需要傳遞的參數(shù)是: nid 新聞 ID,region 發(fā)送人的地址, content 發(fā)送內(nèi)容 ,訪問的方法是采用異步 訪問框架的 post 方法訪問成功會返回發(fā)送成功了信息,失敗也會有相應(yīng)提示,核心代碼參見附錄 A。 // 靜態(tài)變量,支持單態(tài)模式 private PropertyResourceBundle bundle。 // 數(shù)據(jù)庫名 private String DBprot = 。 // 連接字符串 private Connection conn = null。: DBpassword=123456 然后再 添加一個私有的構(gòu)造方法,將 ,用new 一個屬性資源的 bundle,參數(shù)是得到一個配置文件的輸入流,構(gòu)造方法如下: private SqlManager() throws IOException{ bundle = new PropertyResourceBundle( getResourceAsStream())。 // 讀取端口 = getString(DBuser)。 } 我們對數(shù)據(jù)庫的增、刪、改、查用到的方法全都依賴于 15 方法,要在 ,在 sql語句對數(shù)據(jù)庫進(jìn)行操作的時候會根據(jù) sql 語句的不同,參數(shù)也會不同,所以要在這里設(shè)置PrepareStatement對象中 sql語句中的參數(shù)的方法,配置參數(shù)的代碼如下: private void setPrepareStatementParams(String sql, Object[] params) throws SQLException{ pstm = (sql)。 } } } 執(zhí)行查詢操作是數(shù)據(jù)庫操作的 核心功能,代碼如下: public ResultSet executeQuery(String sql, Object[] params) throws SQLException { // 執(zhí)行查詢數(shù)據(jù)庫接口 ResultSet rs = null。 } 更新數(shù)據(jù)庫的代碼如下: public boolean executeUpdate(String sql, Object[] params) throws SQLException { boolean result = false。 result = true。 (iso88591)因為從手機(jī)客戶端傳過來 的參數(shù)的編碼是 “iso88591”,所以服務(wù)器端接收數(shù)據(jù)是設(shè)置格式編碼為一致。 接收到的三個參數(shù)都是 String類型的數(shù)據(jù),因為 nid是 int類型,所以要對其進(jìn)行轉(zhuǎn)換,這里用到先前提到的工具類 : int nid = (nidStr)。 public void addComment(int nid,String ptime,String region,String content) throws SQLException{ sql = INSERT INTO t_ment (nid,ptime,region,content) VALUES Object[] params = new Object[] { nid, ptime, region,content }。 } 在增加成功之后,要返回一個成功的 json數(shù)據(jù) 給客戶端。第三個是測試不僅是在測試 這個新聞客戶端的本身 ,而且還 包括了整個的開發(fā)過程 。 (1)模擬器反應(yīng)速度太慢 (2)測試效果不如在真機(jī)上看的方便 18 2)啟動手機(jī)新聞客戶端 選擇屏幕上的 “快看新聞 ”如下圖 42: 圖 42 新聞頁面的圖標(biāo) 3)進(jìn)入到載入界面如下圖 43所示: 圖 43 載入界面效果圖 4)然后就是顯示主要新聞界面的內(nèi)容了,界 面顯示如前面設(shè)計的簡單界面加以樣式修飾,界面包含軟件名稱、刷新按鈕、新聞分欄、欄目下一欄的按鈕、新聞列表和加載更多按鈕 ,所有的新聞放在一個 ListView 里面界面只會顯示六條新聞,滑動界面可以查看更多的新聞,點擊加載更多按鈕可以加載出更多的新聞加入 ListView 顯示在界面上 ,具體效果如下圖 44 所示: 19 圖 44 主新聞頁面效果圖 5)點擊新聞列表中的某一條新聞,選擇查看新聞詳細(xì)信息,因為在主新聞的頁面只能看到新聞的預(yù)覽內(nèi)容,新聞的詳細(xì)頁面能夠看到新聞的標(biāo)題,詳細(xì)信息,發(fā)表人和發(fā)表時間,在上面的新聞分欄的右邊還能看到評論的數(shù)目信息,點擊新聞的數(shù)目的信息能夠看到該條新聞的具體評論信息,具體效果如下圖 55 所示: 圖 45 詳細(xì)新聞頁面效果圖 20 6)點擊跟帖數(shù)目,進(jìn)入評論界面,界面顯示的就是該條新聞的評論信息,每一條評論信息包含發(fā)表人的地點,內(nèi)容和評論時間,然后再加入一條評論與左圖進(jìn)行對比,效果如下圖 46所示: 圖 46 新聞評論頁面效果圖 測試小結(jié):經(jīng)過一系列的測試,這款新聞客戶端軟件基本完成了預(yù)期的功能,并且系統(tǒng)的穩(wěn) 定性也較好。 展望 經(jīng)過了對本軟件的設(shè)計和實踐,將老師在課堂上和自己在課外時間學(xué)習(xí)的知識做了一個總結(jié)。 在以后的工作和學(xué)習(xí)當(dāng)中,我將保持積極認(rèn)真的態(tài)度,遇事謹(jǐn)慎,仔細(xì)分析,以一顆永不停歇的心來面對人生,在軟件開發(fā)這份職業(yè)上,需要充分鍛煉自己的思維與敏銳,因為軟件開發(fā)更新?lián)Q代是十分迅速的,想不被淘汰就不能停下學(xué)習(xí)的腳步。//定義 新聞欄目適配器 private ListView newslists。//進(jìn)程提示框 private String mCatName。 i ()。 } categorytitle = (TextView) v。 return。 (cid= + cid)。// 通知 ListView進(jìn)行更新 ()。cid= + cid。 } })。 i++) { JSONObject newsObject = (JSONObject) (i)。 (newslist_item_digest,(digest))。 (hashMap)。// 更新時間 return true。 Button newsdetails_titlebar_previous。//數(shù)量 ArrayListHashMapString, Object mNewsData = new ArrayListHashMapString, Object()。//起點坐標(biāo) X float StartY。 View bodyviewlayout。 inflateview()。 } } 加載 上一頁 private void showprevious() { if (position = 0) { (, 當(dāng)前已經(jīng)是第一頁 , 0).show()。 (this, )。 StartY = ()。 if (x 0) {//若 x0,則方向是向坐滑 float angle = (y) / (x)。 } } break。//評論的編輯區(qū)域 LinearLayout news_reply_img_layout。//評論的回復(fù)內(nèi)容 String content。 String url = RequestParams params = new RequestParams()。 (url, params, new AsyncHttpResponseHandler() { //發(fā)送成功 public void onSuccess(String content) { String retStr = content。 return。 } Servlet的 servletservletnameGetCategoriesServlet/servletnameservletclass./servletclass/servlet 29 servletservletnameGetSpecifyCategoryNewsServlet/servletname servletclass/servletclass/servlet servletservletnameGetNewsServlet/servletname servletclass/servletclass/servlet servletservletnameGetCommentsServlet/servletname servletclass/servletclass/servlet servletservletnamePostCommentServlet/servletname servletclass/servletclass/servlet servletmappingservletnameGetCategoriesServlet/servletname urlpattern/getCategories/urlpattern /servletmappingservletmappingservletnameGetSpecifyCategoryNewsServlet/servletname urlpattern/getSpecifyCategoryNews/urlpattern/servletmapping servletmapping servletnameGetNewsServlet/servletnameurlpattern/getNews/urlpattern/servletmapping servletmappingservletnameGetCommentsServlet/servletnameurlpattern/getComments/urlpattern/servletmapping servletmappingservletnamePostCommentServlet/servletname urlpattern/postComment/urlpattern/servletmapping welefilelistwele
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1