一種新的編程思路(中):
難得糊塗編程法 GBDP (適用jsp(SUN企業級應用的首選)、asp等編程)
GBDP技術實現設想:(General Blackbox Dynamic Programming)
開發速度快、代碼量少、通用,數據庫表自動生成,記錄自動增加,
修改,刪除,系統設計工作量少,可以在需求不明確的情況下開工,
漸進式開發,擁有需求頻繁更改、代碼基本不動的自適應能力。特
別適合國內軟件亂序開發的國情
主要解決問題:
系統設計工作量大,需求更改影響大,項目交接困難,編程風格各
異,數據庫備份困難的問題
已經實現功能:
數據表自動生成,記錄自動增加,修改,刪除,自動文件上傳
注:發表後代碼//都變成了file:// , 請改正
一個復雜的實現范例:
ntGBDPScript.jsp(SUN企業級應用的首選) 自動記錄載入模塊 (“上”包含源代碼)
ntDB.java 數據庫存取模塊 (本文包含源代碼)
ntGBDPDefine.jsp(SUN企業級應用的首選)
ntGBDPUpload2-1.jsp(SUN企業級應用的首選) 自動數據分析處理模塊(“上”包含源代碼)
ntGBDPUpload2-2.jsp(SUN企業級應用的首選) 自動數據保存處理模塊(“上”包含源代碼)
-------------------------------------------------------
_jh_in.jsp(SUN企業級應用的首選) 錄入和修改頁面,涉及計算
<%-- 買入統計卡 --%>
<%@page contentType="text/html;charset=GBK" %>
<%@page import="java.lang.*,java.net.*,java.sql.*,java.text.*,java.util.*" %>
<%@page import="dba.ntDB" %>
<%@page session="true" %>
<%@page errorPage="error.jsp(SUN企業級應用的首選)"%>
<%@include file="ntGBDPDefine.jsp(SUN企業級應用的首選)" %>
<%
file://全局變量定義
globalTableName = "_jh_in";
parentKey = "買入外匯統計卡";
parentValue = "";
dbName = "myDB";
%>
<%@include file="ntGBDPUpload2-1.jsp(SUN企業級應用的首選)" %>
<% // check data
String errorString = "";
if( isPost && requestHt.get("numeric匯入金額").equals("") )
errorString = "請填寫匯入金額";
else if( isPost && requestHt.get("numeric牌價").equals("") )
errorString = "請填寫牌價";
String entpName = (String)requestHt.get("全稱");
String entpAccount = (String)requestHt.get("帳號");
if( entpName == null ) entpName = "";
if( entpAccount == null ) entpAccount = "";
int entpId = 0;
if( !entpName.equals("") || !entpAccount.equals("") )
{
nt.executeQuery(dbName,
"select pid from _jh where "+
" ( k=企業名稱 and v = "+ entpName.trim() +" )"+
" or ( k=帳號 and v = "+ entpAccount.trim() +" )"+
"");
if( nt.rowCount > 0 ){
entpId = Integer.parseInt( nt.data[0][0] );
requestHt.put("企業id",""+ entpId );