利用java发射 生产对象的sql插入语句
来源:互联网 发布:无人机pos数据怎么确定 编辑:程序博客网 时间:2024/06/05 05:29
import java.lang.reflect.Field;import java.lang.reflect.Method;/** * 这是用java反射来实现对对象的属性,方法,类名的取值。再组成一条万能的insert 语句。 * @author 小高 */public class Test2 {public static void main(String[] args) throws Exception {Test2 t=new Test2();Student stu=new Student(); //可以对任意对象操作stu.setName("小高");stu.setAge(20);stu.setId(11); String sql=t.createInsertSql(stu); System.out.println(sql);} private String createInsertSql(Object obj) throws Exception { Class cls=obj.getClass(); String sql="insert into "+cls.getSimpleName()+" ("; //类名 Field fields[]=cls.getDeclaredFields(); String columnName=""; //列名 String columnValue=""; //列值 Object objs[]=new Object[fields.length]; //多少个字段就多少个值 for (int i = 0; i < fields.length; i++) { String fieldName=fields[i].getName(); //获得字段String fieldMethodOfget=fieldName.substring(0, 1).toUpperCase()+fieldName.substring(1, fieldName.length());Method methodofget = cls.getMethod("get"+fieldMethodOfget, null);Object value=methodofget.invoke(obj, null); //字段的值if(value!=null){ //判断是否设置值columnName+=","+fieldName;if(value.getClass().getSimpleName().equals("String")){columnValue+=",'"+value+"'";}else{columnValue+=","+value;}}} columnName=columnName.substring(1, columnName.length()); sql+=columnName+") values ("; columnValue=columnValue.substring(1, columnValue.length()); sql+=columnValue +")"; return sql;}}输出的结果如图所示:
0 0
- 利用java发射 生产对象的sql插入语句
- 利用游标插入表的sql语句
- 利用游标循环进行更新插入的SQL事务语句
- 利用游标循环进行更新插入的SQL事务语句
- 学习笔记之SQl语句-插入对象的值
- 生产各种数据格式的sql语句
- SQL的插入语句insert
- Java的发射机制
- 利用SQL存储过程创建表的插入数据语句(用于到别处还原整张表)
- 利用UE简化JAVA后端的SQL语句编辑
- 经典的利用插入Asp数据库插入语句
- java 根据实体对象生成 增删改的SQL语句
- 一个SQL插入语句的例子
- SQL语句中插入单引号(')的方法
- 批量数据插入的SQL语句
- 产生插入,修改的SQL语句
- 一条简单的sql插入语句
- OCI插入SQL语句的写法
- 一、启动4个线程,在控制台中输出数字,保证数字是按照顺序递增,并且没有重复数字,每隔1秒输出一个数字。
- TCP协议三次握手过程分析
- OpenCV2马拉松第9圈——再谈对比度(对比度拉伸,直方图均衡化)
- 黑马程序员_求任意字符串及其所有子串的全排列
- 数列题解
- 利用java发射 生产对象的sql插入语句
- cocos2dx 3.0 final版本 mac 创建工程
- org.apache.log4j.Logger 详解
- sed命令的使用
- OCP-1Z0-051 第121题 NATURAL JOIN自然连接
- 寄人篱下,却也不卑不亢,为了自己心中的那点情愫付出无数痴心
- android Listview的getView和convertview原理解析(三)
- 为了报答侍者的灌溉,奉献出一生的眼泪
- myeclipse设置tomcat内存大小