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

正文內(nèi)容

基于java的博客網(wǎng)站設(shè)計(jì)與開發(fā)畢業(yè)論文31854-資料下載頁(yè)

2025-06-27 18:08本頁(yè)面
  

【正文】 ring 提 供 注 入 。 Hibernate創(chuàng) 建SessionFactory 必 需 的 DataSource , 執(zhí) 行 持 久 化 必 需 的 Session 及 持 久 層 訪 問(wèn) 必需 的 事 務(wù) 控 制 等 , 這 些 原 本 必 須 通 過(guò) 代 碼 控 制 的 邏 輯 , 都 將 由 Spring 接 管 :DataSource, SessionFactory, TransactionManager 等 , 都 將 作 為 Spring 容 器 中 的beano 將 這 些 bean 放 在 配 置 文 件 中 管 理 , 可 以 提 供 很 好 的 解 耦 。 Spring 提 供 了DAO 支 持 , 可 以 大 大 簡(jiǎn) 化 DAO 組 件 的 開 發(fā) 。 IOC 容 器 的 使 用 , 提 供 了 DAO 組 件 與 業(yè) 務(wù) 邏 輯 組 件 之 間 的 松 糯 合 。 所 有 的 DAO實(shí) 現(xiàn) Bean 組 件 , 都 由 容 器 負(fù) 責(zé)注 入 到 業(yè) 務(wù) 邏 輯 組 件 中 , 其 業(yè) 務(wù) 組 件 無(wú) 須 關(guān) 心 DAO 組 件 的 實(shí) 現(xiàn) 。 面 向 接 口 編 程及 DAO 模 式 的 使 用 , 提 高 了 系 統(tǒng) 組 件 之 間 的 解 稿 , 降 低 了 系 統(tǒng) 重 構(gòu) 的 成 本 。 通 過(guò)Spring 整 合 Hibernate , 使 持 久 層 的 訪 問(wèn) 更 加 容 易 , 使 用 Spring 管 理 Hibernate持 久 層 有 如 下 優(yōu) 勢(shì) 。181. 有 效 的 Session 管 理 : Spring 提 供 了 有 效 、 簡(jiǎn) 單 和 安 全 的 Hibernate Session 處理 。2. IoC 容 器 提 高 了 DAO 組 件 與 業(yè) 務(wù) 邏 輯 層 之 間 的 解 糯 。3. DAO 模 式 的 使 用 , 降 低 了 系 統(tǒng) 重 構(gòu) 的 代 價(jià) 。4. 方 便 的 事 務(wù) 管 理 : Hibernate 的 事 務(wù) 管 理 處 理 會(huì) 限 制 Hibernate 的 表 現(xiàn) , 而5. Spring的 聲 明 式 事 務(wù) 管 理 力 度 是 方 法 級(jí) 。6. 通 用 的 資 源 管 理 : Spring 的 ApplicationContext 能 管 理 SessionFactory , 使 得配 置 值 很 容 易 被 管 理 和 修 改 , 無(wú) 須 使 用 Hibernate 的 配 置 文 件 。7. 異 常 包 裝 :Spring 能 夠 包 裝 Hibernate 異 常 , 把 它 們 從 checked exception 變?yōu)閞untimeException。 開 發(fā) 者 可 選 擇 在 恰 當(dāng) 的 層 處 理 數(shù) 據(jù) 中 不 可 恢 復(fù) 的 異 常 , 從 而 避免 煩 瑣 的 catch/throw 及 異 常 聲 明 。 配 置 DAD 組 件 所 有 繼 承HibernateDaoSupport 的 DAO 實(shí) 現(xiàn) 類 , 必 須 為 其 提 供 SessionFactory 的 引 用 。由 于 所 有 DAO 組 件 都 需 要 注 入 SessionFactory 引 用 , 因 此 可 以 使 用 bean 繼 承簡(jiǎn) 化 DAO 組 件 的 配 置 。 本 應(yīng) 用 同 樣 將 所 有 的 DAO 組 件 配 置 在 單 獨(dú) 的 配 置 文 件中 中 例 如 : 由 于 7 個(gè) Dao 都 必 須 利 用 IoC 容 器 注 入SessionFactory。 我 們 先 配 一 個(gè) dao 模 板 , 然 后 7 個(gè) Dao 就 繼 承 該 模 板 這 樣 就 可 以簡(jiǎn) 化 文 件bean id=daoTemplate abstract=true lazyinit=trueproperty name=sessionFactory ref bean=sessionFactory//bean以 blogDAO 為 例 , blogDAO 的 以 daoTemplate 為 父 Bean , 屬 性 class 是 Dao的 實(shí) 現(xiàn) 類 。bean id=blogDAO class=parent=daoTemplate/其 余 6 個(gè) PODAO 的 配 置 相 似 。 從 上 面 的 配 置 文 件 可 以 看 出 Spring Ioc 容 器 在Tomcat 啟 動(dòng) 時(shí) 就 可 以 向 Dao 注 入 SessionFactory19第 3 節(jié) 實(shí)現(xiàn) Service 層Service 組 件 采 用 正 面 模 式 封 裝 多 個(gè) DAO 組 件 , DAO 對(duì) 象 與 Service 組件 之 間 的 關(guān) Service 組 件 需 要 實(shí) 現(xiàn) 的 業(yè) 務(wù) 方 法 主 要 取 決 于 業(yè) 務(wù) 的 需 要 , 通 常 需 要 在業(yè) 務(wù) 組 件 中 包 含 對(duì) 應(yīng) 的 方 法 。業(yè) 務(wù) 層 組 件 的 實(shí) 現(xiàn) 業(yè) 務(wù) 層 組 件 與 具 體 的 數(shù) 據(jù) 庫(kù) 訪 問(wèn) 技 術(shù) 分 離 , 使 所 有 的 數(shù) 據(jù) 庫(kù)訪 問(wèn) 依 賴 于 DAO 組 件 , 定 義 一 個(gè) FacadeManagerImpl 來(lái) 包 裝 7 個(gè) Dao 這 樣 就 可以 把 邏 輯 層 和 Dao 分 開 , 達(dá) 到 松 散 耦 合 的 效 果 。 事 務(wù) 管 理 將 推 遲 到 Service 組件 而 不 是 DAO 組 件 , 因 為 只 有 對(duì) 業(yè) 務(wù) 邏 輯 方 法 添 加 事 務(wù) 才 有 實(shí) 際 的 意 義 , 對(duì) 于 單個(gè) DAO 方 法 (基 本 的 CRUD 方 法 )增 加 事 務(wù) 操 作 是 沒 有 太 大 實(shí) 際 意 義 的 。 關(guān) 于 事務(wù) 屬 性 的 配 置 , 本 系 統(tǒng) 使 用 Spring 提 供 的 TransactionProxyFactoryBean 配 置 事務(wù) 代 理 。 這 樣 不 必 為 每 個(gè) 目 標(biāo) 對(duì) 象 配 置 代 理 bean。 避 免 了 目 標(biāo) 對(duì) 象 被 直 接 調(diào) 用 。部 暑 業(yè) 務(wù) 層 組 件 單 獨(dú) 配 置 系 統(tǒng) 的 業(yè) 務(wù) 邏 輯 層 , 可 避 免 因 配 置 文 件 過(guò) 大 引 起 配 置 文 件難 以 閱 讀 。 將 配 置 文 件 按 層 和 模 塊 分 開 配 置 , 可 以 提 高 Spring 配 置 文 件 的 可 讀性 和 可 理 解 性 。 在 applicationContext. xml 配 置 文 件 中 配 置 數(shù) 據(jù) 源 、 事 務(wù) 管 理 器 、業(yè) 務(wù) 邏 輯 組 件 和 事 務(wù) 管 理 器 等 bean。 配 置 文 件 如 下 :bean id=transactionManager class= HibernateTransactionManagerproperty name=sessionFactory ref=sessionFactory //beanbean id=txProxyTemplate class= TransactionProxyFactoryBeanproperty name=transactionManager ref=transactionManager /property name=transactionAttributesPropsprop key=remove*PROPAGATION_REQUIRED/prop/props/property/bean20 利 用 SpringFrameWork 的 TransactionProxyFactoryBean 管 理 業(yè) 務(wù) 組 件 的 事 務(wù) ,對(duì) 應(yīng) 業(yè) 務(wù) 的 方 法 名 調(diào) 用 不 同 的 事 務(wù) 管 理 , 所 以 在 業(yè) 務(wù) 邏 輯 組 件 的 方 法 取 名 時(shí) 一 定要 規(guī) 范 化 。 txProxyTemplate Bean 是 個(gè) 業(yè) 務(wù) 組 件 事 務(wù) 管 理 的 一 個(gè) 代 理 的 父Bean, 業(yè) 務(wù) 組 件 代 理 繼 承 txProxyTemplate, 并 注 入 對(duì) 應(yīng) 目 標(biāo) 業(yè) 務(wù) 組 件FacadeManagerImpl 的 在 業(yè) 務(wù) 控 制 器 根 據(jù) 請(qǐng) 求 調(diào) 用 的 是 一 個(gè) 業(yè) 務(wù) 邏 輯 事 務(wù) 管 理 的 代理 , 這 個(gè) 代 理 把 請(qǐng) 求 分 發(fā) 給 目 標(biāo) 業(yè) 務(wù) 邏 輯 組 件 去 處 理 , 業(yè) 務(wù) 邏 輯 組 件 根 據(jù) 請(qǐng) 求 調(diào) 用相 應(yīng) 得 Dao 去 執(zhí) 行 。 這 樣 通 過(guò) FacadeManagerImpl 隔 離 業(yè) 務(wù) 邏 輯 控 制 器 與 Dao耦 合 。 業(yè) 務(wù) 不 需 要 知 道 是 那 個(gè) Dao 執(zhí) 行 的 , 也 不 需 要 Dao 的 實(shí) 現(xiàn) 類 。 我 們 通過(guò) Spring 向 FacadeManagerImpl 注 入 7 個(gè) Dao 組 件 , 業(yè) 務(wù) 邏 輯 組 件 是 面 向DAO 接 口 編 程 , 可 讓 業(yè) 務(wù) 邏 輯 組 件 從 DAO 組 件 的 實(shí) 現(xiàn) 中 分 離 。 因 此 業(yè) 務(wù) 邏 輯組 件 只 關(guān) 心 業(yè) 務(wù) 邏 輯 的 實(shí) 現(xiàn) , 無(wú) 須 關(guān) 心 數(shù) 據(jù) 訪 問(wèn) 邏 輯 的 實(shí) 現(xiàn) 。第 4 節(jié) MVC 層實(shí)現(xiàn)MVC 架 構(gòu) 的 核 心 思 想 是 :將 程 序 分 成 相 對(duì) 獨(dú) 立 , 而 又 能 協(xié) 同 工 作 的 三 個(gè) 部 分 。通 過(guò) 使 用 MVC 架 構(gòu) , 可 以 降 低 模 塊 之 間 的 耦 合 , 提 高 應(yīng) 用 的 可 擴(kuò) 展 性 。 另 外 , MVC 的 每 個(gè) 組 件 只 關(guān) 心 組 件 內(nèi) 的 邏 輯 , 不 應(yīng) 與 其 他 組 件 的 邏 輯 混 合 。本 文 的 MVC 采 用 Struts 框 架 。 因 為 Struts 是 最 健 壯 , 應(yīng) 用 最 廣 的 MVC 框 架 。系 統(tǒng) 使 用 Struts 框 架 可 以 提 高 系 統(tǒng) 的 可 控 制 性 , 保 證 了 系 統(tǒng) 的 穩(wěn) 定 性 及 可 用 性 。 1. Model 部 分模 型 獨(dú) 立 于 數(shù) 據(jù) 的 顯 示 , 博 客 中 所 涉 及 的 Model 都 是 ActionForm 和JavaBean 組 成 。 模 型 返 回 的 數(shù) 據(jù) 與 顯 示 邏 輯 分 離 。 應(yīng) 用 被 分 隔 為 三 層 , 降 低 了 各 層之 間 的 耦 合 , 提 高 了 應(yīng) 用 的 可 擴(kuò) 展 性 。 其 中 ActionForm 用 于 封 裝 用 戶 請(qǐng) 求 參 數(shù) ,所 有 的 用 戶 請(qǐng) 求 參 數(shù) 由 系 統(tǒng) 自 動(dòng) 封 裝 成 ActionForm 對(duì) 象 :該 對(duì) 象 被 ActionServlet轉(zhuǎn) 發(fā) 給 Action。 然 后 Action 根 據(jù) ActionForm 里 的 請(qǐng) 求 參 數(shù) 處 理 用 戶 請(qǐng) 求 。 比 如本 系 統(tǒng) 中 的 Registfrom 封 裝 了 注 冊(cè) 用 戶 的 所 有 信 息 , 但 頁(yè) 面 觸 發(fā) 了 .do 結(jié) 尾 的 Http 請(qǐng) 求 。 這 Struts 的 核 心 控 制 器 ActionServlet 將 填 充 RegistForm 即 調(diào) 用21RegistForm 的 setXxx。 然 后 RegistAction 就 可 以 向 業(yè) 務(wù) 邏 輯 組 件 提 交 添 加RegistForm 到 博 客 。 這 樣 就 完 成 用 戶 的 注 冊(cè) 。 而 JavaBean 則 封 裝 了 底 層 的 業(yè) 務(wù)邏 輯 , 包 括 數(shù) 據(jù) 庫(kù) 訪 問(wèn) 等 。 比 如 本 文 中 FacadeManagerImpl , 通 過(guò) 業(yè) 務(wù) 外 觀 向 表現(xiàn) 層 封 裝 數(shù) 據(jù) 的 處 理 部 分 , 而 ActionForm 封 裝 了 請(qǐng) 求 參 數(shù) 以 一 個(gè) 值 對(duì) 象( VO) 的 形 似 穿 透 J2EE 的 各 層 。 View 部 分Struts 的 View 部 分 采 用 JSP 實(shí) 現(xiàn) 。 整 個(gè) 應(yīng) 用 由 客 戶 端 請(qǐng) 求 驅(qū) 動(dòng) , 當(dāng) 客 戶 端請(qǐng) 求 被 ActionServlet 攔 截 時(shí) , ActionServlet 根 據(jù) 請(qǐng) 求 決 定 是 否 需 要 調(diào) 用 Model 處 理 用 戶 請(qǐng) 求 , 當(dāng) 用 戶 請(qǐng) 求 處 理 完 成 后 , 其 處 理 結(jié) 果 通 過(guò) JSP 呈 現(xiàn) 給 用 戶 。 通過(guò) Jsp 將 業(yè) 務(wù) 邏 輯 組 件 返 回 的 值 對(duì) 象 格 式 化 , 用 戶 和 系 統(tǒng) 通 過(guò) View 交 互 的 。 3. Controller 部 分Struts 的 Controller 由 系 統(tǒng) 核 心 控 制 器 及 業(yè) 務(wù) 邏 輯 控 制 器 。系 統(tǒng) 核 心 控 制 攔 截 特 定 形 式 的 請(qǐng) 求 , 再 根 據(jù) 請(qǐng) 求 調(diào) 用 相 應(yīng) 得 業(yè) 務(wù) 邏 輯 控 制 器 處 理 請(qǐng)求 , 在 中 如 下 定 義 :servletservletnameaction/servletnameservletclass/servletclassinitparamparamnameconfig/paramnameparamvalue/WEBINF//paramvalue/initparam/servletservletmapping22servletnameaction/servletnameurlpattern*.do/urlpattern/servletmapping從 上 面 的 配 置 文 件 可 以 看 出 MyActionServl
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1