栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

java 查询

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java 查询

public static void update(String sql, Object... args) {
Connection connection = null;
PreparedStatement preparedStatement = null;
try {
connection = getConnection();
preparedStatement = connection.prepareStatement(sql);
for (int i = 0; i < args.length; i++) {
preparedStatement.setObject(i + 1, args[i]);
}
preparedStatement.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
releaseDB(null, preparedStatement, connection);
}
}

// 查询一行记录
public  T getMessage(Class clazz, String sql, Object... args) {
    List result = getMessages(clazz, sql, args);
    if (result.size() > 0) {
 return result.get(0);
    }
    return null;
}

// 查询多行记录
public  List getMessages(Class clazz, String sql, Object... args) {
    List list = new ArrayList<>();
    Connection connection = null;
    PreparedStatement preparedStatement = null;
    ResultSet resultSet = null;
    try {
 connection = getConnection();
 preparedStatement = connection.prepareStatement(sql);
 for (int i = 0; i < args.length; i++) {
     preparedStatement.setObject(i + 1, args[i]);
 }
 resultSet = preparedStatement.executeQuery();

 List> values = resultSetToMapList(resultSet);// 调用下面的方法
 list = mapListToBeanList(clazz, values);// 调用下面的方法
    } catch (Exception e) {
 e.printStackTrace();
    } finally {
 releaseDB(resultSet, preparedStatement, connection);
    }
    return list;
}

public List> resultSetToMapList(ResultSet resultSet)
 throws SQLException {
    List> values = new ArrayList<>();
    Map map = null;
    List columnLabels = getColumnLabels(resultSet);
    while (resultSet.next()) {
 map = new HashMap<>();
 for (String columnLabel : columnLabels) {
     Object value = resultSet.getObject(columnLabel);
     map.put(columnLabel, value);
 }
 values.add(map);
    }
    return values;
}

private List getColumnLabels(ResultSet resultSet)
 throws SQLException {
    List labels = new ArrayList<>();
    ResultSetmetaData rsmd = resultSet.getmetaData();
    for (int i = 0; i < rsmd.getColumnCount(); i++) {
 labels.add(rsmd.getColumnLabel(i + 1));
    }
    return labels;
}

private  List mapListToBeanList(Class clazz,
 List> values) throws InstantiationException,
 IllegalAccessException, InvocationTargetException {
    List result = new ArrayList<>();
    T bean = null;
    if (values.size() > 0) {
 for (Map map : values) {
     bean = clazz.newInstance();
     for (Map.Entry entry : map.entrySet()) {
  String propertyName = entry.getKey();
  Object value = entry.getValue();
  BeanUtils.setProperty(bean, propertyName, value);
     }
     result.add(bean);
 }
    }
    return result;
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/233775.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号