本源码内容如下:
- spring boot项目
- 用的druid连接池
- druid监控页面配置
- 数据操作用spring jdbctemplate
- 进一步封装spring jdbctemplate支持用对象进行增删改查
- 封装jdbctemplate的是单独一个项目,可以打包到任务项目中使用
详细介绍请查看
封装部分代码
publicT getByParams(Class entityClass, String[] params, Object... values) { String[] fieldNames = BeanUtils.getFieldNames(entityClass, ""); return doGetByParams(entityClass, fieldNames, params, values);}public T getByParams(Class entityClass, String[] fieldNames, String[] params, Object... values) { return doGetByParams(entityClass, fieldNames, params, values);}private T doGetByParams(Class entityClass, String[] fieldNames, String[] params, Object... values) { StringBuilder sql = getParamSql(entityClass, fieldNames, params, values); return get(entityClass, sql.toString(), values);}public List findByParams(Class entityClass, String[] params, Object... values) { String[] fieldNames = BeanUtils.getFieldNames(entityClass, ""); return doFindByParams(entityClass, fieldNames, params, values);}
使用部分代码
@Transactionalpublic void save() { Users u = new Users(); u.setMobile("13112021223"); //id自增不需要插入所以排除 cxytiandiJdbcTemplate.save(Users.class, u, "id");}@Transactionalpublic void updateUser(Users user) { //根据ID修改用户信息,只修改mobile字段 cxytiandiJdbcTemplate.updateByContainsFields(Users.class, user, "id", "mobile");}@Transactionalpublic void deleteUser() { cxytiandiJdbcTemplate.deleteByParams(Users.class, new String[]{"id", "mobile"}, 2, "13858521245");}public ListfindByParams() { return cxytiandiJdbcTemplate.findByParams(Users.class, new String[]{"mobile"}, "13985854512");}public long count() { return cxytiandiJdbcTemplate.count(Users.class);}public long count(String mobile) { return cxytiandiJdbcTemplate.count(Users.class, "mobile", mobile);}public List queryAllUsers() { return cxytiandiJdbcTemplate.list(Users.class);}public List getUsersByPage(int page, int limit) { PageQueryParam param = new PageQueryParam(page, limit); return cxytiandiJdbcTemplate.listForPage(Users.class, param.getStart(), param.getLimit());}