Sql2oUtil

package cn.szhl.foreign.utils; import org.sql2o.Connection; import org.sql2o.Query; import org.sql2o.Sql2o; import java.util.List; import java.util.Map; public class Sql2oUtil {/* * 执行单条增,删,改操作 * sql: sql语句 * parameterM:sql参数 */ public static void execute(final String sql, Map parameterM) { Sql2o sql2o = new Sql2o(ConnPoolUtil.getDataSource()); try (Connection con = sql2o.open()) { Query query = con.createQuery(sql); if (parameterM != null && parameterM.size() > 0) { for (Map.Entry entry : parameterM.entrySet()) { query.addParameter(entry.getKey(), entry.getValue()); } } query.executeUpdate(); } }/* * 查询列表 * sql: sql语句 * zClass:映射的实体类 * return: List */ public static List queryList(final String sql, Class zClass) { Sql2o sql2o = new Sql2o(ConnPoolUtil.getDataSource()); try (Connection con = sql2o.open()) { Query query = con.createQuery(sql); return query.executeAndFetch(zClass); } }/* * 查询列表 * sql: sql语句 * parameterM:sql参数 * zClass:映射的实体类 * return: List */ public static List queryList(final String sql, Map parameterM, Class zClass) { Sql2o sql2o = new Sql2o(ConnPoolUtil.getDataSource()); try (Connection con = sql2o.open()) { Query query = con.createQuery(sql); if (parameterM != null && parameterM.size() > 0) { for (Map.Entry entry : parameterM.entrySet()) { query.addParameter(entry.getKey(), entry.getValue()); } } return query.executeAndFetch(zClass); } }/* * 查询单条 * sql: sql语句 * parameterM:sql参数 * zClass:映射的实体类 * return: T */ public static T query(final String sql, Map parameterM, Class zClass) { Sql2o sql2o = new Sql2o(ConnPoolUtil.getDataSource()); try (Connection con = sql2o.open()) { Query query = con.createQuery(sql); if (parameterM != null && parameterM.size() > 0) { for (Map.Entry entry : parameterM.entrySet()) { query.addParameter(entry.getKey(), entry.getValue()); } } return query.executeAndFetchFirst(zClass); } }/* * 查询第一行第一列 * sql: sql语句 * parameterM:sql参数 * return: 第一行第一列 */ public static Object executeScalar(final String sql, Map parameterM) { Sql2o sql2o = new Sql2o(ConnPoolUtil.getDataSource()); try (Connection con = sql2o.open()) { Query query = con.createQuery(sql); if (parameterM != null && parameterM.size() > 0) { for (Map.Entry entry : parameterM.entrySet()) { query.addParameter(entry.getKey(), entry.getValue()); } } return query.executeScalar(); } }/* * 查询第一行第一列 * sql: sql语句 * return: 第一行第一列 */ public static Object executeScalar(final String sql) { Sql2o sql2o = new Sql2o(ConnPoolUtil.getDataSource()); try (Connection con = sql2o.open()) { Query query = con.createQuery(sql); return query.executeScalar(); } } }

【Sql2oUtil】不过感觉坑太多了, 比如查询单条对象, 如果查不到值给直接返回空指针异常.....醉了

    推荐阅读