1. 程式人生 > >springmvc+activiti 完美整合- 流程線上設計+程式碼生成器+UI快速開發庫,提高一半的開發效率

springmvc+activiti 完美整合- 流程線上設計+程式碼生成器+UI快速開發庫,提高一半的開發效率

JEECG(J2EE Code Generation) 是一款基於程式碼生成器的智慧開發平臺,採用程式碼生成+手工MERGE半智慧開發模式, 可以幫助解決Java專案60%的重複工作,讓開發更多關注業務邏輯。既能快速提高開發效率,幫助公司節省人力成本,同時又不失擴充套件性和靈活性。 
    JEECG宗旨是:簡單功能由程式碼生成器生成使用; 複雜業務採用表單自定義,業務流程使用工作流來實現、擴展出任務介面,供開發編寫業務邏輯。 實現了流程任務節點和任務介面的靈活配置,既保證了公司流程的保密行,又減少了開發人員的工作量。 

JEECG V3.0版本推翻原有SSH2架構,採用SpringMVC+Hibernate+UI快速開發庫 基礎架構,

採用面向宣告的開發模式,基於泛型方式編寫極少程式碼即可實現複雜的資料展示、資料編輯、表單處理等功能,再配合程式碼生成器的使用將JavaEE的開發效率提高6倍以上,可以將程式碼減少60%以上。 

  • JEECG V3.0版本四大技術點: 1.程式碼生成器 2.UI快速開發庫 3.線上流程設計 4.系統日誌記錄
  • 技術點一:程式碼生成器,支援多種資料模型,根據表生成對應的Entity,Service,Dao,Action,JSP等,增刪改查功能生成直接使用
  • 技術點二:UI快速開發庫,針對WEB UI進行標準封裝,頁面統一採用UI標籤實現功能:資料datagrid,表單校驗,Popup,Tab等,實現JSP頁面零JS,開發維護非常高效
  • 技術點三:線上流程定義,採用開源Activiti流程引擎,實現線上畫流程,自定義表單,表單掛接,業務流轉,流程監控,流程跟蹤,流程委託等


新版本特性: 

  • JEECG V3.0,經過了專業壓力測試,效能測試,保證後臺資料的準確性和頁面訪問速度
  • 支援多種瀏覽器: IE, 火狐, Google 等瀏覽器訪問速度都很快
  • 支援資料庫: Mysql,Oracle10g等
  • 基礎許可權: 使用者,角色,選單許可權,按鈕許可權,資料許可權
  • 智慧報表整合: 簡易的影象報表工具和Excel匯入匯出
  • Web容器測試通過的有Jetty和Tomcat6
  • 待推出功能:分散式部署,雲端計算,移動平臺開發,規則引擎,程式碼生成器(eclipse外掛)
  • 要求JDK1.6+

交流群:106259349, 106838471, 289782002 
郵箱:[email protected] 

專案演示: 



 



 

 

 

 

 

UI快速開發庫演示

[1].Datagrid列表頁面程式碼

Html程式碼 複製程式碼
  1. <%@ page language="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
  2. <%@include file="/context/mytags.jsp"%>
  3. <divclass="easyui-layout"fit="true">
  4. <divregion="center"style="padding:1px;">
  5. <t:dategridname="jeecgDemoList"title="開發DEMO列表"actionUrl="jeecgDemoController.do?datagrid"idField="id"fit="true">
  6. <t:dgColtitle="編號"field="id"hidden="false"></t:dgCol>
  7. <t:dgColtitle="使用者名稱"field="userName"query="true"></t:dgCol>
  8. <t:dgColtitle="電話號碼"sortable="false"field="mobilePhone"width="20"query="true"></t:dgCol>
  9. <t:dgColtitle="辦公電話"field="officePhone"></t:dgCol>
  10. <t:dgColtitle="郵箱"field="email"></t:dgCol>
  11. <t:dgColtitle="年齡"sortable="true"field="age"></t:dgCol>
  12. <t:dgColtitle="工資"field="sex"></t:dgCol>
  13. <t:dgColtitle="性別"field="salary"></t:dgCol>
  14. <t:dgColtitle="生日"field="birthday"formatter="yyyy/MM/dd"></t:dgCol>
  15. <t:dgColtitle="建立日期"field="createTime"formatter="yyyy-MM-dd hh:mm:ss"></t:dgCol>
  16. <t:dgColtitle="操作"field="opt"width="100"></t:dgCol>
  17. <t:dgFunOptfunname="szqm(id)"title="稽核"/>
  18. <t:dgDelOpttitle="刪除"url="jeecgDemoController.do?del&id={id}"/>
  19. <t:dgToolBartitle="錄入"icon="icon-add"></t:dgToolBar>
  20. <t:dgToolBartitle="編輯"icon="icon-edit"></t:dgToolBar>
  21. </t:dategrid>
  22. </div>
  23. </div>
  24. <scripttype="text/javascript">
  25.         function szqm(id) {   
  26.                 createwindow('稽核', 'jeecgDemoController.do?doCheck&id=' + id);   
  27.         }   
  28. </script>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<div class="easyui-layout" fit="true">
  <div region="center" style="padding:1px;">
  <t:dategrid name="jeecgDemoList" title="開發DEMO列表" actionUrl="jeecgDemoController.do?datagrid" idField="id" fit="true">
   <t:dgCol title="編號" field="id" hidden="false"></t:dgCol>
   <t:dgCol title="使用者名稱" field="userName" query="true"></t:dgCol>
   <t:dgCol title="電話號碼" sortable="false" field="mobilePhone" width="20" query="true"></t:dgCol>
   <t:dgCol title="辦公電話" field="officePhone"></t:dgCol>
   <t:dgCol title="郵箱" field="email"></t:dgCol>
   <t:dgCol title="年齡" sortable="true" field="age"></t:dgCol>
   <t:dgCol title="工資"  field="sex"></t:dgCol>
   <t:dgCol title="性別"  field="salary"></t:dgCol>
   <t:dgCol title="生日" field="birthday" formatter="yyyy/MM/dd"></t:dgCol>
   <t:dgCol title="建立日期" field="createTime" formatter="yyyy-MM-dd hh:mm:ss"></t:dgCol>
   <t:dgCol title="操作" field="opt" width="100"></t:dgCol>
   <t:dgFunOpt funname="szqm(id)" title="稽核" />
   <t:dgDelOpt title="刪除" url="jeecgDemoController.do?del&id={id}" />
   <t:dgToolBar title="錄入" icon="icon-add"></t:dgToolBar>
   <t:dgToolBar title="編輯" icon="icon-edit"></t:dgToolBar>
  </t:dategrid>
  </div>
  </div>
<script type="text/javascript">
        function szqm(id) {
                createwindow('稽核', 'jeecgDemoController.do?doCheck&id=' + id);
        }
</script>

[2],Form表單頁面程式碼

Java程式碼 複製程式碼
  1. <%@ page language="java"import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>   
  2. <%@include file="/context/mytags.jsp"%>   
  3. <!DOCTYPE html>   
  4. <html>   
  5. <head>   
  6.   <title>開發DEMO</title>   
  7.   <t:base type="jquery,easyui,tools"></t:base>   
  8. </head>   
  9. <body style="overflow-y: hidden" scroll="no">   
  10.   <t:formvalid formid="formobj" dialog="true" usePlugin="password" layout="table" action="jeecgDemoController.do?save">   
  11.                         <input id="id" name="id" type="hidden" value="${jgDemo.id }">   
  12.                         <table style="width: 600px;" cellpadding="0" cellspacing="1"class="formtable">   
  13.                                 <tr>   
  14.                                         <td align="right" width="15%" nowrap>   
  15.                                                 <label class="Validform_label">   
  16.                                                         使用者名稱:   
  17.                                                 </label>   
  18.                                         </td>   
  19.                                         <td class="value" width="85%">   
  20.                                                 <c:if test="${jgDemo.id!=null }">   
  21.                                              ${jgDemo.userName }   
  22.                                              </c:if>   
  23.                                                 <c:if test="${jgDemo.id==null }">   
  24.                                                         <input id="userName"class="inputxt" name="userName"
  25.                                                                 value="${jgDemo.userName }" datatype="s2-10">   
  26.                                                         <span class="Validform_checktip">使用者名稱範圍在2~10位字元</span>   
  27.                                                 </c:if>   
  28.                                         </td>   
  29.                                 </tr>   
  30.                                 <tr>   
  31.                                         <td align="right" nowrap>   
  32.                                                 <label class="Validform_label">   
  33.                                                         手機號碼:   
  34.                                                 </label>   
  35.                                         </td>   
  36.                                         <td class="value">   
  37.                                                 <input class="inputxt" name="mobilePhone"
  38.                                                         value="${jgDemo.mobilePhone}" datatype="m" errormsg="手機號碼不正確!"
  39.                                                         ignore="ignore">   
  40.                                                 <span class="Validform_checktip"></span>   
  41.                                         </td>   
  42.                                 </tr>   
  43.                                 <tr>   
  44.                                         <td align="right">   
  45.                                                 <label class="Validform_label">   
  46.                                                         辦公電話:   
  47.                                                 </label>   
  48.                                         </td>   
  49.                                         <td class="value">   
  50.                                                 <input class="inputxt" name="officePhone"
  51.                                                         value="${jgDemo.officePhone}" datatype="n"
  52.                                                         errormsg="辦公室電話不正確!" ignore="ignore">   
  53.                                                 <span class="Validform_checktip"></span>   
  54.                                         </td>   
  55.                                 </tr>   
  56.                                 <tr>   
  57.                                         <td align="right">   
  58.                                                 <label class="Validform_label">   
  59.                                                         常用郵箱:   
  60.                                                 </label>   
  61.                                         </td>   
  62.                                         <td class="value">   
  63.                                                 <input class="inputxt" name="email" value="${jgDemo.email}"
  64.                                                         datatype="e" errormsg="郵箱格式不正確!" ignore="ignore">   
  65.                                                 <span class="Validform_checktip"></span>   
  66.                                         </td>   
  67.                                 </tr>   
  68.                                 <tr>   
  69.                                         <td align="right">   
  70.                                                 <label class="Validform_label">   
  71.                                                         年齡:   
  72.                                                 </label>   
  73.                                         </td>   
  74.                                         <td class="value">   
  75.                                                 <input class="inputxt" name="age" value="${jgDemo.age}"
  76.                                                         datatype="n" errormsg="年齡格式不正確!" ignore="ignore">   
  77.                                                 <span class="Validform_checktip"></span>   
  78.                                         </td>   
  79.                                 </tr>   
  80.                                 <tr>   
  81.                                         <td align="right">   
  82.                                                 <label class="Validform_label">   
  83.                                                         工資:   
  84.                                                 </label>   
  85.                                         </td>   
  86.                                         <td class="value">   
  87.                                                 <input class="inputxt" name="salary" value="${jgDemo.salary}"
  88.                                                         datatype="d" errormsg="工資格式不正確!" ignore="ignore">   
  89.                                                 <span class="Validform_checktip"></span>   
  90.                                         </td>   
  91.                                 </tr>   
  92.                                 <tr>   
  93.                                         <td align="right">   
  94.                                                 <label class="Validform_label">   
  95.                                                         生日:   
  96.                                                 </label>   
  97.                                         </td>   
  98.                                         <td class="value">   
  99.                                                 <input name="birthday"class="easyui-datebox"
  100.                                                         value="<fmt:formatDate value='${jgDemo.birthday }' type="date"/>"
  101.                                                         errormsg="生日格式不正確!" ignore="ignore">   
  102.                                                 <span class="Validform_checktip"></span>   
  103.                                         </td>   
  104.                                 </tr>   
  105.                                 <tr>   
  106.                                         <td align="right">   
  107.                                                 <label class="Validform_label">   
  108.                                                         建立日期:   
  109.                                                 </label>   
  110.                                         </td>   
  111.                                         <td class="value">   
  112.                                                 <input name="createTime"class="easyui-datetimebox"
  113.                                                         value="${jgDemo.createTime}"
  114.                                                         errormsg="日期格式不正確!" ignore="ignore">   
  115.                                                 <span class="Validform_checktip"></span>   
  116.                                         </td>   
  117.                                 </tr>   
  118.                                 <tr>   
  119.                                         <td align="right">   
  120.                                                 <label class="Validform_label">   
  121.                                                         性別:   
  122.                                                 </label>   
  123.                                         </td>   
  124.                                          <td class="value">   
  125.                                           <t:comboBox url="jeecgDemoController.do?combox" name="sex" text="userName" id="id"></t:comboBox>   
  126.                                       <span class="Validform_checktip"></span>   
  127.                                      </td>   
  128.                                 </tr>   
  129.                                 <tr>   
  130.                              <td align="right">   
  131.                               <label class="Validform_label">   
  132.                                部門:   
  133.                               </label>   
  134.                              </td>   
  135.                              <td class="value">   
  136.                               <select id="depId"  name="depId"  datatype="*">   
  137.                                <c:forEach items="${departList}" var="depart">   
  138.                                 <option value="${depart.id }" <c:if test="${depart.id==jgDemo.depId}">selected="selected"</c:if>>   
  139.                                  ${depart.departname}   
  140.                                 </option>   
  141.                                </c:forEach>   
  142.                               </select>   
  143.                               <span class="Validform_checktip">請選擇部門</span>   
  144.                              </td>   
  145.                             </tr>   
  146.                         </table>   
  147.                 </t:formvalid>   
  148. </body>  
<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<!DOCTYPE html>
<html>
<head>
  <title>開發DEMO</title>
  <t:base type="jquery,easyui,tools"></t:base>
</head>
<body style="overflow-y: hidden" scroll="no">
  <t:formvalid formid="formobj" dialog="true" usePlugin="password" layout="table" action="jeecgDemoController.do?save">
                        <input id="id" name="id" type="hidden" value="${jgDemo.id }">
                        <table style="width: 600px;" cellpadding="0" cellspacing="1" class="formtable">
                                <tr>
                                        <td align="right" width="15%" nowrap>
                                                <label class="Validform_label">
                                                        使用者名稱:
                                                </label>
                                        </td>
                                        <td class="value" width="85%">
                                                <c:if test="${jgDemo.id!=null }">
                                             ${jgDemo.userName }
                                             </c:if>
                                                <c:if test="${jgDemo.id==null }">
                                                        <input id="userName" class="inputxt" name="userName"
                                                                value="${jgDemo.userName }" datatype="s2-10">
                                                        <span class="Validform_checktip">使用者名稱範圍在2~10位字元</span>
                                                </c:if>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right" nowrap>
                                                <label class="Validform_label">
                                                        手機號碼:
                                                </label>
                                        </td>
                                        <td class="value">
                                                <input class="inputxt" name="mobilePhone"
                                                        value="${jgDemo.mobilePhone}" datatype="m" errormsg="手機號碼不正確!"
                                                        ignore="ignore">
                                                <span class="Validform_checktip"></span>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right">
                                                <label class="Validform_label">
                                                        辦公電話:
                                                </label>
                                        </td>
                                        <td class="value">
                                                <input class="inputxt" name="officePhone"
                                                        value="${jgDemo.officePhone}" datatype="n"
                                                        errormsg="辦公室電話不正確!" ignore="ignore">
                                                <span class="Validform_checktip"></span>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right">
                                                <label class="Validform_label">
                                                        常用郵箱:
                                                </label>
                                        </td>
                                        <td class="value">
                                                <input class="inputxt" name="email" value="${jgDemo.email}"
                                                        datatype="e" errormsg="郵箱格式不正確!" ignore="ignore">
                                                <span class="Validform_checktip"></span>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right">
                                                <label class="Validform_label">
                                                        年齡:
                                                </label>
                                        </td>
                                        <td class="value">
                                                <input class="inputxt" name="age" value="${jgDemo.age}"
                                                        datatype="n" errormsg="年齡格式不正確!" ignore="ignore">
                                                <span class="Validform_checktip"></span>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right">
                                                <label class="Validform_label">
                                                        工資:
                                                </label>
                                        </td>
                                        <td class="value">
                                                <input class="inputxt" name="salary" value="${jgDemo.salary}"
                                                        datatype="d" errormsg="工資格式不正確!" ignore="ignore">
                                                <span class="Validform_checktip"></span>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right">
                                                <label class="Validform_label">
                                                        生日:
                                                </label>
                                        </td>
                                        <td class="value">
                                                <input name="birthday" class="easyui-datebox"
                                                        value="<fmt:formatDate value='${jgDemo.birthday }' type="date"/>"
                                                        errormsg="生日格式不正確!" ignore="ignore">
                                                <span class="Validform_checktip"></span>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right">
                                                <label class="Validform_label">
                                                        建立日期:
                                                </label>
                                        </td>
                                        <td class="value">
                                                <input name="createTime" class="easyui-datetimebox"
                                                        value="${jgDemo.createTime}"
                                                        errormsg="日期格式不正確!" ignore="ignore">
                                                <span class="Validform_checktip"></span>
                                        </td>
                                </tr>
                                <tr>
                                        <td align="right">
                                                <label class="Validform_label">
                                                        性別:
                                                </label>
                                        </td>
                                         <td class="value">
                                          <t:comboBox url="jeecgDemoController.do?combox" name="sex" text="userName" id="id"></t:comboBox>
                                      <span class="Validform_checktip"></span>
                                     </td>
                                </tr>
                                <tr>
                             <td align="right">
                              <label class="Validform_label">
                               部門:
                              </label>
                             </td>
                             <td class="value">
                              <select id="depId"  name="depId"  datatype="*">
                               <c:forEach items="${departList}" var="depart">
                                <option value="${depart.id }" <c:if test="${depart.id==jgDemo.depId}">selected="selected"</c:if>>
                                 ${depart.departname}
                                </option>
                               </c:forEach>
                              </select>
                              <span class="Validform_checktip">請選擇部門</span>
                             </td>
                            </tr>
                        </table>
                </t:formvalid>
</body>