经常写程序的朋友都知道,页面的参数传递、insert语句、update语句,这里面其实很多代码都是重复的,即使ctrl-C ctrl-V,也要浪费不少时间,更痛苦的是,一个字母敲错,往往要花大半天去找这个bug。  :( 
    
于是我就想着自己开发个代码快速生成的功能,方便自己也方便同行们。
大家试试看能不能帮你点忙。
代码快手
有什么意见或者需要改进的地方,大家跟个帖说说。
觉得好的话帮作者点一下网站上公益广告条。大家都是程序员,忙到凌晨了,不容易啊!

解决方案 »

  1.   

    dobear_0922 
    do熊 
     发表于:2007-10-25 08:56:472楼 得分:0 
    从来不觉得敲代码是浪费时间,,, 
     
    ---------------------------------------------不停的重复敲代码就是浪费时间。
      

  2.   

    很久前写过 指定表(或选择表),生成表相关的代码, fill界面(含通用验证xml+js),insert操作, update操作, delete操作, list界面,search界面 的程序代码.不过是针对asp的.
    比如做个新闻系统,只用指定表名,代码都懒得写一句. 样式调调css就可以了.在那以后还写过, 界面上创建表(xml+js,不是写SQL语句),然后根具创建的表生成所选择的asp页面操作代码.
    比如写个新闻系统,从0开始,在界面上操作.在上个工作以后,又跟人合写了.net的layerbuilder. 做项目自己写业务逻辑层就是了.业务逻辑层里, 参数多的情况下:
    string name=Request["name"]==null?"":Request["name"].ToString();
    就复制这行,然后改变量名就是了,比用你那个快.
      

  3.   

    这里有过存储过程,可以根据表自动产生insert into 语句的:
    http://topic.csdn.net/u/20071023/21/997c7e68-6d8f-43c1-aa3c-0bccfb9293d0.html
    比你那个效率多多了
      

  4.   

    很久前写过 指定表(或选择表),生成表相关的代码, fill界面(含通用验证xml+js),insert操作, update操作, delete操作, list界面,search界面 的程序代码.不过是针对asp的. 
    比如做个新闻系统,只用指定表名,代码都懒得写一句. 样式调调css就可以了. 在那以后还写过, 界面上创建表(xml+js,不是写SQL语句),然后根具创建的表生成所选择的asp页面操作代码. 
    比如写个新闻系统,从0开始,在界面上操作. 在上个工作以后,又跟人合写了.net的layerbuilder. 做项目自己写业务逻辑层就是了. 业务逻辑层里, 参数多的情况下: 
    string name=Request["name"]==null?"":Request["name"].ToString(); 
    就复制这行,然后改变量名就是了,比用你那个快.------------------------
    我以前的公司也有类似的代码,,,
    很久前写过 指定表(或选择表),生成表相关的代码 --这个我懂
    fill界面 --我始终不太明白:数据是怎么填充到页面控件,又怎么从页面填充到数据集的,,,
      

  5.   

    fcuandy 
    说得没错,有些公司是有不少好的开发工具,可都是在内部自己人用的。
    你要是不怕违反公司纪律,不妨贴出来给大家免费用用。
    Internetroot 
    存储过程不错,不过有些数据库是不支持存储过程的。例如access
    还有些单位是不允许程序员自己顺便添加存储过程的。其实我做这个小程序原理很简单,简单到在php里面一个共用函数就能实现。
    但是,考虑到大家的通用性,还是做成了web方式。方便大家。
      

  6.   

    fill界面 --我始终不太明白:数据是怎么填充到页面控件,又怎么从页面填充到数据集的,,,fill界面主要指两个, 一是add时,当然就不需要填充.
    那就就是指 modify时的填充了.主要是因为我生成时命名有约定.
    比如建的表 tb(id int identity(1,1), name varchar(20),favorate varchar(100))
    那么生成表单代码时,会读 tb表结构, 然后根具字段类型,用不同的表单元素
    比如 varchar 那么会用input type=text
    bit 会用 radio,并且放两个
    tinyint 也会放 radio不过是三个,不可能放200多个上去, 也可能是select
    在生成表单前,会生成一个相关的xml的配置, 比如 favorage 这种varchar 默认为input type=hidden,有可选项为 checkbox. 如果选中为checkbox, 那么实际生成表单时,不光读 字段类型 ,还读xml配置,将它以 checkbox呈现.上面说了,用什么来说, 那放它的这个container 怎么约定呢? html表单元素命名的约定是
    txt_Name 即 若是 文本框就 txt_字段名
    sel_City 即 若是 下拉框就 sel_字段名
    ...在生成操作代码之前,都会选一些信息,除了上面所说的.
    比如表单填写页面, 哪些必填 ,这就决定了js怎么从xml配置来验证表单,也决定了生成的数据处理页面,要对Request参数中的哪些做什么样的检测
    list页面, 哪些字段呈现在列表中
    是针对asp的,写起来还算简单的..net的,如果数据填写和操作依照asp的方式来,也比较简单.但是意义不大
    但是希望生成的代码中生成.net控件,以.net控件来处理,这个难度太大了. 你在vs里自己不当的删除一个控件时,vs还报错说什么方法没定义,或什么控件没找到, 经常有这种事发生.
    所以,我们后来写的layerbuilder就没有做涉及界面上的事.
      

  7.   

    .net的,如果数据填写和操作依照asp的方式来,也比较简单.但是意义不大 
    但是希望生成的代码中生成.net控件,以.net控件来处理,这个难度太大了. 你在vs里自己不当的删除一个控件时,vs还报错说什么方法没定义,或什么控件没找到, 经常有这种事发生. 
    所以,我们后来写的layerbuilder就没有做涉及界面上的事.-------
    以前的公司,页面控件不是自动生成的,而是手动拖上去的,只要控件ID与数据库表中字段名相同,调用一个公用方法(类似Fill(TableName,Keyword)),就可以将指定记录的值填充到相应控件,调用另一个方法(类似Get(DateSet,TableName)),就可以将页面上的数据填充到DateSet。 
      

  8.   

    也是web版的?
    楼上能不能发个地址给我看看,我也学习学习
      

  9.   

    codesmith可以做到。http://www.cnblogs.com/strinkbug/archive/2006/12/01/578793.html
      

  10.   

    楼主思路不错,我改天自己写个javascript自己用,毕竟每次都要提交有点麻烦,特别是网络或者服务器慢的时候