ERP系統(tǒng)-面試問(wèn)題匯總_第1頁(yè)
ERP系統(tǒng)-面試問(wèn)題匯總_第2頁(yè)
ERP系統(tǒng)-面試問(wèn)題匯總_第3頁(yè)
ERP系統(tǒng)-面試問(wèn)題匯總_第4頁(yè)
ERP系統(tǒng)-面試問(wèn)題匯總_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

ERP項(xiàng)目問(wèn)題匯總項(xiàng)目一組:婁迎新1 請(qǐng)描述一下這個(gè)系統(tǒng)?從兩個(gè)方面回答:第一個(gè)方面:系統(tǒng)背景及系統(tǒng)概述 (藍(lán)云)商貿(mào)ERP系統(tǒng)針對(duì)中小型商貿(mào)企業(yè)開(kāi)發(fā)設(shè)計(jì)的企業(yè)資源計(jì)劃管理系統(tǒng)。通過(guò)ERP系統(tǒng)的管理,企業(yè)可以有效管理經(jīng)營(yíng)各個(gè)環(huán)節(jié)中的業(yè)務(wù)數(shù)據(jù)。企業(yè)數(shù)據(jù)經(jīng)過(guò)收集匯總后,為各級(jí)終端用戶提供日常業(yè)務(wù)信息管理、業(yè)務(wù)流程執(zhí)行等日常辦公服務(wù)輔助平臺(tái),輔助本職能部門出具預(yù)案決策,提高整體企業(yè)內(nèi)部業(yè)務(wù)工作效率。第二個(gè)方面:系統(tǒng)包括的業(yè)務(wù)模塊及主業(yè)務(wù)流程本系統(tǒng)包括了:基本信息管理、人事管理、采購(gòu)管理、銷售管理、庫(kù)存管理、統(tǒng)計(jì)分析、工作流管理、權(quán)限管理等模塊。2 這個(gè)系統(tǒng)你做了哪些模塊?(拿你熟悉的模塊說(shuō))3 談?wù)勀愕南到y(tǒng)退貨功能(或者其它你不熟悉的模塊)是如何實(shí)現(xiàn)的?我當(dāng)時(shí)沒(méi)有負(fù)責(zé)這個(gè)模塊的開(kāi)發(fā),不太清楚具體的實(shí)現(xiàn)細(xì)節(jié)。我當(dāng)時(shí)負(fù)責(zé)的是采購(gòu)和銷售模塊的開(kāi)發(fā)。4 說(shuō)說(shuō)系統(tǒng)的架構(gòu)以及用到的一些技術(shù)本系統(tǒng)采用目前最流行的前后端模式。后端采用SSH2集成框架開(kāi)發(fā)(struts2、spring3.、hibernate3),并且權(quán)限框架采用Shiro , 工作流系統(tǒng)采用activiti , 報(bào)表采用JfreeChart ,導(dǎo)出數(shù)據(jù)采用POI,前端采用easyUI + JQuery 。系統(tǒng)架構(gòu)圖如下:5 說(shuō)說(shuō)Spring在整個(gè)系統(tǒng)中的作用spring的作用:spring作為整個(gè)系統(tǒng)的粘合劑,整合了hibernate和struts2,管理控制層的action、業(yè)務(wù)邏輯層的biz、數(shù)據(jù)訪問(wèn)層的dao,對(duì)struts的action采用多例的方式管理,對(duì)biz和dao采用單例方式。本系統(tǒng)采用聲明式事務(wù)控制方式對(duì)業(yè)務(wù)邏輯層進(jìn)行事務(wù)控制,spring和hibernate整合后, spring在業(yè)務(wù)邏輯層方法開(kāi)發(fā)執(zhí)行前創(chuàng)建session,開(kāi)啟事務(wù),方法結(jié)束提交事務(wù),關(guān)閉session。spring和shiro進(jìn)行整合開(kāi)發(fā),spring管理shiro框架的securityManager、realm等bean,。spring和activiti整合開(kāi)發(fā)工作流,spring管理activiti的bean。6 請(qǐng)說(shuō)一下這個(gè)系統(tǒng)hibernate具體的技術(shù)細(xì)節(jié)。本系統(tǒng)大部分的功能主要使用hibernate的離線QBC查詢,在多表關(guān)聯(lián)和統(tǒng)計(jì)功能采用HQL查詢。使用QBC查詢的優(yōu)點(diǎn)主要是它非常適合動(dòng)態(tài)組合的條件查詢,而HQL的優(yōu)點(diǎn)主要在于它在編寫多表關(guān)聯(lián)時(shí)比較容易,通常用于統(tǒng)計(jì)分析模塊的編寫。我們?cè)谶B接ORACLE時(shí),我們采用了普遍采用的瘦連接(thin)方式。7 你主要采用的什么主鍵生成策略?1. 對(duì)于普通的表(沒(méi)有關(guān)聯(lián)關(guān)系的表) 主鍵生成策略采用native+ 序列+觸發(fā)器方式。也就是我們針對(duì)每一個(gè)表創(chuàng)建一個(gè)序列,再創(chuàng)建一個(gè)觸發(fā)器用于讀取序列值。2. 對(duì)于建立了關(guān)聯(lián)關(guān)系的表(訂單和訂單明細(xì))我們采用的主鍵生成策略是sequence ,直接指定序列8 你在哪個(gè)地方使用到了hibernate關(guān)聯(lián)我們的人員和部門建立了單向多對(duì)一關(guān)聯(lián),商品和商品類型建立了單向多對(duì)一關(guān)聯(lián),訂單和訂單明細(xì)建立了雙向一對(duì)多關(guān)聯(lián)。在權(quán)限系統(tǒng)部門,用戶和角色是多對(duì)多關(guān)聯(lián) ,角色和權(quán)限是多對(duì)多關(guān)聯(lián)。 9 這個(gè)系統(tǒng)struts2是怎么用的?我們的系統(tǒng)只是用到了struts2的屬性驅(qū)動(dòng)和動(dòng)態(tài)方法配置,由于采用的是前后端的編程架構(gòu),前端使用了easyUI,所以沒(méi)有用到struts2標(biāo)簽。10 有沒(méi)有使用到struts2自定義攔截器我們系統(tǒng)初期使用到了struts2攔截器,用于權(quán)限的校驗(yàn),后期改用shiro框架實(shí)現(xiàn)權(quán)限校驗(yàn)。11 解釋一下屬性驅(qū)動(dòng),除了屬性驅(qū)動(dòng),還有什么方式可以接收頁(yè)面?zhèn)鬟f過(guò)來(lái)的值屬性驅(qū)動(dòng)是在action中直接定義需要接收的屬性,并需要有g(shù)etter和setter方法 。我們?cè)陧?xiàng)目中全部采用屬性驅(qū)動(dòng),具有定義靈活使用方便的效果 。還有一種叫模型驅(qū)動(dòng),是通過(guò)讓Action實(shí)現(xiàn)ModelDriven接口并指定模型對(duì)象類型,模型對(duì)象類型即為pojo。 由于模型驅(qū)動(dòng)只能接收一個(gè)模型,使用起來(lái)具有一定局限性,所以ERP中沒(méi)有采用這種技術(shù)方案。12 這個(gè)系統(tǒng)UI使用什么框架?都用到j(luò)query easy ui的哪些組件? 系統(tǒng)UI使用Jquery easy UI,及jquery庫(kù)。系統(tǒng)框架布局使用layout,系統(tǒng)標(biāo)簽窗口采用tabs,數(shù)據(jù)列表采用datagrid,下拉列表combobox ,下拉數(shù)據(jù)表格combogrid 彈出窗口 window消息提示:messager 樹(shù)控件 tree 等。13 本系統(tǒng)ajax+json具體是怎么做的?action的方法返回的json是如何實(shí)現(xiàn)的?ajax+json:頁(yè)面采用ajax提交,服務(wù)端返回是json,注意:頁(yè)面提交的是key/value串。頁(yè)面提交統(tǒng)一采用ajax Form提交方式,引用了一個(gè)叫form.js的腳本,其中使用了jquery提供form組件$(#form1).serialize() ,再加上二次封裝,起到了簡(jiǎn)化開(kāi)發(fā)的作用。14 系統(tǒng)哪些地方使用到了json?1、 數(shù)據(jù)列表查詢返回json,在頁(yè)面中使用jqeru easy ui的datagrid進(jìn)行解析。2、 所有提交類的action方法統(tǒng)一返回json3、 異常處理器會(huì)將異常信息轉(zhuǎn)為json4、 系統(tǒng)菜單使用json數(shù)據(jù)表示。使用json目的:使用json方便客戶端頁(yè)面解析數(shù)據(jù)。15 你是如何將對(duì)象轉(zhuǎn)成JSON或是將JSON轉(zhuǎn)成對(duì)象?我們采用的解析JSON的工具是現(xiàn)在廣泛采用的流行json工具包-阿里巴巴的fastJSON. 它提供了toJsonString方法將對(duì)象或集合轉(zhuǎn)換為json字符串 ,parse方法用于將json字符串轉(zhuǎn)換為對(duì)象(MAP).parseArray方法用于將json字符串轉(zhuǎn)換為L(zhǎng)ist 集合16 這個(gè)系統(tǒng)異常處理是怎么做的?分兩個(gè)方面:1、系統(tǒng)異常類型自定義了一個(gè)系統(tǒng)異常類,繼承RuntimeException,該異常類需要編寫一個(gè)string類型的參數(shù)的的構(gòu)造方法,構(gòu)造方法中調(diào)用父類的構(gòu)造方法。該參數(shù)為異常的具體信息。2、系統(tǒng)異常的捕獲和解析dao層出現(xiàn)錯(cuò)誤拋給biz、biz出現(xiàn)異常拋給action、action捕獲異常進(jìn)行輸出。17 系統(tǒng)權(quán)限系統(tǒng)是如何構(gòu)建的?我們的權(quán)限系統(tǒng)用到5張表: 用戶表(emp)、角色表( role ) 、權(quán)限表( menu )、用戶角色中間表 (emp_role) 、角色權(quán)限中間表(role_menu ) 。在hibernate中,用戶和角色建立多對(duì)多關(guān)聯(lián),角色與權(quán)限建立多對(duì)多關(guān)聯(lián)。 權(quán)限系統(tǒng)包括用戶管理(增刪改查) 、角色管理(增刪改查) 、角色權(quán)限設(shè)置 、用戶角色設(shè)置、權(quán)限菜單等功能。前端頁(yè)面主要采用了tree控件,實(shí)現(xiàn)對(duì)角色、權(quán)限的設(shè)置。18 你如何實(shí)現(xiàn)根據(jù)用戶查詢到該用戶擁有的權(quán)限?我們使用了HQL的多對(duì)多關(guān)聯(lián)查詢,語(yǔ)句如下:select m from Emp e join e.roles r join r.menus m where e.uuid=?19 你如何保證用戶在沒(méi)有登陸的情況下不能訪問(wèn)系統(tǒng)的功能?我們采用了現(xiàn)在主流的權(quán)限框架shiro ,通過(guò)配置認(rèn)證和授權(quán)信息,實(shí)現(xiàn)對(duì)系統(tǒng)功能的控制。20 你們的統(tǒng)計(jì)報(bào)表是如何實(shí)現(xiàn)的?我們的報(bào)表分三部分:(1)統(tǒng)計(jì)表統(tǒng)計(jì)表我只做了其中一個(gè),后來(lái)其它統(tǒng)計(jì)報(bào)表交給另外一個(gè)開(kāi)發(fā)組來(lái)完成。我做的是銷售統(tǒng)計(jì)報(bào)表,功能是統(tǒng)計(jì)每種商品類型在一段時(shí)間的銷售額。這個(gè)功能涉及到4個(gè)表關(guān)聯(lián)查詢(商品表、商品分類表、訂單表、訂單明細(xì)表),也用到了聚合函數(shù)sum(). (2) 統(tǒng)計(jì)圖統(tǒng)計(jì)圖我們采用的是JFreeChart 來(lái)實(shí)現(xiàn)一個(gè)餅圖。統(tǒng)計(jì)出每種商品的銷售額占總銷售額的百分比。(3)報(bào)表導(dǎo)出我們采用了POI技術(shù)來(lái)實(shí)現(xiàn)對(duì)統(tǒng)計(jì)結(jié)果的導(dǎo)出。21 系統(tǒng)中有導(dǎo)出功能嗎?怎么實(shí)現(xiàn)的?我們通過(guò)用POI技術(shù)實(shí)現(xiàn)導(dǎo)出。我們這里主要是用到了POI 的幾個(gè)核心的類。HSSFWorkBook(工作簿) HSSFSheet (工作表) HSSFRow(行) HSSFCell (列)22 你如何理解前端驗(yàn)證和后端驗(yàn)證,是如何實(shí)現(xiàn)的?前端驗(yàn)證是在前端所進(jìn)行的數(shù)據(jù)校驗(yàn),主要用于非空驗(yàn)證和常用的格式驗(yàn)證。我們采用的是easyUI提供的校驗(yàn)控件(validatebox )它對(duì)常用的校驗(yàn)規(guī)則進(jìn)行了封裝。后端驗(yàn)證是在業(yè)務(wù)邏輯層編寫的用于校驗(yàn)數(shù)據(jù)的邏輯。通常用于重復(fù)性驗(yàn)證、關(guān)聯(lián)數(shù)據(jù)驗(yàn)證等。23 如果我要實(shí)現(xiàn)某個(gè)數(shù)據(jù)非空驗(yàn)證,是不是寫了前端驗(yàn)證就不用寫后端驗(yàn)證了?對(duì)于一些特別重要的數(shù)據(jù),最好是前端后端都驗(yàn)證,這樣可以“雙保險(xiǎn)”,大部分的非法請(qǐng)求通過(guò)前端攔截,可以避免后端承載過(guò)多的壓力。但是前端驗(yàn)證是“不把握”的,有可能被用戶的瀏覽器所屏蔽,所以對(duì)于重要的數(shù)據(jù)后端驗(yàn)證也是有必要的。另外比如重復(fù)性驗(yàn)證和關(guān)聯(lián)性驗(yàn)證前端也是無(wú)法實(shí)現(xiàn)的,只能要給后端來(lái)做。24 談一下你編寫過(guò)的比較復(fù)雜的業(yè)務(wù)邏輯是什么?我編寫過(guò)比較復(fù)雜的業(yè)務(wù)邏輯是采購(gòu)入庫(kù)和銷售出庫(kù),兩者的業(yè)務(wù)邏輯很相似。我就說(shuō)一說(shuō)銷售出庫(kù)的業(yè)務(wù)邏輯吧。銷售出庫(kù)的業(yè)務(wù)邏輯分為4步:(1) 修改訂單明細(xì)的狀態(tài)、出庫(kù)時(shí)間等字段。(2) 修改庫(kù)存數(shù)量,需要判斷當(dāng)前出庫(kù)的庫(kù)存是否小于庫(kù)存,如果出庫(kù)大于庫(kù)存則拋出庫(kù)存不足的自定義異常。(3) 記錄庫(kù)存變動(dòng)記錄表(4) 判斷當(dāng)明細(xì)的記錄全部出庫(kù)后,修改訂單主表的狀態(tài)等信息。25 你在使用下拉列表數(shù)據(jù)時(shí),如果下拉列表數(shù)據(jù)過(guò)多(100條以上),你是如何讓用戶很快找到要選擇的數(shù)據(jù)的呢?有一種叫做自動(dòng)補(bǔ)全的解決方案。類似與百度搜索那樣的,當(dāng)用戶輸入某個(gè)字符后,下拉列表會(huì)自動(dòng)根據(jù)輸入的數(shù)據(jù)模糊搜索并展示搜索的結(jié)果。我在ERP中采用的是easyUI的combobox和combogrid 組件,他們有一個(gè)屬性是mode 設(shè)置為remote,這樣用戶每次輸入字符就會(huì)自動(dòng)向后端action發(fā)送叫q的參數(shù)。后端代碼就可以根據(jù)這個(gè)參數(shù)值來(lái)進(jìn)行模糊搜索。26 請(qǐng)描述采購(gòu)業(yè)務(wù)流程?首先采購(gòu)員發(fā)起采購(gòu)申請(qǐng),然后由采購(gòu)經(jīng)理審批,金額大于等于1萬(wàn)元的總經(jīng)理審批,小于1萬(wàn)元的財(cái)務(wù)經(jīng)理審批,審批后由采購(gòu)員確認(rèn)采購(gòu),最后一步是入庫(kù)。27 系統(tǒng)使用工作流了嗎?怎么用的?系統(tǒng)使用activiti工作流引擎對(duì)采購(gòu)流程進(jìn)行管理。使用方法:我們首先需要繪制流程圖(在eclipse中安裝activiti的插件)然后將流程圖部署到activiti .業(yè)務(wù)的操作流程是:1、發(fā)起采購(gòu)申請(qǐng),啟動(dòng)流程實(shí)例,并完成采購(gòu)申請(qǐng)任務(wù)2、采購(gòu)經(jīng)理審核后,完成采購(gòu)審核任務(wù)3、采購(gòu)確認(rèn)后,完成采購(gòu)確認(rèn)任務(wù)。4、采購(gòu)入庫(kù)后,完成采購(gòu)入庫(kù)任務(wù),流程實(shí)例結(jié)束。28 工作流的流程變量指的是什么?當(dāng)我們的流程圖出現(xiàn)分支時(shí),流程變量起的作用是控制路線的走向。在連線上有UEL表達(dá)式,通過(guò)對(duì)流程變量賦值,決定UEL返回的是true還是false ,如果為true則走,反之則不走。29 什么是排他網(wǎng)關(guān)?請(qǐng)畫出排他網(wǎng)關(guān)。我在ERP的工作流中主要用到了排他網(wǎng)關(guān)。排他網(wǎng)關(guān)的符號(hào)是個(gè)“叉”。從排他網(wǎng)關(guān)甩出來(lái)的線只能走一條,確定了路線的唯一性。30 什么是并行網(wǎng)關(guān)?并畫出并行網(wǎng)關(guān)。并行網(wǎng)關(guān)的符號(hào)是加號(hào)。一個(gè)并行網(wǎng)關(guān)的流程圖,加號(hào)必定是成對(duì)出現(xiàn)的。第一個(gè)叫分支,第二個(gè)叫匯聚。從并行網(wǎng)關(guān)甩出來(lái)的線是必走的,線上有條件會(huì)自動(dòng)忽略。* 技術(shù)面試回答技巧【1】知己知彼。在面試任何一家公司前,最好要了解這家公司所采用的技術(shù)方向和產(chǎn)品的類型。這樣你在面試時(shí)要重點(diǎn)突出自己的項(xiàng)目經(jīng)驗(yàn)與公司產(chǎn)品的共同點(diǎn)或融合點(diǎn),讓面試官認(rèn)為你的技術(shù)或知識(shí)結(jié)構(gòu)和他們要求的是相符的。例:你對(duì)我們公司的產(chǎn)品有多少了解。答:我之前聽(tīng)過(guò)說(shuō)公司的產(chǎn)品XXXX(接下來(lái)簡(jiǎn)單描述一下產(chǎn)品的特點(diǎn)),做的非常不錯(cuò)(給予肯定,回答問(wèn)題也別忘了說(shuō)幾句贊美的話)。 而我之前負(fù)責(zé)開(kāi)發(fā)ERP系統(tǒng)進(jìn)銷存模塊,從技術(shù)解決方案和業(yè)務(wù)上與公司產(chǎn)品有很多相似之處(抬高別人把自己也帶上,呵呵),相信我加入公司會(huì)很快進(jìn)入狀態(tài)(不要忘記時(shí)刻推銷自己)?!?】扭轉(zhuǎn)乾坤。在面試中難免會(huì)遇到一些回答不上來(lái)的問(wèn)題,可能有些你只是聽(tīng)說(shuō),有些用過(guò)但記憶不深刻或者從來(lái)沒(méi)有用過(guò)。這樣的問(wèn)題不要直接回答不會(huì)或是不知道,而是要掌握回答的技巧,做適當(dāng)?shù)摹芭茴}”,讓面試官認(rèn)為你能懂一些相關(guān)的知識(shí),這樣才不至于在這道題上給你打個(gè)零分。例:了解正則表達(dá)式嗎?EMail的正則表達(dá)式如何編寫?你能寫出特殊規(guī)則的正則表達(dá)式嗎?答:正則表達(dá)式定義了一組符號(hào),根據(jù)相應(yīng)的規(guī)則來(lái)實(shí)現(xiàn)數(shù)據(jù)的校驗(yàn)。原來(lái)沒(méi)有用easyUI前在JS中使用過(guò)簡(jiǎn)單的正則表達(dá)式,但是都是常用規(guī)則,上網(wǎng)“百度”一下直接就用了,包括EMAIL的 URL的 電話的什么的都是“百度”,(呵呵) 。要是自己來(lái)寫一個(gè)特殊的規(guī)則,說(shuō)實(shí)話,有些費(fèi)勁,畢竟這東西寫的有點(diǎn)少,但是經(jīng)過(guò)查閱資料研究研究最后也能寫出來(lái),總體感覺(jué)不是特別難。使用easyUI后,就再也沒(méi)有直接使用到正則表達(dá)式了,因?yàn)閑asyUI給你封裝起來(lái)了,如果要實(shí)現(xiàn)一個(gè)EMAIL規(guī)則的校驗(yàn),只需要添加一個(gè)屬性 validType 為email .【3】以退為進(jìn)。有些問(wèn)題確實(shí)也答不上來(lái),或者是根本沒(méi)聽(tīng)說(shuō)的技術(shù)。這時(shí)候不要慌。要非常鎮(zhèn)定、謙虛地、放松地向面試官請(qǐng)教問(wèn)題,問(wèn)一下這個(gè)技術(shù)到底是做什么用的。如果這個(gè)技術(shù)和你之前用的某個(gè)技術(shù)可以達(dá)到相同的效果,可以講一下你之前用的技術(shù)可以達(dá)到這樣的效果,并且有什么優(yōu)點(diǎn)等等。例:面試官: 聽(tīng)說(shuō)過(guò)Memcached嗎?答:這個(gè)。我向請(qǐng)教一下Memcached是做什么用的?面試

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論