后台提交的编程代码自动生成器 JSP的实现
发布时间:2023-05-23 14:04:25 所属栏目:教程 来源:
导读:摘要:这篇文章主要针对有一定jsp编程经验和sql语句基础的爱好者,文章主要探讨如何自动调用数据库的表内字段,自动生成相关字段后台代码的编程代码,说白了就是自动生成动态网站jsp代码的代码。
一、序
前几
一、序
前几
摘要:这篇文章主要针对有一定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> <% } %> (编辑:聊城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐