版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
訂單總價訂單狀態(tài)訂單id收貨地址收貨電話商品id用戶id下單時間訂單總價訂單狀態(tài)訂單id收貨地址收貨電話商品id用戶id下單時間購買者格態(tài)訂單3.2.2數(shù)據(jù)庫物理結構該系統(tǒng)設計了7張表,在這里列出7張表分別為如下所示:數(shù)據(jù)庫表總覽描述表一級商品分類表category管理員表adminuser二級商品分類表categorysecond管理員表主要記錄了管理員的基本消息,表結構如表3-1所示。管理員表3-1(adminuser)數(shù)據(jù)類型允許空值(默認NO)自動遞增備注idINT(11)YESYES賬號usernameVARCHAR(1000)NONO用戶名passwordVARCHAR(1000)NONO密碼一級分類表主要記錄了一級分類的基本信息,表結構如圖3-2所示。一級分類表3-2(category)數(shù)據(jù)類型允許空值(默認NO)自動遞增備注cidINT(11)YESYES一級分類IDcnameVARCHAR(1000)NONO一級分類名二級分類表主要記錄了二級分類的基本信息,表結構如圖3-3所示。二級分類表3-3(categorysecond)數(shù)據(jù)類型允許空值(默認NO)自動遞增備注CsidINT(11)YESYES二級分類idCsnameVARCHAR(1000)NO二級分類名稱cidVARCHAR(1000)NO所屬一級分類id訂單項表主要記錄了訂單項的基本信息,表結構如圖3-4所示。訂單項表3-4(orderitem)-數(shù)據(jù)類型允許空值(默認NO)自動遞增備注OiidINT(11)YESYES訂單項idcountVARCHAR(1000)購買數(shù)量subtotalDOUBLE單項總價idPidINT(11)所購商品idcidINT(11)所屬訂單id訂單表主要記錄了訂單的基本信息,表結構如圖3-5所示。訂單表3-5(order)-允許空值(默認NO)自動遞增數(shù)據(jù)類型備注oidYESYESINT(11)訂單idmoneyDOUBLE訂單總價stateINT(11)訂單狀態(tài)ReceiveinfoVARCHAR(255)收貨地址phonumVARCHAR(255)收貨人電話Order_timeDATETIME下單時間UidINT(11)所屬用戶id商品表主要記錄了商品的基本信息,表結構如圖3-6所示。商品表3-6(product)-允許空值(默認NO)自動遞增數(shù)據(jù)類型備注PidYESYESINT(11)商品idPnameVARCHAR(255)商品名稱Market_priceINT(11)市場價Shop_priceVARCHAR(255)商城價imageVARCHAR(255)商品圖片PdescVARCHAR(255)商品描述Is_hotINT(11)是否熱門PdateDatetime商品上架日期csidINT(11)所屬二級分類id前臺用戶表結構如圖所示。前臺用戶表3-7(user)-數(shù)據(jù)類型允許空值(默認NO)自動遞增備注UidINT(11)YESYES用戶idUsernameVARCHAR(255)用戶名passwordVARCHAR(255)用戶密碼NameVARCHAR(255)用戶真實姓名EmailVARCHAR(255)用戶郵箱PhoneVARCHAR(255)用戶手機號AddrVARCHAR(255)用戶地址StateINT(11)用戶狀態(tài)系統(tǒng)主要功能實現(xiàn)系統(tǒng)注冊頁面實現(xiàn)客戶端用戶注冊注冊效果如圖4-1所示:圖4-1客戶端用戶注冊界面系統(tǒng)登錄頁面實現(xiàn)用戶登錄系統(tǒng)登錄界面程序運行如下圖所示:圖4-2登錄頁面管理員用戶登錄運行結果如圖,圖4-3為管理員登錄頁面,圖4-4為管理員登錄成功后跳轉的頁面圖4-3后臺登錄頁面圖4-4管理員頁面4.3系統(tǒng)前臺功能實現(xiàn)系統(tǒng)前臺頁面包括以下幾個部分:首頁一級、二級商品分類顯示,已登錄用戶的訂單展示。4.3.1一級分類模塊查詢一級分類說明:一級分類存儲在數(shù)據(jù)庫中,如果在同一時間的用戶訪問該網站的第一個分類的審訊主頁。在圖4-5的分類顯示:圖4-5一級分類顯示設計思路:一級分類展示于系統(tǒng)的首頁,當用戶訪問index.action時,跳轉到首頁,跳轉之前,系統(tǒng)進行查詢,將結果存放到session中查詢一級分類下的子分類描述:用戶進入主頁后,點擊某一級分類,即查詢該分類下的二級分類,發(fā)出請求得到數(shù)據(jù)。效果圖如圖4-6所示:圖4-6二級分類設計思路:查詢一級分類后,用戶發(fā)出請求再根據(jù)域中一級分類id查詢其子分類(二級分類),再將數(shù)據(jù)放入域中。主要代碼: 4.3.2商品模塊查詢最熱商品描述:當用戶訪問該網站時,首先顯示的是網站的首頁,首頁中將顯示本網站中最熱的商品。程序運行結果如圖4-7所示:圖4-7首頁熱門商品展示設計思路:用戶訪問首頁index時,根據(jù)路勁“/index.action”首先調用的是系統(tǒng)的index.action,最后跳轉至系統(tǒng)的首頁index.jsp,因為最熱商品顯示于首頁中,因此在頁面跳轉之前必須前往數(shù)據(jù)庫查詢出本系統(tǒng)中所有的熱門商品,因此使用了findHotProduct()這個方法,由于首頁中僅僅顯示了最新商品中的前十個,因此這里是使用的分頁查詢,最終查詢的結果是一個list集合,最終保存在Model中。查詢最新商品描述:當用戶訪問該網站時,首先顯示的是網站的首頁,首頁中將顯示本網站中最新的商品。程序運行結果如圖4-8所示:圖4-8首頁最新商品設計思路:用戶訪問首頁index時,根據(jù)路勁“/index.action”首先調用的是系統(tǒng)的index.action,最后跳轉至系統(tǒng)的首頁index.jsp,因為最新商品和最熱商品一樣都是顯示于首頁中,因此在頁面跳轉之前必須前往數(shù)據(jù)庫查詢出本系統(tǒng)中所有的最新商品,因此使用了findNewProduct()這個方法,查詢最新商品的依據(jù)是商品被上傳的時間,根據(jù)時間來進行排序,由于首頁中僅僅顯示了最新商品中的前十個,因此這里是使用的分頁查詢,最終查詢的結果是一個list集合,最終保存在Model中。查詢分類商品描述:用戶在點擊首頁的一級分類時,系統(tǒng)自動跳轉頁面,同時要求在右面顯示某個二級分類下的商品。程序運行結果如圖4-9所示:圖4-9查詢某個分類商品設計思路:首先導入頁面,頁面和查詢二級分類下的商品使用的是一個頁面category.jsp。當用戶點擊按鈕時,客戶端向服務器請求發(fā)送請求并攜帶一級分類的主鍵id,因此服務器端應該接受參數(shù)并使用這個參數(shù)來調用方法然后去數(shù)據(jù)庫進行查詢數(shù)據(jù),最后將查詢出的數(shù)據(jù)把保存于Model中,最后跳轉頁面。由于頁面大小的關系,這里僅僅顯示12個商品,因此這里采用了分頁查詢,并在右下角設置相應的按鈕,方便用戶來回查看該分類下所有的商品。查詢二級分類商品用戶在點擊首頁的一級分類時,系統(tǒng)自動跳轉頁面,并且在頁面的左面顯示所有一級分類包含的級分類,同時要求在右面顯示某個二級分類下的商品。程序運行結果如圖4-10所示圖4-10查詢某個二級分類商品設計思路:首先編寫頁面category.jsp,這個頁面用來顯示某個二級分類下的所有的商品,當用戶點擊二級分類時系統(tǒng)訪問對應的action,并且攜帶參數(shù)(相應二級分類的主鍵id),到前端控制層,然后findCategorySecond1()方法接收主鍵id和分頁的數(shù)目去product表查詢商品,最終將查詢到的結果存放于Model中。由于頁面大小的關系,這里僅僅顯示12個商品,因此這里采用了分頁查詢,并在右下角設置相應的按鈕,方便用戶來回查看該分類下所有的商品。前端控制層接收參數(shù)并調用service層:PageBean<Product>proPageBean=productService.finbProductByCsid(csid,page);model.addAttribute("pageBean",proPageBean);查詢商品信息用戶再瀏覽該商場,查看某個商品的詳細信息。程序運行結果如圖4-11所示:圖4-11某個商品的具體信息設計思路:首先編寫頁面,這里使用的是product.jsp,在這個頁面中顯示了分類的信息,還有每個一級分類下的二級分類,右下方是某個商品的具體信息,其中包括商品的名稱、商品的商城價和市場價,包括一個選擇框,用于用戶選擇購買數(shù)量,最下面則是商品的具體介紹。當用戶點擊某個想要查看的商品圖片時,其實就是點擊了某個超鏈接,向服務器發(fā)送鏈接并攜帶參數(shù)(商品的主鍵id),服務器端接收這個參數(shù),并使用這個參數(shù)去數(shù)據(jù)庫中查看這個商品的具體信息最后封裝于product中,最終存放于Model中。4.3.3購物模塊添加到購物車對于已經登錄的用戶,可以將看中的商品具體信息保存于自己的購物車中。圖4-12購物車設計思路:首先編寫cart.jsp用于顯示登錄用戶的購物車,如果用戶沒有登錄會有提示,用點擊查看商品的詳情之后會出現(xiàn)一個“加入購物車”按鈕,當點擊此按鈕時,自動訪問服務器,并通過隱藏表單攜帶參數(shù)(商品的主鍵id),服務器端在接受此參數(shù),并接收用戶選購的數(shù)量,最終保存于我們?yōu)槊總€用戶在session域中創(chuàng)建的cart。最后進行頁面跳轉,在cart.jsp中展示購物車的信息,主要包括:商品的具體信息和每項的價格和購物車的總價。對于已登錄用戶的頁面,可以看到一個購物車的圖標,用戶可以查看自己的購物車。從購物車中移除商品點擊已經添加到購物車的商品后的刪除按鍵從購物車移出該商品。程序運行結果如圖4-13所示:圖4-13移出購物車設計思路:當用戶點擊“刪除”按鈕時,向服務器端進行請求,并攜帶參數(shù)(商品的主鍵id),服務器端在設計購物車時采用的是用Map集合存儲的,key值即商品的id,因此刪除的時候只需從session中拿到購物車直接根據(jù)主鍵刪除,最后將頁面重定向到cart.jsp.清空購物車將購物車里面的購物項全部清空。程序運行結果如圖4-14所示:圖4-14清空購物車設計思路:當“清空購物車”按下時,瀏覽器發(fā)出請求,服務器端收到請求之后,從會話域中取出內容,由于cart在設計的時候使用的是Map集合,所以只需調用Map中的clear()方法即可,并且還需將購物車的總價改為0,最后將頁面重定向到cart.jsp.4.3.4訂單模塊生成訂單當用戶點擊“生成訂單”按鈕時,頁面跳轉至order.jsp,并讓用戶填寫相關信息。程序運行結果如圖4-15所示:圖4-15生成訂單設計思路:首先編寫order.jsp頁面,其中包含用戶的購物信息和收貨地址、收貨人和聯(lián)系方式。當用戶點擊cart.jsp中的生成訂單按鈕時,向服務器發(fā)送請求,服務器端從session域中拿到cart中的信息,并將這些信息保存于order表中,此時,需要清空購物車并且將訂單信息保存到session域中,最后跳轉到order.jsp頁面讓用戶填寫相關信息,并付款。我的訂單用戶對自己的選購的商品所生成的訂單項進行付款。即可生成訂單,進入我的訂單列表界面;程序運行結果如圖4-16所示:圖4-16我的訂單4.3.5留言模塊留言板當用戶點擊“留言板”按鈕時,頁面跳轉至messageList.jsp,并讓用戶填寫相關信息。程序運行結果如下圖所示:留言板界面4.4系統(tǒng)后臺功能實現(xiàn)4.4.1用戶模塊查詢用戶管理員進入后臺管理頁面之后,當他點擊“用戶管理”按鈕時,則在主頁面中顯示所有用戶的詳細信息。程序運行結果如圖4-17所示:圖4-17查詢所有用戶設計思路:先編輯list.jsp頁面,當用戶點擊“用戶管理”按鈕時,瀏覽器發(fā)出請求到服務器,經過controller解析最終調用service層的findAll()方法再經過service層調用事先定義好的mapper接口,返回一個list集合,最終信息封裝成一個Model對象,再跳轉至靜態(tài)頁面list.jsp。4.4.2一級分類模塊添加一級分類圖4-18添加一級分類設計思路:首先編寫add.jsp頁面,當用戶在一級分類list.jsp頁面點擊“添加”按鈕時,服務器將頁面跳轉至add.jsp,在此頁面共有三個按鈕,“確定”按鈕用于提交信息,“重置”按鈕清空表單中的內容,“返回”按鈕返回前一個頁面。當用戶填寫好要添加的一級分類的名稱之后點擊“確定”按鈕,服務器端接收此表單中的內容,然后調用service層的addCategory()方法,將新增的一級分類保存到數(shù)據(jù)庫category表中,最后將頁面重定向到list.jsp頁面,展示所有的一級分類。修改一級分類此功能屬于管理員的權限范圍內,管理員用戶修改網站中各大服飾的一級分類的名稱。程序運行結果如圖4-19所示:圖4-19修改一級分類頁面設計思路:首先編寫edit.jsp頁面,當用戶在一級分類list.jsp頁面點擊“添加”按鈕時,服務器將頁面跳轉至edit.jsp,在此頁面共有三個按鈕,“確定”按鈕用于提交信息,“重置”按鈕清空表單中的內容,“返回”按鈕返回前一個頁面。當用戶填寫好要修改的一級分類的名稱之后點擊“確定”按鈕,服務器端接收此表單中的內容,然后調用service層的adminCategory_update()方法,將修改的一級分類更新到數(shù)據(jù)庫category表中。查詢一級分類“一級分類管理”按鈕按下后,展示所有的一級分類的詳細信息。程序運行結果如圖4-21所示:圖4-21查詢一級分類設計思路:首先編寫list.jsp頁面,當管理員用戶點擊“一級分類管理頁面”按鈕時,服務器端接收請求然后調用adminbFindCategory()方法最終由service層調用myBatis提供的Mapper接口將所有的一級分類的信息查詢出來保存到list集合中,最終保存到Model中并將信息進行展示??紤]到一級分類比較多,這里使用了分頁查詢,在頁面展示的效果就是每頁顯示固定的個數(shù),并在右下角提供了相應的按鈕方便用戶進行查看其他的一級分類。4.4.3二級分類模塊添加二級分類管理員用戶為新增加的一級分類添加二級分類。程序運行結果如圖4-22所示:圖4-22添加二級分類設計思路:首先編寫二級分類添加頁面add.jsp,管理員用戶點擊“添加”按鈕時,頁面跳轉到add.jsp,同時服務器端將查詢出所有的一級分類的名稱,用于管理員選擇新增的二級分類的歸屬,這在add.jsp頁面中通過一個下拉列表進行顯示。管理員用戶在填寫好新增的二級分類的名稱并選擇好所屬的一級分類之后點擊“確定”按鈕,服務器端接收新增的二級分類名稱和所屬的一級分類的主鍵id,然后調用adminCategorySecond_save()方法將新增的Categorysecond保存于數(shù)據(jù)庫的categorysecond表中。最后將頁面重定向到二級分類的list.jsp頁面進行展示。修改二級分類管理員用戶可以為網站中所有的二級分類的名稱進行編輯。程序運行結果如圖4-23所示:圖4-23二級分類編輯頁面設計思路:首先編寫二級分類修改頁面edit.jsp,管理員在list.jsp點擊“編輯”按鈕時,頁面跳轉到edit.jsp頁面,跳轉之前,服務器端查詢到對應的二級分類的名稱并將二級分類的名稱保存到edit.jsp對應的表單中,這樣方便用戶知道自己修改的是哪個二級分,增加了用戶體驗度刪除二級分類后臺管理員根據(jù)查詢出的二級分類列表對二級分類進行操作,根據(jù)系統(tǒng)的要求,管理員用戶在刪除二級分類的同時應該刪除該二級分類下的所有商品。設計思路:管理員用戶在點擊“二級分類用戶”按鈕時,在管理員頁面展示所有的二級分類,當用戶點擊“刪除”按鈕時,服務器端收到客戶端發(fā)來的請求,并接受客戶端傳來的數(shù)據(jù)(二級分類的主鍵id),然后根據(jù)二級分類的主鍵id調用adminCategorySecond_delete(csid)方法,刪除二級分類,然后根據(jù)外鍵刪除商品。最后將頁面重定向到二級分類的list.jsp頁面。查詢二級分類圖4-24二級分類展示設計思路:首先得編寫二級分類的list.jsp頁面。管理員用戶點擊“二級分類管理”按鈕時,給服務器發(fā)送請求,并攜帶分頁參數(shù),服務器端接收此參數(shù)之后開始查詢所有的二級分類,這里創(chuàng)建了一個pageBean對象用于封裝查詢出來的數(shù)據(jù),包括二級分類的集合,當前的頁數(shù),一共的頁數(shù)等信息,最后直接返回一個pageBean對象,因為二級分類較多,這里采用了分頁查詢,需要用到這些數(shù)據(jù)因此直接封裝在了pageBean對象里。用戶可以通過二級分類的list.jsp頁面右下方的按鈕來查看所有的二級分類。4.4.4商品分類模塊添加商品程序運行結果如圖4-25所示:圖4-25商品添加頁面設計思路:首先編寫商品添加頁面add.jsp。管理員用戶點擊商品展示頁面list.jsp上的“添加”按鈕之后客服端跳轉到add.jsp頁面,在客戶端頁面跳轉之前,服務器端需要查詢出所有商品的二級分類,方便上傳用戶選擇該商品所屬的二級分類。管理員需要填寫頁面上的信息包括商品名稱、選擇是否熱門、市場價格、商城價格、上傳商品圖片、選擇所屬二級分類和編寫商品描述這些信息。管理員用戶點擊“確定”按鈕之后客戶端將數(shù)據(jù)提交給服務器,客戶端在上傳上傳組件時必須將上傳組件表單type設置為file類型,這樣服務器端才能正確的識別。最后服務器端接收到數(shù)據(jù)之后封裝于product對象中,并調用adminProduct_save(product);將新上傳的product保存到數(shù)據(jù)庫中的product表中,最后將頁面重定向到商品的list.jsp頁面。查詢商品管理員通過點擊“商品管理”按鈕來查看本網站中所有的商品信息。程序運行結果如圖4-26所示:圖4-26查詢商品設計思路:首先編寫商品下面的list.jsp頁面,管理員用戶在點擊“商品管理”按鈕時,給服務器發(fā)送請求,并攜帶分頁參數(shù),服務器端接收此參數(shù)之后開始查詢所有的商品信息,這里創(chuàng)建了一個pageBean對象用于封裝查詢出來的數(shù)據(jù),包括商品的集合,當前的頁數(shù),一共的頁數(shù)等信息,最后直接返回一個pageBean對象,因為商品個數(shù)較多,這里采用了分頁查詢,需要用到這些數(shù)據(jù)因此直接封裝在了pageBean對象里。用戶可以通過商品文件夾里面的list.jsp頁面右下方的按鈕來查看所有的是商品信息。小結:本章主要對系統(tǒng)的注冊登錄、一級分類二級分類的添加、購物車的添加移除和清空以及訂單的下單、取消、支付做出了介紹。4.4.5留言管理模塊留言管理管理用戶通過點擊留言管理鏈接,即可打開前臺顧客的留言列表界面,并且可以刪除不合時宜的留言信息。程序運行結果如圖4-26所示:圖4-27留言管理界面總結 如今,JavaEE是一個非常優(yōu)秀的企業(yè)信息化開發(fā)平臺,由于其擁有一些很好的性質包括穩(wěn)定的性能、良好的開發(fā)性和非常高的安全性因此被廣泛運用于企業(yè)級開發(fā)。這篇論文基于當前比較流行的電商系統(tǒng)為項目背景,遵循javaEE應用軟件的規(guī)則進行開發(fā),將系統(tǒng)劃分為四個層次包括模型model層,持久層,業(yè)務邏輯service層和表現(xiàn)層,并整合了目前在企業(yè)中廣泛運用的spring、springMvc和myBatis框架進行開發(fā)。Spring用于整個系統(tǒng)的統(tǒng)一調度,貫穿于各層之間。myBatis的逆向工程極大的方便了dao層的開發(fā),也方便了系統(tǒng)dao層的維護。本論文主要完成了以下的任務:正確分析了電商目前的發(fā)展形勢,特別是對網購的發(fā)展進行了深入的調查和研究。 關于系統(tǒng)的總體架構,在技術選型上選取了三個現(xiàn)今主流優(yōu)秀成熟的框架,對這些框架的功能與作用、整合等做了詳細的描述。本項目的開發(fā)嚴格按照主流軟件的規(guī)范進行開發(fā),有詳細的開發(fā)步驟,項目開發(fā)之前進行了大量的工作如:環(huán)境配置、技術選型等。 完成了提出的需求功能。處于信息時代下會有更多的技術應運而生,不光需要對框架進行深入學習和研究還要對系統(tǒng)的架構進行研究。目前客戶端技術正在崛起,我們需要認真做調查和研究做出一能讓用戶體驗度更好的產品。以上只是目前的構想,接下來會繼續(xù)深入研究并作進一步的完善和設計開發(fā)。參考文獻[1]楊開振等.JavaEE互聯(lián)網輕量級框架整合開發(fā)——SSM框架(SpringMVC+Spring+MyBatis)和Redis實現(xiàn)[M].電子工業(yè)出版,2017.07.[2]李俊民.HTML5+CSS3網頁設計經典范例[M].電子工業(yè)出版,2010.[3]鄒紅霆.基于SSM框架的Web系統(tǒng)研究與應用[J].湖南理工學院學報(自科版),2017,30(1):39-43.[4]王珊薩師煊數(shù)據(jù)庫系統(tǒng)概論[M]北京:高等教育出版社2007[5]陳雄華Spring企業(yè)級應用開發(fā)詳解[M]北京:電子工業(yè)出版社2009[6]原著施奈德成棟翻譯電子商務[M]北京:機械工業(yè)出版社2008[7]阿里巴巴網絡技術有限公司中小企業(yè)電子商務之路[M]北京:清華大學出版社2007[8]劉克強電子商務平臺建設[M]北京:人民郵電出版社2007[9]程杰大話設計模式[M]北京:清華大學出版社2010[10]雷之宇朱訓雨張麟JAVA實用組件集[M]北京:電子工業(yè)出版社2008附錄客戶端用戶注冊主要代碼:Ajax異步校驗代碼:varusername=document.getElementById("username").value;varxmlHttp=creatXMLHttpreauest();xmlHttp.open("GET","${pageContext.request.contextPath}/registFindByid.action?username="+username,true); xmlHttp.send(null); xmlHttp.onreadystatechange=function(){ if(xmlHttp.readyState==4&&xmlHttp.status==200){ document.getElementById("span1").innerHTML=xmlHttp.responseText;服務器端二次數(shù)據(jù)合法性校驗(此處采用的配置文件加注解的方式):user.username.length.error=用戶名的名字的長度必須是1至30user.email.notNull=郵箱不可為空@Size(min=2,max=30,message="{user.username.length.error}")privateStringusername;@NotNull(message="{user.email.notNull}")privateStringemail;查詢最熱商品主要代碼:前段控制層代碼:List<Product>hList=productService.findHotProduct();service層代碼:List<Product>list=productMapper.selectByExample(example);查詢最新商品主要代碼:前端控制層代碼:List<Product>nList=productService.findNewProduct();service層代碼:ProductExampleexample=newProductExample();ProductExample.Criteriacriteria=example.createCriteria();example.setOrderByClause("pdateDESC");example.setBeginPage(0);example.setEnd(10); 查詢分類商品主要代碼://前端控制層接收參數(shù)并調用service層代碼://根據(jù)一級目錄查找二級目錄下面的商品productService.findProductyBycid(cid,page);model.addAttribute("pageBean",proPageBean);Servive層代碼:inttotlePage=0;totlePage=productMapper.countProducyByCid(cid);if(Math.ceil(totlePage%limitPage)==0){totlePage=totlePage/limitPage;}else{totlePage=totlePage/limitPage+1;pageBean.setTotlePage(totlePage);intbeginPage=(1)*limitPage;查詢商品信息主要代碼:前端控制層接收參數(shù)并調用service層,Service層直接調用Mybatis提供的mapper接口://根據(jù)pid來查詢商品Productproduct=prodcutSductFindByPid(pid);model.addAttribute("product",product);添加購物車主要代碼//添加到購物車Productproduct=productService.finbProductByPid(pid);//存進一個購物項CartItemcartItem=newCartItem();cartItem.setCount(count);cartItem.setProduct(product);cartItem.setSubtotle(count*product.getShopPrice());//存進購物車Cartcart=getCart(request);cart.addCart(cartItem);移出購物車主要代碼:Cartcart=getCart(request);cart.delProFromCart(pid);//刪除某個購物項清空購物車主要代碼:// 清空購物車Cartcart=getCart(request);cart.clearCart();生成訂單主要代碼:Ordersorders=newOrders();Cartcart=(Cart)request.getSession().getAttribute("cart");UserloginUser=(User)request.getSession().getAttribute("loginUser");if(loginUser==null){model.addAttribute("message","對不起您還沒有登錄");return"msg";}//生成訂單用戶模塊登錄主要代碼if(adminuserLogin==null){request.getSession().setAttribute("message","對不起您還沒有登錄");return"admin/index";添加一級分類主要代碼:CategoryaddCategory=newCategory();addCategory.setCname(cname);categoryService.addCategory(addCategory);查詢一級分類主要代碼:List<Category>categoryList=categoryService.adminbFindCategory();model.addAttribute("categoryList",categoryList);查詢二級分類主要代碼:添加二級分類主要代碼: Categorysecondcategorysecond=newCategorysecond(); categorysecond.setCsname(csname); categorysecond.setCid(cid); categorySecondService.adminCategorySecond_save(categorysecond);修改二級分類主要代碼:查詢出對應的二級分類的名稱存放于表單中,增加了用戶體驗:CategorysecondfindByCsid=categorySecondService.findByCsid(csid); model.addAttribute("findByCsid",findByCsid);更新修改的二級分類:Categorysecondcategorysecond=newCategorysecond(); categorysecond.setCsname(csname); categorysecond.setCsid(csid); categorySecondService.adminCategorySecond_update(categorysecond);刪除二級分類主要代碼:// 刪除二級分類,二級分類關聯(lián)二級分類下面的商品categorySecondService.adminCategorySecond_delete(csid);categorySecondService.adminProduct_deleteByCsid(csid);添加商品主要代碼:product.setPdate(newDate());if(file!=null){Stringpath=request.getServletContext().getRealPath("/products");StringuploadFileName=file.getOriginalFilename();StringfileName=UUIDUtiils.getUUID()+uploadFileName;FilediskFile=newFile(path+"http://"+fileName);product.setImage("products/"+fileName);查詢商品主要代碼://admin的商品管理(查詢所有的商品)PageBean<Product>allProPageBean=productService.findAllProduct(page); model.addAttribute("allProPageBean",allProPageBean);致謝這次畢業(yè)設計項目的誕生并不順利,非常非常感謝我的老師同學。項目經歷了選題-迷茫-改選題,又在極度繁忙的節(jié)點上完成這篇論文。感謝我的導師百忙之中同意我改變論文選題,并對我們小組畢業(yè)論文的悉心指導。即將與學校告別,這是畢業(yè)最后的一次項目,收獲豐富。項目有許多不足,有許多需要打磨的地方。這個畢業(yè)設計是結束,也是開始。
ExcelXP的八則快速輸入技巧如果我們在用ExcelXP處理龐大的數(shù)據(jù)信息時,不注意講究技巧和方法的話,很可能會花費很大的精力。因此如何巧用ExcelXP,來快速輸入信息就成為各個ExcelXP用戶非常關心的話題,筆者向大家介紹幾則這方面的小技巧。1、快速輸入大量含小數(shù)點的數(shù)字如果我們需要在ExcelXP工作表中輸入大量的帶有小數(shù)位的數(shù)字時,按照普通的輸入方法,我們可能按照數(shù)字原樣大小直接輸入,例如現(xiàn)在要在單元格中輸入0.05這個數(shù)字時,我們會把“0.05”原樣輸入到表格中。不過如果需要輸入若干個帶有小數(shù)點的數(shù)字時,我們再按照上面的方法輸入的話,每次輸入數(shù)字時都需要重復輸入小數(shù)點,這樣工作量會變大,輸入效率會降低。其實,我們可以使用ExcelXP中的小數(shù)點自動定位功能,讓所有數(shù)字的小數(shù)點自動定位,從而快速提高輸入速度。在使用小數(shù)點自動定位功能時,我們可以先在ExcelXP的編輯界面中,用鼠標依次單擊“工具”/“選項”/“編輯”標簽,在彈出的對話框中選中“自動設置小數(shù)點”復選框,然后在“位數(shù)”微調編輯框中鍵入需要顯示在小數(shù)點右面的位數(shù)就可以了。以后我們再輸入帶有小數(shù)點的數(shù)字時,直接輸入數(shù)字,而小數(shù)點將在回車鍵后自動進行定位。例如,我們要在某單元格中鍵入0.06的話,可以在上面的設置中,讓“位數(shù)”選項為2,然后直接在指定單元格中輸入6,回車以后,該單元格的數(shù)字自動變?yōu)椤?.06”,怎么樣簡單吧?2、快速錄入文本文件中的內容現(xiàn)在您手邊假如有一些以純文本格式儲存的文件,如果此時您需要將這些數(shù)據(jù)制作成ExcelXP的工作表,那該怎么辦呢?重新輸入一遍,大概只有頭腦有毛病的人才會這樣做;將菜單上的數(shù)據(jù)一個個復制/粘貼到工作表中,也需花很多時間。沒關系!您只要在ExcelXP中巧妙使用其中的文本文件導入功能,就可以大大減輕需要重新輸入或者需要不斷復制、粘貼的巨大工作量了。使用該功能時,您只要在ExcelXP編輯區(qū)中,依次用鼠標單擊菜單欄中的“數(shù)據(jù)/獲取外部數(shù)據(jù)/導入文本文件”命令,然后在導入文本會話窗口選擇要導入的文本文件,再按下“導入”鈕以后,程序會彈出一個文本導入向導對話框,您只要按照向導的提示進行操作,就可以把以文本格式的數(shù)據(jù)轉換成工作表的格式了。3、快速輸入大量相同數(shù)據(jù)如果你希望在不同的單元格中輸入大量相同的數(shù)據(jù)信息,那么你不必逐個單元格一個一個地輸入,那樣需要花費好長時間,而且還比較容易出錯。你可以通過下面的操作方法在多個相鄰或不相鄰的單元格中快速填充同一個數(shù)據(jù),具體方法為:首先同時選中需要填充數(shù)據(jù)的單元格。若某些單元格不相鄰,可在按住Ctrl鍵的同時,點擊鼠標左鍵,逐個選中;其次輸入要填充的某個數(shù)據(jù)。按住Ctrl鍵的同時,按回車鍵,則剛才選中的所有單元格同時填入該數(shù)據(jù)。4、快速進行中英文輸入法切換一張工作表常常會既包含有數(shù)字信息,又包含有文字信息,要錄入這樣一種工作表就需要我們不斷地在中英文之間反復切換輸入法,非常麻煩,為了方便操作,我們可以用以下方法實現(xiàn)自動切換:首先用鼠標選中需要輸入中文的單元格區(qū)域,然后在輸入法菜單中選擇一個合適的中文輸入法;接著打開“有效數(shù)據(jù)”對話框,選中“IME模式”標簽,在“模式”框中選擇打開,單擊“確定”按鈕;然后再選中輸入數(shù)字的單元格區(qū)域,在“有效數(shù)據(jù)”對話框中,單擊“IME模式”選項卡,在“模式”框中選擇關閉(英文模式);最后單擊“確定”按鈕,這樣用鼠標分別在剛才設定的兩列中選中單元格,五筆和英文輸入方式就可以相互切換了。5、快速刪除工作表中空行刪除ExcelXP工作表中的空行,一般的方法是需要將空行都找出來,然后逐行刪除,但這樣做操作量非常大,很不方便。那么如何才能減輕刪除工作表中空行的工作量呢?您可以使用下面的操作方法來進行刪除:首先打開要刪除空行的工作表,在打開的工作表中用鼠標單擊菜單欄中的“插入”菜單項,并從下拉菜單中選擇“列”,從而插入一新的列X,在X列中順序填入整數(shù);然后根據(jù)其他任何一列將表中的行排序,使所有空行都集中到表的底部。刪去所有空行中X列的數(shù)據(jù),以X列重新排序,然后刪去X列。按照這樣的刪除方法,無論工作表中包含多少空行,您就可以很快地刪除了。6、快速對不同單元格中字號進行調整在使用ExcelXP編輯文件時,常常需要將某一列的寬度固定,但由于該列各單元格中的字符數(shù)目不等,致使有的單元格中的內容不能完全顯示在屏幕上,為了讓這些單元格中的數(shù)據(jù)都顯示在屏幕上,就不得不對這些單元格重新定義較小的字號。如果依次對這些單元格中的字號調整的話,工作量將會變得很大。其實,您可以采用下面的方法來減輕字號調整的工作量:首先新建或打開一個工作簿,并選中需要ExcelXP根據(jù)單元格的寬度調整字號的單元格區(qū)域;其次單擊用鼠標依次單擊菜單欄中的“格式”/“單元格”/“對齊”標簽,在“文本控制”下選中“縮小字體填充”復選框,并單擊“確定”按鈕;此后,當你在這些單元格中輸入數(shù)據(jù)時,如果輸入的數(shù)據(jù)長度超過了單元格的寬度,ExcelXP能夠自動縮小字符的大小把數(shù)據(jù)調整到與列寬一致,以使數(shù)據(jù)全部顯示在單元格中。如果你對這些單元格的列寬進行了更改,則字符可自動增大或縮小字號,以適應新的單元格列寬,但是對這些單元格原設置的字體字號大小則保持不變。7、快速輸入多個重復數(shù)據(jù)在使用ExcelXP工作表的過程中,我們經常要輸入大量重復的數(shù)據(jù),如果依次輸入,無疑工作量是巨大的?,F(xiàn)在我們可以借助ExcelXP的“宏”功能,來記錄首次輸入需要重復輸入的數(shù)據(jù)的命令和過程,然后將這些命令和過程賦值到一個組合鍵或工具欄的按鈕上,當按下組合鍵時,計算機就會重復所記錄的操作。使用宏功能時,我們可以按照以下步驟進行操作:首先打開工作表,在工作表中選中要進行操作的單元格;接著再用鼠標單擊菜單欄中的“工具”菜單項,并從彈出的下拉菜單中選擇“宏”子菜單項,并從隨后彈出的下級菜單中選擇“錄制新宏”命令;設定好宏后,我們就可以對指定的單元格,進行各種操作,程序將自動對所進行的各方面操作記錄復制。8、快速處理多個工作表有時我們需要在ExcelXP中打開多個工作表來進行編輯,但無論打開多少工作表,在某一時刻我們只能對一個工作表進行編輯,編輯好了以后再依次編輯下一個工作表,如果真是這樣操作的話,我們倒沒有這個必要同時打開多個工作表了,因為我們同時打開多個工作表的目的就是要減輕處理多個工作表的工作量的,那么我們該如何實現(xiàn)這樣的操作呢?您可采用以下方法:首先按住“Shift"鍵或“Ctrl"鍵并配以鼠標操作,在工作簿底部選擇多個彼此相鄰或不相鄰的工作表標簽,然后就可以對其實行多方面的批量處理;接著在選中的工作表標簽上按右鍵彈出快捷菜單,進行插入和刪除多個工作表的操作;然后在“文件”菜單中選擇“頁面設置……”,將選中的多個工作表設成相同的頁面模式;再通過“編輯”菜單中的有關選項,在多個工作表范圍內進行查找、替換、定位操作;通過“格式”菜單中的有關選項,將選中的多個工作表的行、列、單元格設成相同的樣式以及進行一次性全部隱藏操作;接著在“工具”菜單中選擇“選項……”,在彈出的菜單中選擇“視窗”和“編輯”按鈕,將選中的工作表設成相同的視窗樣式和單元格編輯屬性;最后選中上述工作表集合中任何一個工作表,并在其上完成我們所需要的表格,則其它工作表在相同的位置也同時生成了格式完全相同的表格。高效辦公Excel排序方法"集中營"排序是數(shù)據(jù)處理中的經常性工作,Excel排序有序數(shù)計算(類似成績統(tǒng)計中的名次)和數(shù)據(jù)重排兩類。本文以幾個車間的產值和名稱為例,介紹Excel2000/XP的數(shù)據(jù)排序方法。一、數(shù)值排序1.RANK函數(shù)RANK函數(shù)是Excel計算序數(shù)的主要工具,它的語法為:RANK(number,ref,order),其中number為參與計算的數(shù)字或含有數(shù)字的單元格,ref是對參與計算的數(shù)字單元格區(qū)域的絕對引用,order是用來說明排序方式的數(shù)字(如果order為零或省略,則以降序方式給出結果,反之按升序方式)。例如圖1中E2、E3、E4單元格存放一季度的總產值,計算各車間產值排名的方法是:在F2單元格內輸入公式“=RANK(E2,$E$2:$E$4)”,敲回車即可計算出鑄造車間的產值排名是2。再將F2中的公式復制到剪貼板,選中F3、F4單元格按Ctrl+V,就能計算出其余兩個車間的產值排名為3和1。如果B1單元格中輸入的公式為“=RANK(E2,$E$2:$E$4,1)”,則計算出的序數(shù)按升序方式排列,即2、1和3。需要注意的是:相同數(shù)值用RANK函數(shù)計算得到的序數(shù)(名次)相同,但會導致后續(xù)數(shù)字的序數(shù)空缺。假如上例中F2單元格存放的數(shù)值與F3相同,則按本法計算出的排名分別是3、3和1(降序時)。2.COUNTIF函數(shù)COUNTIF函數(shù)可以統(tǒng)計某一區(qū)域中符合條件的單元格數(shù)目,它的語法為COUNTIF(range,criteria)。其中range為參與統(tǒng)計的單元格區(qū)域,criteria是以數(shù)字、表達式或文本形式定義的條件。其中數(shù)字可以直接寫入,表達式和文本必須加引號。仍以圖1為例,F(xiàn)2單元格內輸入的公式為“=COUNTIF($E$2:$E$4,">"&E2)+1”。計算各車間產值排名的方法同上,結果也完全相同,2、1和3。此公式的計算過程是這樣的:首先根據(jù)E2單元格內的數(shù)值,在連接符&的作用下產生一個邏輯表達式,即“>176.7”、“>167.3”等。COUNTIF函數(shù)計算出引用區(qū)域內符合條件的單元格數(shù)量,該結果加一即可得到該數(shù)值的名次。很顯然,利用上述方法得到的是降序排列的名次,對重復數(shù)據(jù)計算得到的結果與RANK3.IF函數(shù)Excel自身帶有排序功能,可使數(shù)據(jù)以降序或升序方式重新排列。如果將它與IF函數(shù)結合,可以計算出沒有空缺的排名。以圖1中E2、E3、E4單元格的產值排序為例,具體做法是:選中E2單元格,根據(jù)排序需要,單擊Excel工具欄中的“降序排序”或“升序排序”按鈕,即可使工作表中的所有數(shù)據(jù)按要求重新排列。假如數(shù)據(jù)是按產值由大到小(降序)排列的,而您又想賦予每個車間從1到n(n為自然數(shù))的排名??梢栽贕2單元格中輸入1,然后在G3單元格中輸入公式“=IF(E3=E2,G3,G3+1)”,只要將公式復制到G4等單元格,就可以計算出其他車間的產值排名。二、文本排序選舉等場合需要按姓氏筆劃為文本排序,Excel提供了比較好的解決辦法。如果您要將圖1數(shù)據(jù)表按車間名稱的筆劃排序,可以使用以下方法:選中排序關鍵字所在列(或行)的首個單元格(如圖1中的A1),單擊Excel“數(shù)據(jù)”菜單下的“排序”命令,再單擊其中的“選項”按鈕。選中“排序選項”對話框“方法”下的“筆畫排序”,再根據(jù)數(shù)據(jù)排列方向選擇“按行排序”或“按列排序”,“確定”后回到“排序”對話框(圖2)。如果您的數(shù)據(jù)帶有標題行(如圖1中的“單位”之類),則應選中“有標題行”(反之不選),然后打開“主要關鍵字”下拉列表,選擇其中的“單位”,選中排序方式(“升序”或“降序”)后“確定”,表中的所有數(shù)據(jù)就會據(jù)此重新排列。此法稍加變通即可用于“第一名”、“第二名”等文本排序,請讀者自行摸索。三、自定義排序如果您要求Excel按照“金工車間”、“鑄造車間”和“維修車間”的特定順序重排工作表數(shù)據(jù),前面介紹的幾種方法就無能為力了。這類問題可以用定義排序規(guī)則的方法解決:首先單擊Excel“工具”菜單下的“選項”命令,打開“選項”對話框中的“自定義序列”選項卡(圖3)。選中左邊“自定義序列”下的“新序列”,光標就會在右邊的“輸入序列”框內閃動,您就可以輸入“金工車間”、“鑄造車間”等自定義序列了,輸入的每個序列之間要用英文逗號分隔,或者每輸入一個序列就敲回車。如果序列已經存在于工作表中,可以選中序列所在的單元格區(qū)域單擊“導入”,這些序列就會被自動加入“輸入序列”框。無論采用以上哪種方法,單擊“添加”按鈕即可將序列放入“自定義序列”中備用(圖3)。使用排序規(guī)則排序的具體方法與筆劃排序很相似,只是您要打開“排序選項”對話框中的“自定義排序次序”下拉列表,選中前面定義的排序規(guī)則,其他選項保持不動。回到“排序”對話框后根據(jù)需要選擇“升序”或“降序”,“確定”后即可完成數(shù)據(jù)的自定義排序。需要說明的是:顯示在“自定義序列”選項卡中的序列(如一、二、三等),均可按以上方法參與排序,請讀者注意Excel提供的自定義序列類型。談談Excel輸入的技巧在Excel工作表的單元格中,可以使用兩種最基本的數(shù)據(jù)格式:常數(shù)和公式。常數(shù)是指文字、數(shù)字、日期和時間等數(shù)據(jù),還可以包括邏輯值和錯誤值,每種數(shù)據(jù)都有它特定的格式和輸入方法,為了使用戶對輸入數(shù)據(jù)有一個明確的認識,有必要來介紹一下在Excel中輸入各種類型數(shù)據(jù)的方法和技巧。一、輸入文本Excel單元格中的文本包括任何中西文文字或字母以及數(shù)字、空格和非數(shù)字字符的組合,每個單元格中最多可容納32000個字符數(shù)。雖然在Excel中輸入文本和在其它應用程序中沒有什么本質區(qū)別,但是還是有一些差異,比如我們在Word、PowerPoint的表格中,當在單元格中輸入文本后,按回車鍵表示一個段落的結束,光標會自動移到本單元格中下一段落的開頭,在Excel的單元格中輸入文本時,按一下回車鍵卻表示結束當前單元格的輸入,光標會自動移到當前單元格的下一個單元格,出現(xiàn)這種情況時,如果你是想在單元格中分行,則必須在單元格中輸入硬回車,即按住Alt鍵的同時按回車鍵。二、輸入分數(shù)幾乎在所有的文檔中,分數(shù)格式通常用一道斜杠來分界分子與分母,其格式為“分子/分母”,在Excel中日期的輸入方法也是用斜杠來區(qū)分年月日的,比如在單元格中輸入“1/2”,按回車鍵則顯示“1月2日”,為了避免將輸入的分數(shù)與日期混淆,我們在單元格中輸入分數(shù)時,要在分數(shù)前輸入“0”(零)以示區(qū)別,并且在“0”和分子之間要有一個空格隔開,比如我們在輸入1/2時,則應該輸入“01/2”。如果在單元格中輸入“81/2”,則在單元格中顯示“81/2”,而在編輯欄中顯示“三、輸入負數(shù)在單元格中輸入負數(shù)時,可在負數(shù)前輸入“-”作標識,也可將數(shù)字置在()括號內來標識,比如在單元格中輸入“(88)”,按一下回車鍵,則會自動顯示為“-88”。四、輸入小數(shù)在輸入小數(shù)時,用戶可以向平常一樣使用小數(shù)點,還可以利用逗號分隔千位、百萬位等,當輸入帶有逗號的數(shù)字時,在編輯欄并不顯示出來,而只在單元格中顯示。當你需要輸入大量帶有固定小數(shù)位的數(shù)字或帶有固定位數(shù)的以“0”字符串結尾的數(shù)字時,可以采用下面的方法:選擇“工具”、“選項”命令,打開“選項”對話框,單擊“編輯”標簽,選中“自動設置小數(shù)點”復選框,并在“位數(shù)”微調框中輸入或選擇要顯示在小數(shù)點右面的位數(shù),如果要在輸入比較大的數(shù)字后自動添零,可指定一個負數(shù)值作為要添加的零的個數(shù),比如要在單元格中輸入“88”后自動添加3個零,變成“88000”,就在“位數(shù)”微調框中輸入“-3”,相反,如果要在輸入“88”后自動添加3位小數(shù),變成“0.088”,則要在“位數(shù)”微調框中輸入“3”。另外,在完成輸入帶有小數(shù)位或結尾零字符串的數(shù)字后,應清除對“自動設置小數(shù)點”符選框的選定,以免影響后邊的輸入;如果只是要暫時取消在“自動設置小數(shù)點”中設置的選項,可以在輸入數(shù)據(jù)時自帶小數(shù)點。五、輸入貨幣值Excel幾乎支持所有的貨幣值,如人民幣(¥)、英鎊(£)等。歐元出臺以后,Excel2000完全支持顯示、輸入和打印歐元貨幣符號。用戶可以很方便地在單元格中輸入各種貨幣值,Excel會自動套用貨幣格式,在單元格中顯示出來,如果用要輸入人民幣符號,可以按住Alt鍵,然后再數(shù)字小鍵盤上按“0165”即可。六、輸入日期Excel是將日期和時間視為數(shù)字處理的,它能夠識別出大部分用普通表示方法輸入的日期和時間格式。用戶可以用多種格式來輸入一個日期,可以用斜杠“/”或者“-”來分隔日期中的年、月、日部分。比如要輸入“2001年12月1日”,可以在單元各種輸入“2001/12/1”或者“2001-12-1七、輸入時間在Excel中輸入時間時,用戶可以按24小時制輸入,也可以按12小時制輸入,這兩種輸入的表示方法是不同的,比如要輸入下午2時30分38秒,用24小時制輸入格式為:2:30:38,而用12小時制輸入時間格式為:2:30:38p,注意字母“p”和時間之間有一個空格。如果要在單元格中插入當前時間,則按Ctrl+Shift+;鍵。了解Excel公式的錯誤值經常用Excel的朋友可能都會遇到一些莫名奇妙的錯誤值信息:#N/A!、#VALUE!、#DIV/O!等等,出現(xiàn)這些錯誤的原因有很多種,如果公式不能計算正確結果,Excel將顯示一個錯誤值,例如,在需要數(shù)字的公式中使用文本、刪除了被公式引用的單元格,或者使用了寬度不足以顯示結果的單元格。以下是幾種常見的錯誤及其解決方法。1.#####!原因:如果單元格所含的數(shù)字、日期或時間比單元格寬,或者單元格的日期時間公式產生了一個負值,就會產生#####!錯誤。解決方法:如果單元格所含的數(shù)字、日期或時間比單元格寬,可以通過拖動列表之間的寬度來修改列寬。如果使用的是1900年的日期系統(tǒng),那么Excel中的日期和時間必須為正值,用較早的日期或者時間值減去較晚的日期或者時間值就會導致#####!錯誤。如果公式正確,也可以將單元格的格式改為非日期和時間型來顯示該值。2.#VALUE!當使用錯誤的參數(shù)或運算對象類型時,或者當公式自動更正功能不能更正公式時,將產生錯誤值#VALUE!。原因一:在需要數(shù)字或邏輯值時輸入了文本,Excel不能將文本轉換為正確的數(shù)據(jù)類型。解決方法:確認公式或函數(shù)所需的運算符或參數(shù)正確,并且公式引用的單元格中包含有效的數(shù)值。例如:如果單元格A1包含一個數(shù)字,單元格A2包含文本"學籍",則公式"=A1+A2"將返回錯誤值#VALUE!??梢杂肧UM工作表函數(shù)將這兩個值相加(SUM函數(shù)忽略文本):=SUM(A1:A2)。原因二:將單元格引用、公式或函數(shù)作為數(shù)組常量輸入。解決方法:確認數(shù)組常量不是單元格引用、公式或函數(shù)。原因三:賦予需要單一數(shù)值的運算符或函數(shù)一個數(shù)值區(qū)域。解決方法:將數(shù)值區(qū)域改為單一數(shù)值。修改數(shù)值區(qū)域,使其包含公式所在的數(shù)據(jù)行或列。3.#DIV/O!當公式被零除時,將會產生錯誤值#DIV/O!。原因一:在公式中,除數(shù)使用了指向空單元格或包含零值單元格的單元格引用(在Excel中如果運算對象是空白單元格,Excel將此空值當作零值)。解決方法:修改單元格引用,或者在用作除數(shù)的單元格中輸入不為零的值。原因二:輸入的公式中包含明顯的除數(shù)零,例如:=5/0。解決方法:將零改為非零值。4.#NAME?在公式中使用了Excel不能識別的文本時將產生錯誤值#NAME?。原因一:刪除了公式中使用的名稱,或者使用了不存在的名稱。解決方法:確認使用的名稱確實存在。選擇菜單"插入"|"名稱"|"定義"命令,如果所需名稱沒有被列出,請使用"定義"命令添加相應的名稱。原因二:名稱的拼寫錯誤。解決方法:修改拼寫錯誤的名稱。原因三:在公式中使用標志。解決方法:選擇菜單中"工具"|"選項"命令,打開"選項"對話框,然后單擊"重新計算"標簽,在"工作薄選項"下,選中"接受公式標志"復選框。原因四:在公式中輸入文本時沒有使用雙引號。解決方法:Excel將其解釋為名稱,而不理會用戶準備將其用作文本的想法,將公式中的文本括在雙引號中。例如:下面的公式將一段文本"總計:"和單元格B50中的數(shù)值合并在一起:="總計:"&B50原因五:在區(qū)域的引用中缺少冒號。解決方法:確認公式中,使用的所有區(qū)域引用都使用冒號。例如:SUM(A2:B34)。5.#N/A原因:當在函數(shù)或公式中沒有可用數(shù)值時,將產生錯誤值#N/A。解決方法:如果工作表中某些單元格暫時沒有數(shù)值,請在這些單元格中輸入"#N/A",公式在引用這些單元格時,將不進行數(shù)值計算,而是返回#N/A。6.#REF!當單元格引用無效時將產生錯誤值#REF!。原因:刪除了由其他公式引用的單元格,或將移動單元格粘貼到由其他公式引用的單元格中。解決方法:更改公式或者在刪除或粘貼單元格之后,立即單擊"撤消"按鈕,以恢復工作表中的單元格。7.#NUM!當公式或函數(shù)中某個數(shù)字有問題時將產生錯誤值#NUM!。原因一:在需要數(shù)字參數(shù)的函數(shù)中使用了不能接受的參數(shù)。解決方法:確認函數(shù)中使用的參數(shù)類型正確無誤。原因二:使用了迭代計算的工作表函數(shù),例如:IRR或RATE,并且函數(shù)不能產生有效的結果。解決方法:為工作表函數(shù)使用不同的初始值。原因三:由公式產生的數(shù)字太大或太小,Excel不能表示。解決方法:修改公式,使其結果在有效數(shù)字范圍之間。8.#NULL!當試圖為兩個并不相交的區(qū)域指定交叉點時將產生錯誤值#NULL!。原因:使用了不正確的區(qū)域運算符或不正確的單元格引用。解決方法:如果要引用兩個不相交的區(qū)域,請使用聯(lián)合運算符逗號(,)。公式要對兩個區(qū)域求和,請確認在引用這兩個區(qū)域時,使用逗號。如:SUM(A1:A13,D12:D23)。如果沒有使用逗號,Excel將試圖對同時屬于兩個區(qū)域的單元格求和,但是由于A1:A13和D12:D23并不相交,所以他們沒有共同的單元格。在Excel中快速查看所有工作表公式只需一次簡單的鍵盤點擊,即可可以顯示出工作表中的所有公式,包括Excel用來存放日期的序列值。要想在顯示單元格值或單元格公式之間來回切換,只需按下CTRL+`(位于TAB鍵上方)。EXCEL2000使用技巧十招1、Excel文件的加密與隱藏如果你不愿意自己的Excel文件被別人查看,那么你可以給它設置密碼保護,采用在保存文件時用加密的方法就可以實現(xiàn)保護目的,在這里要特別注意的是,自己設定的密碼一定要記住,否則自己也將被視為非法入侵者而遭拒絕進入。給文件加密的具體方法為:A、單擊“文件”菜單欄中的“保存或者(另存為)”命令后,在彈出的“保存或者(另存為)”的對話框中輸入文件名;B、再單擊這個對話框中“工具”欄下的“常規(guī)選項”按鈕,在彈出的“保存選項”的對話框中輸入自己的密碼;這里要注意,它提供了兩層保護,如果你也設置了修改權限密碼的話,那么即使文件被打開也還需要輸入修改權限的密碼才能修改。C、單擊“確定”按鈕,在彈出的密碼確認窗口中重新輸入一遍密碼,再點擊“確認”,最后點“保存”完成文件的加密工作。當重新打開文件時就要求輸入密碼,如果密碼不正確,文件將不能打開。2、對單元格進行讀寫保護單元格是Excel執(zhí)行其強大的計算功能最基本的元素,對單元格的讀寫保護是Excel對數(shù)據(jù)進行安全管理的基礎。對單元格的保護分為寫保護和讀保護兩類,所謂寫保護就是對單元格中輸入信息加以限制,讀保護是對單元格中已經存有信息的瀏覽和查看加以限制。對單元格的寫保護有兩種方法:A、對單元格的輸入信息進行有效性檢測。首先選定要進行有效性檢測的單元格或單元格集合,然后從數(shù)據(jù)菜單中選擇“有效數(shù)據(jù)”選項,通過設定有效條件、顯示信息和錯誤警告,控制輸入單元格的信息要符合給定的條件。B、設定單元格的鎖定屬性,以保護存入單元格的內容不能被改寫??煞譃橐韵虏襟E:(1)選定需要鎖定的單元格或單元格集合;(2)從格式菜單中選擇“單元格”選項;(3)在設置單元格格式的彈出菜單中選擇“保護”標簽,在彈出的窗口中,選中“鎖定”;(4)從工具菜單中選擇“保護”選項,設置保護密碼,即完成了對單元格的鎖定設置。對單元格的讀保護有三種方法:A、通過對單元格顏色的設置進行讀保護。例如:將選定單元格或單元格集合的背景顏色與字體顏色同時設為白色,這樣,從表面看起來單元格中好像是沒有輸入任何內容,用戶無法直接讀出單元格中所存儲的信息。B、用其他畫面覆蓋在需要保護的單元格之上,遮住單元格的本來面目,以達到讀保護目的。例如:使用繪圖工具,畫一不透明矩形覆蓋在單元格之上,從格式菜單中選定矩形的“鎖定”選項,然后保護工作表,以保證矩形不能被隨意移動。這樣,用戶所看到的只是矩形,而看不到單元格中所存儲的內容。C、通過設置單元格的行高和列寬,隱藏選定的單元格,然后保護工作表,使用戶不能直接訪問被隱藏的單元格,從而起到讀保護的作用。3、快速填充相同數(shù)據(jù)如果你希望在不同的單元格中輸入大量相同的數(shù)據(jù)信息,那么你不必逐個單元格一個一個地輸入,那樣需要花費好長時間,而且還比較容易出錯。我們可以通過下面的操作方法在多個相鄰或不相鄰的單元格中快速填充同一個數(shù)據(jù),具體方法為:A、同時選中需要填充數(shù)據(jù)的單元格。若某些單元格不相鄰,可在按住Ctrl鍵的同時,點擊鼠標左鍵,逐個選中;B、輸入要填充的某個數(shù)據(jù)。按住Ctrl鍵的同時,按回車鍵,則剛才選中的所有單元格同時填入該數(shù)據(jù)。4、使用Excel中的“宏”功能宏的概念,相信使用過WORD的人都會知道,她可以記錄命令和過程,然后將這些命令和過程賦值到一個組合鍵或工具欄的按鈕上,當按下組合鍵時,計算機就會重復所記錄的操作。在實踐工作中,它可以代替經常輸入大量重復而又瑣碎的數(shù)據(jù),具體宏的定義方法如下::A、打開工作表,在工作表中選中要進行操作的單元格;B、用鼠標單擊菜單欄中的“工具”菜單項,并從彈出的下拉菜單中選擇“宏”子菜單項,并從隨后彈出的下級菜單中選擇“錄制新宏”命令;C、設定好宏后,我們就可以對指定的單元格,進行各種操作,程序將自動對所進行的各方面操作記錄復制。5、連續(xù)兩次選定單元格我們有時需要在某個單元格內連續(xù)輸入多個數(shù)值,以查看引用此單元格的其他單元格的效果。但每次輸入一個值后按回車鍵,活動單元格均默認下移一個單元格,非常不便。解決此問題的一般做法是通過選擇“工具”\“選項”\“編輯”,取消“按回車鍵后移動”選項的選定來實現(xiàn)在同一單元格內輸入許多數(shù)值,但以后你還得將此選項選定,顯得比較麻煩。其實,采用連續(xù)兩次選定單元格方法就顯得靈活、方便:單擊鼠標選定單元格,然后按住Ctrl鍵再次單擊鼠標選定此單元格。此時,單元格周圍將出現(xiàn)實線框。6、在工作表之間使用超級連接首先須要在被引用的其他工作表中相應的部分插入書簽,然后在引用工作表中插入超級鏈接,注意在插入超級鏈接時,可以先在“插入超級鏈接”對話框的“鏈接到文件或URL”設置欄中輸入目標工作表的路徑和名稱,再在“文件中有名稱的位置”設置欄中輸入相應的書簽名,也可以通過“瀏覽”方式選擇。完成上述操作之后,一旦使用鼠標左鍵單擊工作表中帶有下劃線的文本的任意位置,即可實現(xiàn)中文Excel2000在自動打開目標工作表并轉到相應的位置處,這一點與WORD的使用很相似。7、快速清除單元格的內容首先用鼠標選定該單元格,然后按住鍵盤上的Delete鍵,此時你會發(fā)現(xiàn)你只是刪除了單元格內容,它的格式和批注還保留著。那么如何才能徹底清除單元格呢,請看下面的兩種操作步驟:A、選定想要清除的單元格或單元格范圍;B、選擇“編輯”菜單中的“清除”命令,這時顯示“清除”菜單;C、選擇要清除的命令,可以選擇“全部”、“格式”、“內容”或“批注”中的任一個。8、快速修改單元格次序在實際操作的過程中,我們有時需要快速修改單元格內容的次序。在拖放選定的一個或多個單元格至新的位置的同時,按住Shift鍵可以快速修改單元格內容的次序。具體方法如下:A、首先用鼠標選定單元格,同時按下鍵盤上的Shift鍵;B、接著移動鼠標指針到單元格邊緣,直至出現(xiàn)拖放指針箭頭,然后進行拖放操作。上下拖拉時鼠標在單元格間邊界處會變成一個水平“工”狀標志,左右拖拉時會變成垂直“工”狀標志,釋放鼠標按鈕完成操作后,單元格間的次序即發(fā)生了變化。、在Excel中利用公式來設置加權平均加權平均在財務核算和統(tǒng)計工作中經常用到,并不是一項很復雜的計算,關鍵是要理解加權平均值其實就是總量值(如金額)除以總數(shù)量得出的單位平均值,而不是簡單的將各個單位值(如單價)平均后得到的那個單位值。在Excel中可設置公式解決(其實就是一個除法算式),分母是各個量值之和,分子是相應的各個數(shù)量之和,它的結果就是這些量值的加權平均值。10、用Excel繪制函數(shù)圖像函數(shù)圖像能直觀地反映函數(shù)的性質,用手工方法來繪制函數(shù)圖像效果不太好,而用Excel繪制函數(shù)圖像非常簡便,所作圖像非常標準、漂亮,具體方法如下:A、首先打開電子表格的操作窗口,然后用鼠標選擇菜單欄中的“新建”命令,這時屏幕上會出現(xiàn)一個空白的電子表格;B、然后在A列的A1格輸入“X=”,表明這是自變量,再在A列的A2及以后的格內逐次從小到大輸入自變量的各個值;實際輸入的時候,通常應用等差數(shù)列輸入法,先輸入前三個值,定出自變量中數(shù)與數(shù)的距離,然后點擊A2格,按住鼠標拖到A4格選中這三項,使這三項變成一個黑色矩形,再用鼠標指向這黑色矩形的右下角的小方塊,當光標變成“+”后,按住鼠標拖動光標到適當?shù)奈恢茫屯瓿勺宰兞康妮斎?;C、接著在B列的B1格輸入函數(shù)式y(tǒng)=f(x)的一般函數(shù)表達式,如y=1/x;也可在點擊工具欄上的函數(shù)圖標“fx”后,在出現(xiàn)的不同函數(shù)列表的選項中選擇需要的一種;輸入結束后,點擊函數(shù)輸入對話框旁的勾號,B2格內馬上得出了計算的結果。這時,再選中B2格,讓光標指向B2矩形右下角的方框,當光標變成“+”時按住光標沿B列拖動到適當?shù)奈恢眉赐瓿珊瘮?shù)值的計算。注意一定要把該函數(shù)中自變量x的位置輸入前面A列自變量的絕對位置A2格,這樣下面計算的時候才會對不同的自變量進行計算;D、最后點擊工具欄上的“圖表向導”圖標,在出現(xiàn)的各種圖表格式圖標中選擇“X,Y散點圖”,然后在出現(xiàn)的“X,Y散點圖”類型中選擇“無數(shù)據(jù)點平滑線散點圖”;這時,可按住鼠標察看即將繪好的函數(shù)圖像。另外,對于自變量僅為正值的函數(shù),也可用“圖表向導”中的“折線圖”格式繪制。在Excel中自動推測出生年月日及性別的技巧大家都知道,身份證號碼已經包含了每個人的出生年月日及性別等方面的信息(對于老式的15位身份證而言,7-12位即個人的出生年月日,而最后一位奇數(shù)或偶數(shù)則分別表示男性或女性。如某人的身份證號碼為420400700101001,它的7-12位為700101,這就表示該人是1970年元月1日出生的,身份證的最后一位為奇數(shù)1,這就表示該人為男性;對于新式的18位身份證而言,7-14位代表個人的出身年月日,而倒數(shù)第二位的奇數(shù)或偶數(shù)則分別表示男性或女性)。根據(jù)身份證號碼的這些排列規(guī)律,結合Excel的有關函數(shù),我們就能實現(xiàn)利用身份證號碼自動輸入出生年月日及性別等信息的目的,減輕日常輸入的工作量。Excel中提供了一個名為MID的函數(shù),其作用就是返回文本串中從指定位置開始特定數(shù)目的字符,該數(shù)目由用戶指定(另有一個名為MIDB的函數(shù),其作用與MID完全一樣,不過MID僅適用于單字節(jié)文字,而MIDB函數(shù)則可用于漢字等雙字節(jié)字符),利用該功能我們就能從身份證號碼中分別取出個人的出生年份、月份及日期,然后再加以適當?shù)暮喜⑻幚砑纯傻贸鰝€人的出生年月日信息。提示:MID函數(shù)的格式為MID(text,start_num,num_chars)或MIDB(text,start_num,num_bytes),其中Text是包含要提取字符的文本串;Start_num是文本中要提取的第一個字符的位置(文本中第一個字符的start_num為1,第二個為2……以此類推);至于Num_chars則是指定希望MID從文本中返回字符的個數(shù)。假定某單位人
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度大數(shù)據(jù)中心建設與運營服務合同規(guī)范3篇
- 二手房交易合同模板2024一
- 2024物業(yè)租賃合同中的違約金計算方式
- 二零二五版船舶環(huán)保技術改造項目股份投資合同3篇
- 關于2025年度環(huán)保設施運營維護的詳細合同
- 專用面粉生產與供應合同2024
- 2024淘寶天貓京東電商客服團隊激勵考核合同3篇
- 2025年校園物業(yè)管理與服務保障合同書6篇
- 2025年度船舶建造與船員培訓服務合同3篇
- 2024版公證處借款合同范文
- 2024高考復習必背英語詞匯3500單詞
- 消防控制室值班服務人員培訓方案
- 《貴州旅游介紹》課件2
- 2024年中職單招(護理)專業(yè)綜合知識考試題庫(含答案)
- 無人機應用平臺實施方案
- 挪用公款還款協(xié)議書范本
- 事業(yè)單位工作人員年度考核登記表(醫(yī)生個人總結)
- 盾構隧道施工數(shù)字化與智能化系統(tǒng)集成
- 【企業(yè)盈利能力探析文獻綜述2400字】
- 2019年醫(yī)養(yǎng)結合項目商業(yè)計劃書
- 2023年店鋪工程主管年終業(yè)務工作總結
評論
0/150
提交評論