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

正文內(nèi)容

基于ssh的網(wǎng)絡(luò)商城系統(tǒng)畢業(yè)論文-資料下載頁

2025-06-27 18:52本頁面
  

【正文】 輯層接口實現(xiàn)public class OrderService implements OrderServiceHandle {...... @Override public boolean generateOrder(Order order) { try{ (order)。 }catch(Exception e){ ()。 return false。 } return true。 } ?。畗對Spring進行IoC配置Spring主要使用IoC模式管理業(yè)務(wù)組件的依賴關(guān)系。須聲明由容器管理組件之間的依賴關(guān)系,把對組件之間依賴關(guān)系的控制進行了倒置。這樣,組件間就不存在硬編碼的關(guān)聯(lián),任何組件都可以最大程度地得到重用。依賴關(guān)系的實現(xiàn)可通過配置文件也可通過在程序中進行組件的注解(Annotation)結(jié)合少量的XML配置來實現(xiàn),本系統(tǒng)是使用注解來實現(xiàn)的,以訂單管理為例相關(guān)代碼如下:@Component //注冊組件public class OrderService implements OrderServiceHandle { private OrderDAOHandle orderDAO。 public OrderService() {} public OrderDAOHandle getOrderDAO() { return orderDAO。 } @Resource //注入 public void setOrderDAO(OrderDAOHandle orderDAO) { = orderDAO。}對Spring進行AOP配置由于事務(wù)管理有一個很明確的橫切概念,因此Spring的AOP最適合。進行聲明式事務(wù)管理,從而避免在眾多方法中重復(fù)編寫大量的事務(wù)處理代碼。系統(tǒng)中,把事務(wù)管理定義在***Service方法上,這樣核心代碼就只須關(guān)注業(yè)務(wù)邏輯,而將事務(wù)管理完全交給配置文件。相關(guān)配置如下:context:annotationconfig /! 使用注解要進行的配置 context:ponentscan basepackage= /bean id=dataSource class= destroymethod=close ....../beanbean id=sessionFactoryclass= ....../bean bean id=txManager class= property name=sessionFactory ref=sessionFactory / /bean aop:config aop:pointcut id=bussinessService expression=execution(public * .*.*(..)) / aop:advisor pointcutref=bussinessService adviceref=txAdvice / /aop:config tx:advice id=txAdvice transactionmanager=txManager tx:attributes tx:method name=* propagation=REQUIRED/ ! tx:method name=add* propagation=REQUIRED / /tx:attributes /tx:advice表示層使用Struts框架。前端控制器ActionServlet通過查找 Struts配置文件決定把請求交給哪個Action處理,Action再調(diào)用相應(yīng)業(yè)務(wù)邏輯的服務(wù)組件如OrderService,并根據(jù)處理結(jié)果調(diào)用Forward對象所指定的響應(yīng)返回。數(shù)據(jù)驗證機制使用了可拔插的Validator框架,提高了復(fù)用性并保證了驗證規(guī)則和應(yīng)用程序的松耦合。與Spring的集成采用將Struts Action管理委托給Spring框架的方法,使用Spring的Context LoaderPlugin即Struts的ActionServlet來裝載Spring應(yīng)用程序環(huán)境。Struts配置通過容器攔截器以攔截Struts的Action請求,相關(guān)配置如下: filter filternamestruts2/filtername filterclass/filterclass /filter filtermapping filternamestruts2/filtername urlpattern/*/urlpattern/filtermapping控制器Action的實現(xiàn)當(dāng)接收到客戶端的請求后,控制器不會直接處理請求,而是將請求參數(shù)解析出來,調(diào)用業(yè)務(wù)邏輯方法處理請求,因此控制器是依賴于業(yè)務(wù)邏輯組件的。請求處理完畢,控制器負(fù)責(zé)將處理結(jié)果通過JSP頁面反饋給用戶。以訂單管理為例Action代碼如下:public class OrderAction extends ActionSupport implements SessionAware { /*業(yè)務(wù)邏輯層*/ private CategoryServiceHandle categoryService。 ...... /*刪除訂單*/ public String delete(){ boolean success = (orderId)。 if(!success){ return ERROR。 } return delete_success。 } ......}為了使Struts可以調(diào)用到Action,以訂單管理為例:!訂單配置 action name=order class= interceptorref name=defaultStack/ interceptorref name=accessInterceptor param name=excludeMethodsgenerate,listByUser/param /interceptorref result name=delete_success /admin/include/order/ /result ...... /actionStruts與Spring的整合將Struts的Action作為Spring Beans,由Spring進行管理,讓spring來管理Struts Action的創(chuàng)建(包括關(guān)聯(lián)對象),能充分利用spring的依賴注入優(yōu)勢,而無須顯式的獲取applicationContext實例。要把Struts和Spring整合在一起工作,[26]。相關(guān)配置文件如下:web容器啟動時通過相關(guān)的監(jiān)聽器初始化Spring的容器,配置如下: listener listenerclass/listenerclass/listener然后ContextLoaderListener讀取對應(yīng)配置容器初始化組,配置如下: contextparam paramnamecontextConfigLocation/paramname paramvalueclasspath:/paramvalue/contextparamSpring容器通過注解將所有組件進行初始化,在業(yè)務(wù)邏輯層已經(jīng)詳細(xì)敘述,這里不再贅述。 前臺編碼與實現(xiàn) 系統(tǒng)前臺編碼實現(xiàn)的方式依照上述三層架構(gòu)的模式,具體會因為業(yè)務(wù)邏輯不同實現(xiàn)不同,但實現(xiàn)原理與三層架構(gòu)相同,在前面以訂單管理已進行詳細(xì)說明,以下省略了相應(yīng)代碼。 主頁的編碼與實現(xiàn)具體實現(xiàn):通過業(yè)務(wù)邏輯層拿到數(shù)據(jù),然后通過JSP、EL(Expression Language)和Struts標(biāo)簽在表示層進行展示,結(jié)合CSS進行美化。核心代碼:略 實現(xiàn)結(jié)果:。 主頁界面 用戶注冊模塊的編碼與實現(xiàn)具體實現(xiàn):注冊用戶輸入用戶信息,通過前臺表單提交給Struts的Action。由于傳送的數(shù)據(jù)和PO格式不一致,如PO中無確認(rèn)密碼的屬性,所以采用了DTO進行封裝,然后再Action中進行轉(zhuǎn)換??赏ㄟ^重寫ActionSupport的validation()函數(shù)進行數(shù)據(jù)校驗,也可用Struts框架進行校驗,為了區(qū)分用戶更新和注冊校驗,這里使用了對指定方法進行校驗的方法在Action中進行校驗。核心代碼:略實現(xiàn)結(jié)果:: 用戶注冊界面 用戶資料管理模塊編碼與實現(xiàn)具體實現(xiàn):用戶資料管理、用戶訂單管理和用戶留言三個子模塊同屬用戶信息管理模塊,在進入此模塊前必須進行登錄。這里說明登錄邏輯的實現(xiàn),其他模塊與此類似。登錄通過Struts標(biāo)簽,和JavaScript共同完成。登錄后,先通過Action取出用戶資料進行展示,然后現(xiàn)在JSP頁面設(shè)置對應(yīng)操作的Action的鏈接,實現(xiàn)用戶資料的更新。核心代碼:略實現(xiàn)結(jié)果:: 進入用戶信息管理提示登錄界面 用戶資料修改頁面 用戶留言模塊的編碼與實現(xiàn)具體實現(xiàn):該模塊也屬于用戶信息管理子模塊,進入必須登錄。關(guān)于這點在用戶資料管理的編碼實現(xiàn)中已詳細(xì)說明。登錄后,通過前臺表單提交內(nèi)容,在Action中調(diào)用業(yè)務(wù)邏輯層接口,將數(shù)據(jù)添加到數(shù)據(jù)庫中。核心代碼:略實現(xiàn)結(jié)果:。 用戶留言界面 用戶訂單管理模塊與實現(xiàn)具體實現(xiàn):與用戶信資料管理和用戶留言相同,進入此模塊必須登錄,在前面已詳細(xì)說明。這里主要是對已生成定單的管理,訂單的生成主要在購物車管理模塊詳細(xì)說明。進入頁面前將已生成訂單的數(shù)據(jù)通過Struts標(biāo)簽進行展示,通過定義Action的鏈接進行訂單的操作。 核心代碼:略實現(xiàn)結(jié)果:: 購物車管理模塊的編碼與實現(xiàn)具體實現(xiàn):購物車主要通過Session來實現(xiàn),Session中放入一個Map,存放了商品名稱和對應(yīng)的商品數(shù)量,通過遍歷Map來顯示購物車中的內(nèi)容,通過對Map的修改來實現(xiàn)對商品的增加或刪除,同時通過商品結(jié)算可算出購物車總商品的數(shù)量,可通過Map遍歷所有商品的單價和數(shù)量,然后求出總價。結(jié)算完畢后可直接提交訂單,但用戶必須登錄,流程與用戶信息管理相同。登錄后用戶可提交訂單,然后系統(tǒng)生成對應(yīng)訂單。核心代碼:實現(xiàn)結(jié)果:。 資訊展示模塊與實現(xiàn)具體實現(xiàn):通過JSP 和Struts標(biāo)簽,結(jié)合CSS將數(shù)據(jù)展示在前臺,與主頁商品展示相同。資訊先顯示資訊列表,點擊相應(yīng)鏈接即可查看相應(yīng)內(nèi)容。核心代碼:略實現(xiàn)結(jié)果:: 后臺編碼與實現(xiàn) 后臺登錄模塊的編碼與實現(xiàn)具體實現(xiàn):界面簡單,以綠色為主調(diào),界面友好、美觀。核心代碼: 略實現(xiàn)結(jié)果:。實現(xiàn)目標(biāo):進入后臺管理,界面簡單易懂,各個分塊明確,操作簡單。具體實現(xiàn):管理界面的右邊列出了常用的快捷操作,上方列出了管理每個模塊的菜單,鼠標(biāo)移至對應(yīng)區(qū)域會彈出該模塊的子菜單,主要通過JavaScript來實現(xiàn)。核心代碼:無實現(xiàn)結(jié)果:。具體實現(xiàn):通過業(yè)務(wù)邏輯層拿到數(shù)據(jù)后在后臺管理界面進行展示,并通過Struts標(biāo)簽動態(tài)生成對應(yīng)管理的Action的鏈接,實現(xiàn)商品的管理。核心代碼:以商品添加,商品信息分頁顯示,商品刪除為例實現(xiàn)結(jié)果::具體實現(xiàn):與商品管理類似,通過業(yè)務(wù)邏輯層拿到數(shù)據(jù)后在后臺管理界面進行展示,并通過Struts標(biāo)簽動態(tài)生成對應(yīng)管理的Action的鏈接,實現(xiàn)訂單管理。核心代碼: /*后臺顯示用戶訂單*/ public String list() { orders = new ArrayListOrder()。 page = new Page()。 (currentPage)。 //設(shè)置當(dāng)前頁 (6)。 //設(shè)置每頁顯示 orders = (page)。 return list_success。 } /*后臺按條件查找訂單*/ public String query(){ (searchType:+searchType)。 if(searchType==1){//按訂單編號查找 Order order = (())。 orders = new ArrayListOrder()。 (order)。 }else{//多條件查找 /*如果用戶沒有設(shè)定對應(yīng)字段值則進行模糊查找*/ orders = new ArrayListOrder()。 page = new Page()。 (currentPage)。 //設(shè)置當(dāng)前頁 (6)。 //設(shè)置每頁顯示 orders = (page,orderDTO)。 } return query_success。 } ...... } 實現(xiàn)結(jié)果:、:具體實現(xiàn):與訂單管理類似,資訊管理中編輯資訊所采用了基于JQuery的markItUp文本編輯插件,使發(fā)布的資訊便于在網(wǎng)頁上顯示。核心代碼:實現(xiàn)結(jié)果::具體實現(xiàn):通過業(yè)務(wù)邏輯層拿到數(shù)據(jù)后在后臺管理界面進行展示,并通過Struts標(biāo)簽動態(tài)生成留言列表以及對應(yīng)管理的Action的鏈接,實現(xiàn)留言管理。核心代碼:實現(xiàn)結(jié)果::
點擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1