newxy的簡單之美
胡立新
(注:newxy新坐標是java web快速開發包,功能強大、易學,可使開發效率提高十倍、數十倍,newxy的WEB開發比delphi桌面開發更快,能力更強)
本想用“簡約”一詞,但“簡約”文了點,還是“簡單”好。
“簡單”如何與“美”掛起鉤來?簡單才能自由,自由才能產生美。
很多技術或框架之類一上來就叫你做很煩人的配置,而有的號稱零配置實際不得不寫幾十幾百行配置代碼。框架太多,但沒有哪個框架讓程序員不寫代碼實現數據的增、刪、改、查等最常用的功能。 newxy將絕大部分常見的、繁雜的、又不得不做的工作用最簡單的、通用的方法來解決,減輕程序員的負擔和痛苦。在用newxy開發過程中,一種美感油然而升。
一、newxy“配置簡單”之美
newxy只需幾行配置信息,而大多數情況不需寫一行配置信息,正真零配置。newxy為了美,為了自由,不扼殺程序員的天性。程序員有的愛寫后臺代碼,有的愛在jsp頁面上寫一些邏輯。對具有不同偏好的程序員,newxy會提供不同的“簡單”解決問題的辦法。
二、newxy“后臺代碼”之美
在后臺與數據庫打交道,實現數據的增、刪、改、查如此簡單:
1、增:
BaseDAO baseDao=new BaseDAO();
dynaDto dto=new DynaDto();
dto.set_table(“industry”); //設置表名
dto.set(“id”,id);
dto.set(“industry”,industry); //設置行業內容
baseDao.update(dto);
2、刪:
BaseDAO baseDao=new BaseDAO();
DynaDto dto=new DynaDto();
dto.set_table(“industry”); //設置表名
dto.set(“id”,id);
baseDao.remove(dto);
3、查:
BaseDAO baseDao=new BaseDAO();
String sql=”select * from industry where……”;
DynaFormBean formBean=(DynaFormBean)baseDao.findBySql(sql);
4、改:
修改第10條記錄的industry字段值:
BaseDAO baseDao=new BaseDAO();
DynaDto dto=new DynaDto(formBean.getDto(“10”));
dto.set_table(“industry”); //設置表名
dto.set(“industry”,newValue); //設置行業內容
baseDao.update(dto);
實體類是動態的、通用的,無需寫與數據庫表匹配的配置文件。如此簡單地解決問題,出自內心的不只是純然主觀的快感,還有我們解決現實問題直接明快的方式在內心深處的體驗。
三、newxy“前臺標簽”之美
在前臺實現數據的增、刪、改、查同樣簡單,不需寫一行java代碼。
1、 增:
<nlogic:action1 id="act1" formName="form1"/>
<nhtml:form action="" formName="form1">
<html:hidden property="_table" value="industry"/>
行業內容:<html:text property="industry"></html:text>
</nhtml:form>
<nhtml:button actionId="act1" method="update" value="保存"/>
輸入行業內容,點擊“保存”銨鈕,插入數據庫。
2、 刪:
<nlogic:action1 id="act1" formName="form1"/>
<nhtml:form action="" formName="form1">
<html:hidden property="_table" value="industry"/>
編號:<html:text property="id"></html:text>
</nhtml:form>
<nhtml:button actionId="act1" method="remove" value="刪除"/>
輸入編號,點擊“刪除”銨鈕,刪除記錄。
3、 查(任意姐合多項查詢):
<nlogic:action1 id="act1" formName="form1"/>
<nhtml:form action="" formName="form1">
<html:hidden property="_table" value="industry"/>
<html:hidden property="_item1" value="industry"/>
<html:select property="_item1">
<html:option value=""></html:option>
<html:option value="=">等于</html:option>
<html:option value="like">包含</html:option>
</html:select>
行業內容:<html:text property="_item1"></html:text>
</nhtml:form>
<nhtml:button actionId="act1" method="find" value="查詢"/>
選擇等于查詢或模糊查詢,輸入查詢內容,點擊查詢銨鈕,查詢結果保存在以“form1”為名的DynaFormBean類實例中,這個類實例保存在會話中。
4、 改:
<nlogic:action1 id="act1" formName="form1"/>
<nhtml:form action="" formName="form1">
<html:hidden property="_table" value="industry"/>
編號:<html:text property="id"></html:text>
行業內容:<html:text property="industry"></html:text>
</nhtml:form>
<nhtml:button actionId="act1" method="update" value="更新"/>
輸入編號及行業內容,點擊“更新”,如果id號不存在,作insert操作,否則作update操作。
在其它任一框架下數據的增、刪、改都要寫大量重復而又略有不同的代碼,寫代碼與調試絕不可少。在查詢數據時要想將用戶輸入的條件組合成sql語句,那是極其繁雜的,可能是程序員“苦”的較高形式。但在這里不寫一行java代碼,任意組合多項查詢。多么美妙。
程序員從痛苦的寫代碼、調試代碼工作中走出來,發現了自己存在,再次感受到newxy的簡單之美。
這里例出的僅是極小部分方法。
5、 數據分頁
<nlogic:navigate formName="industry" length="5"/>
<table cellspacing="0" class="table1">
<tr>
<td>序號</td><td align="center">編 碼</td><td align="center" style="BORDER-RIGHT: #ffffff 0px solid;">行 業 內 容</td>
</tr>
<nlogic:iterate id="rec" name="industry" property="_coll">
<nhtml:TR>
<td align="center">${index+1}</td>
<td width="50" nowrap="nowrap"><bean:write name="rec" property="code"/></td>
<td width="400" nowrap="nowrap" style="BORDER-RIGHT: #ffffff 0px solid;"><bean:write name="rec" property="industry"/></td>
</nhtml:TR>
</nlogic:iterate>
</table>
數據分頁同樣不寫一行java代碼。
6、 文件上傳
<nlogic:action1 id="act1" formName="fileForm"/>
<nhtml:form action="" formName="fileForm" enctype="multipart/form-data">
<html:hidden property="_table" value="filetable"/>
文件不大于10兆:<nhtml:file property="content" size="40" maxSize="10240" fileNameField="field1" fileExtendNameField="field2" fileSizeField="field3" fileTypeField="field4"/><br />
</nhtml:form>
<nhtml:button actionId="act1" method="update"/>
上傳大小限制在10兆,文件類容保存在content字段中,文件名保存在field1字段中,文件的擴張名保存在field2字段中,文件大小保存在field3字段中,文件類型保存在field4字段中。
理論上一次可以上傳無限數量的文件,不用寫一行java代碼。
簡單才是美,只有簡單你才有時間、才有閑情逸致欣賞美。
四、“Delphi風格”之美
Delphi開發桌面運用,它那快速精巧的方法,讓好多程序員如癡如醉。Newxy也可用幾個標簽實現具有delphi風格的開發。見下圖:

左上部是記錄集,下部是當前記錄詳細信息,右上部是當前記錄保存的一張圖片。用戶點擊某條記錄,下部的詳細信息和右上部的圖片隨著變化。
Delphi實現上述功能可以不寫一行代碼,newxy實現上述功能也不需要寫一行代碼。