純前端表格控制元件SpreadJS與Java結合,實現模板上傳和下載等功能
安裝部署:
開發環境:
-
後臺伺服器端採用 Java 、SpringMVC。
-
資料儲存到 \demo_web\WEB-INF\FileDatabase.txt 檔案中,不需要依賴DB。
-
採用 Eclipse Java EE IDE for Web Developers,Eclipse Version: Photon Release (4.8.0)。
-
伺服器:tomcat-7.0.90。
工程匯入eclipse:
demo_web.zip 是直接將 eclipse 工程打成的壓縮包。
您可直接解壓到 eclipse 的 workspace 下,匯入 Existing Projects into Workspace 工程即可。
部署方法:
配置 tomcat 與 eclipse 關聯,將工程 add 進 tomcat 應用列表,啟動 tomcat 即可。
操作步驟:
訪問:
在本機部署時,可以通過 http://127.0.0.1:8080/demo_web/view?path=index 訪問主頁。
建立模板:
-
建立模板分為三種模板型別:表單繫結、單元格繫結、表格繫結。
-
demo_web 壓縮包中還包含了三個模板 SSJSON 檔案:表單繫結示例、單元格繫結示例以及表格繫結示例,可供使用者進行建立模板的操作。
-
表單繫結預覽區域說明:如果選擇模板型別下拉選單,預覽區域會隨模板型別不同而發生變化,單元格繫結和表格繫結只有 ssjson 模板預覽一個區域。如圖:
圖1:建立表單繫結模板頁面
4.表單模板上傳成功後,預覽頁面的效果如下圖:
圖2:上傳表單繫結模板後的預覽效果
5.如果需要上傳單元格繫結模板或者表格繫結模板,需要先點選“型別” 下拉選單,選中對應型別後再執行上傳操作。
6.在上傳完模板並填寫完模板基本資訊後,點選儲存按鈕即可。
管理模板:
-
管理模板列表中展示了系統中已建立的模板資訊。
-
點選對應模板的下載按鈕,可以下載該模板的ssjson檔案,可以直接匯入至SpreadJS 設計器中進行修改。
-
點選對應模板的填報按鈕,可以進入表格填報頁面。
填報:
-
以表單繫結模板為例,如圖所示:
圖3:表單繫結模板填報頁面示例
2.新建:重新載入當前模板,不保留已經填寫的所有資料。
3.新行:為填報資料新增一個新行,對應繫結的dataSource多一個數據元素(單元格繫結模板無此按鈕)。
4.儲存:將填報資料儲存到後臺檔案中。
5.歷史:當前模板填報提交的歷史資料。
歷史資料列表:
如圖:點選檢視可以查詢本次填報的歷史資料。
圖4:填報歷史資料列表頁面
歷史資料:
如圖:
圖5:填報歷史資料頁面
QA:
Q:區域網無法訪問?
A:此Demo中採用的SpreadJS控制元件是未授權的,只能在本機操作。
Q:表單繫結模板,怎樣自定義繫結欄位?
A:您可以將表單繫結模板示例.ssjson匯入到設計器中檢視,表單繫結模板第一行是dataSource對應的欄位名,第二行為展示的欄位名,第三行為表格對應的樣式。
Q:單元格繫結模板,怎樣自定義繫結欄位?
A:您可以將單元格繫結模板示例.ssjson匯入到設計器中檢視,繫結dataSource對應的欄位名是以 [field] 的方式定義在對應的單元格中。
Q:表格繫結模板,怎樣自定義繫結欄位?
A:在表格模板中表頭下面的第一行中,可以 [field] 的方式定義列名,在程式碼中可以建立new GC.Spread.Sheets.Tables.TableColumn() 例項,用以對映列名與繫結欄位的關係,具體方法可以參考官網的學習指南中表格繫結的demo,demo地址:https://demo.grapecity.com.cn/SpreadJS/TutorialSample/#/demos/tableBinding
本demo中也採用了這個方法。
Q:表格填報時,新行的樣式與前面的行不匹配?
A:由於表格的模板設計樣式非常靈活多樣,因此本demo只採用了複製上一行樣式的方式對新行進行設定,具體應用當中可以根據需求自行設定表格樣式。
點選此處,免費下載 SpreadJS 結合 Java 使用的 Demo
關於葡萄城
賦能開發者!葡萄城公司成立於 1980 年,是全球領先的集開發工具、商業智慧解決方案、管理系統設計工具於一身的軟體和服務提供商。西安葡萄城是其在中國的分支機構,面向全球市場提供軟體研發服務,併為中國企業的資訊化提供國際先進的開發工具、軟體和研發諮詢服務。葡萄城的控制元件和軟體產品在國內外屢獲殊榮,在全球被數十萬家企業、學校和政府機構廣泛應用。