jsp实现后台提交编程代码自动生成器

2008-02-23 08:11:50来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

摘要:这篇文章主要针对有一定jsp编程经验和SQL语句基础的爱好者,文章主要探讨如何自动调用数据库的表内字段,自动生成相关字段后台代码的编程代码,说白了就是自动生成动态网站jsp代码的代码。

........................

一、序
前几天抽空,到哈尔滨今日图灵计算机学校听了一堂张老师讲的jsp课程,内容满有趣的,简单的整理了一下课堂笔记,帖出来和大家分享一下,由于是张老师的讲课内容(那可是人家的版权啊!),这里我就给大家看个骨头了,剩下的肉(阐述方法、思想)。相信会者自然会悟出来,不会的--呵呵,接着修炼吧!

二、引言
目前的软件并不是自动生成的,一行行代码也不是自动生成的。那么,为什么我们不努力于自动生成的软件?为什么不努力于创造能够自动生成原来需要手写的一行行代码呢?这里张老师为我们提供了这样一个思路。
1、你能列出你数据库内的表里的相关字段么?
2、既然能列出来,你能否有选择地将对应的字段swich()...case n:{}中呢?

三、程序实现代码

1、列出数据库中的所有表

try
{
DatabaseMetaData dbmd = conn.getMetaData();

// 指定所需 信息的列表
String[] types = {"TABLE"};
rs1 = dbmd.getTables(null, null, "%", types);

while (rs1.next())
{
String tableName = rs1.getString(3);
String tableCatalog = rs1.getString(1);
String tableSchema = rs1.getString(2);
out.println( tableName "<BR>");
}
}
catch (SQLException e)
{
}2、自动生成原来需要手写的jsp代码 <%
if (request.getParameter("tableName")!=null)
{
sql1="select * from " request.getParameter("tableName");
rs1=stmt1.executeQuery(sql1);
ResultSetMetaData rmt;
rmt = rs1.getMetaData() ;
int columnCount = rmt.getColumnCount() ;
out.println(columnCount "<br>");
%>
<FORM METHOD=POST ACTION="">
<table border="1">
<%
for(int i=2;i<=columnCount;i ) //从2开始 略过 编号值
{
%>
<tr>
<td><%=rmt.getColumnName(i).trim()%>:</td> //输出字段名
<td>
<%
switch( rmt.getColumnType(i) )
{
case 1://char
%>
<INPUT TYPE="text" NAME="<%=rmt.getColumnName(i).trim()%>"><BR>
<%
break;
case 4://int
if(rmt.getColumnName(i).trim().endsWith("_id") )
{
%>
<SELECT NAME="<%=rmt.getColumnName(i).trim()%>">
<option > aa</option>
</SELECT>
<%
}
else
{
%>
<INPUT TYPE="text" NAME="<%=rmt.getColumnName(i).trim()%>" onBlur="jiancha()"><BR>
<%
}
break;
case 12://vchar
%>
<textarea NAME="<%=rmt.getColumnName(i).trim()%>" cols="60" rows="6"></textarea>
<%
break;
}
%>
</td>
</tr>
<%
}
%>
<tr>
<td colspan="2">
<INPUT TYPE="submit" value="提交">
<INPUT TYPE="reset" value="重置">
</td>
</tr>
</FORM>
<%
}
%>

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:一个让98%的Java程序员犯难的偏门问题

下一篇:Eclipse Struts Hibernate的网络商店