Spring JdbcTemplate实现通用的泛型dao一:主功能实现
Spring JdbcTemplate实现通用的泛型dao二:实现自己的名称转换NameHandler?
Spring JdbcTemplate实现通用的泛型dao三:构建动态sql
Spring JdbcTemplate实现通用的泛型dao四:通用自定义转换到JavaBean的RowMapper实现
构建动态sql,其实说白了就是拼装sql语句,在这里我把传入的实体参数,属性有值的拼装进sql,为null的则忽略,要实现这个不用说,肯定要利用Java的反射功能,来看一个具有代表性的insert语句的构建:
/** * 构建insert语句 * * @param entity 实体映射对象 * @param nameHandler 名称转换处理器 * @return */publicstaticSqlContext buildInsertSql(Object entity,NameHandler nameHandler){Class<?> clazz = entity.getClass();String tableName = nameHandler.getTableName(clazz.getSimpleName());String primaryName = nameHandler.getPrimaryName(clazz.getSimpleName());StringBuilder sql =newStringBuilder