public class MySession { /** * 用反射实现的查找 */ public Object find(Class clazz,Object id){ try { //通过反射获取clazz的类名 QueryRunner query = new QueryRunner(); String className = clazz.getName(); String[] split = className.split("\\."); String tableName = split[split.length - 1]; String sql = "select * from " + tableName + " where id=?"; //Object c = query.query(sql, new BeanHandler(clazz), new Object[] { id }); System.out.println(sql); return null; } catch (Exception e) { throw new RuntimeException(e); } } /* * 实现删除 */ public void delete(Class clazz,Object id){ try { QueryRunner runner = new QueryRunner(); String className = clazz.getName(); String[] split = className.split("\\."); String tableName = split[split.length - 1]; String sql = "delete from " + tableName + "where id=?"; //runner.update(sql, new Object[] { id }); } catch (Exception e) { } } /** * 实现增加 */ public void add(Class clazz){ //首先获得表名 QueryRunner runner = new QueryRunner(); String className = clazz.getName(); String[] split = className.split("\\."); String tableName = split[split.length - 1]; //通过反射获得字段 Field[] fields = clazz.getDeclaredFields(); StringBuilder sb = new StringBuilder("insert into "); sb.append(tableName+" ("); for(Field f:fields){ sb.append(f.getName()+","); } sb.deleteCharAt(sb.length()-1); sb.append(")"); sb.append(" values("); for(int i=0;i<fields.length;i++){ sb.append("?,"); } sb.deleteCharAt(sb.length()-1); sb.append(")"); String sql = sb.toString(); System.out.println("--------add---------\n"+sql); } /* * 修改同类增加 */