取数据集代码编辑器

import java.lang.reflect.Field;

/**
 *@desc  根据结果集获取其setVO的各个字符串str
 *        例如:类名xx.xx.xx.Testvo ,属性 name, 返回:TestVO.setName(StringUtil.nullToEmpty(rowSet.getString("name")));
 *@author xxx
 *@since 2014-9-29
 */
public class Str {
    public static void main(String[] args) {
        String classVOPackageName = "com.xxx.xxx.xxx.vo.TestVO";//类的全路径
        getVOFromRowSet(classVOPackageName);
    }

    /**
     *@desc 根据结果集获取其setVO的各个字符串str
     *@author xxx
     *@since 2014-9-29
     *@return void
     */
    public static void getVOFromRowSet(String classVOPackageName){
        String[] strs = getFieldArray(classVOPackageName);//获取属性array
        String classVOName = getMethodName(classVOPackageName.substring(classVOPackageName.lastIndexOf(".")+1));//获取纯类名
        for(String str: strs){
            sql2String(classVOName,str);
        }
    }

    /**
     *@desc 根据VO全类名获取属性的string数组
     *@author xxx
     *@since 2014-9-29
     *@param ClassVOPackageName VO全类名
     *@return String[] 属性的string数组
     */
    public static String[] getFieldArray(String ClassVOPackageName){
        String[] fieldsStr = null;
        try {
            Class<?> voCls = Class.forName(ClassVOPackageName);
            Field[] fields = voCls.getDeclaredFields();
            fieldsStr = new String[fields.length];
            int count = 0;
            for(Field field:fields){
                fieldsStr[count] = field.getName();
                count ++;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return fieldsStr;
    }

    /**
     *@desc 根据属性名称将其首字母大写
     *@author xxx
     *@since 2014-9-29
     *@param field 属性名称
     *@return String 该属性的get方法str
     */
    private static String getMethodName(String field){
        byte[] items = field.getBytes();
        if((char)items[0]>='A'&&(char)items[0]<='Z'){
            items[0] += 32;
        }else if((char)items[0]>='a'&&(char)items[0]<='z'){
            items[0] -= 32;
        }
        return new String(items);
    }

    /**
     *@desc 获取字各个属性的set字符串
     *@author xxx
     *@since 2014-9-29
     *@param vo
     *@param field
     *@return void
     */
    private static void sql2String(String vo,String field) {
        String str =vo+".set"+getMethodName(field)+"(StringUtil.nullToEmpty(rowSet.getString(\""+field+"\")));";
        System.out.println(str);
    }

}

时间: 2024-12-27 23:52:46

取数据集代码编辑器的相关文章

java代码编辑器 pdf文件预览 主流SSM 代码生成器 shrio redis websocket即时通讯

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码 B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块 C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势 D 集成安全权限框架shiro   Shiro 是一个用 Jav

集成代码编辑器ACE的经验

ACE是最流行的在线代码编辑器之一,在CanTK的集成开发环境GameBuilder里也使用了ACE.ACE的功能非常强大,但是由于使用方法不当,大家反映GameBuilder的代码编辑器不好用.最近花了点时间去完善它,这里把遇到的问题写出来,供有需要的朋友参考. 1.Linux下代码显示与输入不一致. Fedora下代码显示与输入不一致,水平方向上,输入位置是代码显示的一倍.这个问题困扰了我很久,它让代码编辑器根本没法使用.升级操作系统和ACE到最新版本,也无法解决这个问题,而且大部分使用AC

java代码编辑器 pdf文件预览 主流SSM 代码生成器 shrio redis websocke

 官网 http://www.fhadmin.org/A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势D 集成安全权限框

git 拉取远程代码

git 拉取远程代码 || 利用vscode编辑器自带了git,可在ctrl+~打开控制台拉取代码,非常好用哦~在实际项目开发过程中,往往是已经存在远程项目了,我们定义的需求是只需要简单的操作git,能够上传和下拉最新代码. 模拟小白需求: 第一步:拉取远程代码git clone https://github.com/…/PrettyGirls.git 第二步:查看本地分支和远程分支1.cd PrettyGirls 到工程目录下: 2.git branch -al 查看本地和远程的所有分支. 这

微软代码编辑器Visual Studio Code 1.35.0中文版

Visual Studio Code for Mac是微软旗下的一款代码编辑器,允许您使用大量编程语言,并集成调试和Git支持.Visual Studio Code可以帮助您能够在结构良好的环境中处理软件项目,该环境集成了基本代码编辑功能.而且可以为开发Node.js和ASP.NET应用程序提供支持,并提供超过30种编程语言的语法支持.在Visual Studio代码应用程序中,您可以选择打开单个文件,也可以链接Git存储库文件夹并访问所有相关文档.后一个选项更可取,因为您可以查看项目的结构并监

代码编辑器(一)-TSynCompletionProposal用法

注意,本系列均转载自http://blog.163.com/[email protected]/ 网上有人给我一个SynEdit这个东西,因为我很喜欢自己编个代码编辑器,但要是用Delphi直接弄的,就我现在这样,肯定弄不出来.还好的是,这里面有Demo,不过全是英文的... 回到正题,其实我在百度搜了这个的用法——没有满意的,所以我就在这里说一下. 如果Delphi能加载SynEdit之类的东西,很好,现在找到这个:SynEdit里面的TSynCompletionProposal. 因为我的程

Brackets - 强大免费的开源跨平台Web前端开发工具IDE (HTML/CSS/Javascript代码编辑器)

Brackets 是一个免费.开源且跨平台的 HTML/CSS/JavaScript 前端 WEB 集成开发环境 (IDE工具).该项目由 Adobe 创建和维护,根据MIT许可证发布,支持 Windows.Linux 以及 OS X 平台. Brackets 的特点是简约.优雅.快捷!它没有很多的视图或者面板,也没太多花哨的功能,它的核心目标是减少在开发过程中那些效率低下的重复性工作,例如浏览器刷新,修改元素的样式,搜索功能等等.和 Sublime Text.Everedit 等通用代码编辑器

CTE代码编辑器

CTE代码编辑器为一个16位代码编辑器,由本人一个人开发. 它现在只能运行在16位dos上面,可以在Windows系统或Linux系统上,找一个Dos模拟器,DosBox,Windows上的DosBox在本站有下载,大家可以在本站搜索,或者Du Father. 为什么没事要用这个小小的16位程序呢?WindowsXp.Windows7......就说,"Junk..."其实它是有用的. 我们在学8086汇编时,如果我们在XP系统中,是直接可以在cmd控制台中运行所编译的汇编程序的,因为

在线代码编辑器CodeMirror简介

1.什么是Code Mirror 最近做一个项目需要在网页上实现一个代码编辑器,支持语法高亮.自动缩进.智能提示等功能.发现Code Mirror刚好满足所有需求.Code Mirror是由js写的一款插件,其功能非常强大,用来实现网页端代码编辑器非常方便.如果想看效果图,可移步到这里----CodeOnline,这是我做的一个小项目,其中代码编辑器的就是用Code Mirror实现的. 2.使用Code Mirror 下面我将演示如何使用Code Mirror搭建一个简易的代码编辑器,并对其常