web專案開發總結
阿新 • • 發佈:2019-01-04
一、專案開發需要注意的幾點
1.系統佈局選擇非常重要,選擇合適的UI能夠庫快速的開發
2.系統後臺框架,選擇spring+springMVC+hibernate
3.前端的js框架,jQuery+jQuery UI+page
4.新增、修改前端傳送json格式,所有的資料一次性發送
5.查詢的複雜條件採用json格式,簡單ID查詢採用form-data格式
6.表單刪除採用邏輯刪除,一定要設定有效控制欄位
7.頁面佈局要素,表格頁面要分頁,表單頁面採用name作為區分屬性
8.表單採用彈出模式
9.表單有增刪改查,查詢有重置,新增有判斷是否為空
二、專案遇到的問題
1.沒有做詳細的需求分析,產品的需求一邊開發一邊探討,導致開發時邏輯混亂,程式碼混亂,切記,以後沒有專案都應該有一份功能需求分析文件(劃分功能點)。
2.開發前沒有詳細的設計規範,沒有介面文件,導致開發步驟亂七八糟
3.命名太頭疼
4.頁面設計過於依賴複製
5.表單登入一定要謹慎使用form
三、幾個主要問題的解決方法
1.時間插入控制元件,jQuery UI控制元件有存在bug,解決方法用laydate時間插入控制元件
2.hibernate的一對多與多對一關聯的知識竟然忘記的,用了一對多雙向關聯時,防止json轉換死迴圈,需要新增@JsonIgnoreProperties(value = {“number”}) number 代表類的屬性欄位
3.一次性儲存表格資料時採用獲取方法(獲取每一行的元素再根據name封裝成object 在放入Array中)
/**設定會員繳費資訊*/
function setHuiFei(numdata) {
var hfArray=[];
for(var i=2010;i<=2020;i++){
var hfobj=new Object();
var objArray=$('.tr'+i+' .huifei');
for (var j = 0; j < objArray.length; j++) {
var hfname = objArray[j].name;
var hfvalue = objArray[j].value.toString();
if (hfvalue != "") {
eval("hfobj." + hfname + "='" + hfvalue + "'");
}
}
hfArray.push(hfobj);
}
numdata.huiFeiSet=hfArray;
return numdata;
}
4.一次性賦值表格中遍歷object獲取object中list類別,再遍歷list列表
/**繫結稽核資訊*/
function bingHeSet(data){
for(var j=0;j<data.length;j++){
var obj=data[j];
jQuery.each(obj, function(i, val) {
$('.tr'+obj.year+' .shenhe[name="'+i+'"]').val(val);
})
}