package com.lyj.sql; import com.lyj.bean.SuperBean; /** * SQL生成器 * @author LYJ * */ public final class SQLBuilder { /** * 生成select 语句 * @param sbn * @return */ public final static String selectSQL(SuperBean sbn,String where){ final StringBuilder sqlBuilder=new StringBuilder("SELECT\t"); final String[]names=sbn.getAttNames(); for(String name:names){ sqlBuilder.append(name+"\t"); if(name!=names[names.length-1]) sqlBuilder.append(","); } sqlBuilder.append("FROM "+sbn.getTableName()); return sqlBuilder.toString(); } /** * 生成update 语句 * @param sbn bean 对象 * @return */ public final static String updateSQL(SuperBean sbn,String where){ if(where==null){ return ""; } final StringBuilder sqlBuilder=new StringBuilder("UPDATE\t"+getTableName(sbn)); sqlBuilder.append(" SET "+where); return sqlBuilder.toString(); } /** * 生成delete语句 * @param sbn * @param where where条件 * @return */ public static String deleteSQL(SuperBean sbn,String where){ final StringBuilder sqlBuilder=new StringBuilder("DELETE FROM "+getTableName(sbn)); sqlBuilder.append(where); return sqlBuilder.toString(); } /** * 生成insert 语句 * @param sbn * @return */ public final static String insertSQL(SuperBean sbn){ final StringBuilder sqlBuilder=new StringBuilder(" INSERT INTO "); sqlBuilder.append(sbn.getTableName()+"\t"); sqlBuilder.append("("); final String[]names=sbn.getAttNames(); /*********************插入的属性*****************************/ for(String name:names){ sqlBuilder.append(name); if(name!=names[names.length-1]) sqlBuilder.append(","); } sqlBuilder.append(")"); /*************插入的值**************************************/ sqlBuilder.append(" VALUES("); for(String name:names){ sqlBuilder.append('"'); try { sqlBuilder.append(sbn.getAttributeValue(name)==null?"":sbn.getAttributeValue(name).toString()); } catch (Exception e) { e.printStackTrace(); } sqlBuilder.append('"'); if(name!=names[names.length-1]) sqlBuilder.append(","); } sqlBuilder.append(")"); return sqlBuilder.toString(); } private static String getTableName(SuperBean sbn){ return sbn.getTableName(); } }
最近下载更多
skiler LV4
2023年6月6日
vicgong LV4
2022年5月23日
billzw LV6
2022年2月13日
dsafdsaf LV7
2021年12月29日
mugege123 LV6
2020年12月23日
dongxuan5831 LV1
2020年12月10日
lxd_admin LV3
2020年6月9日
cnflian LV2
2020年5月21日
wuyiqun LV2
2020年4月30日
事证明实汉语不顺序看 LV2
2020年4月8日
最近浏览更多
3320151533 LV1
1月7日
cuihongmin LV1
2023年6月16日
skiler LV4
2023年6月6日
zhuaidan
2023年2月10日
暂无贡献等级
微信网友_6258245891903488 LV7
2023年1月2日
uni-code_0123 LV1
2022年12月5日
ilovecode521 LV3
2022年12月4日
1726335210 LV2
2022年11月7日
梅梅呀 LV3
2022年7月11日
vicgong LV4
2022年5月23日