package com.ard.utils.jdbc; /** * @Description: * @ClassName: Query * @Author: 刘苏义 * @Date: 2023年09月19日13:01:28 **/ import com.ard.alarm.digitization.model.DataBridge; import lombok.extern.slf4j.Slf4j; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; @Slf4j(topic = "digitization3") public class Query { static Connection conn = null; static Statement st = null; static ResultSet rs = null; public static List getAlarmData(Date alarmTime, Integer rowNum) { List dataBridgeList = new ArrayList<>(); try { //1、获取连接对象 conn = Conn.getGc().getCon(); //2、创建statement类对象,用来执行SQL语句 st = conn.createStatement(); //3、创建sql查询语句 StringBuilder sbd = new StringBuilder(); String sql = "select * from (select * from DATABRIDGE order by DB_DATETIME desc ) where 1=1 "; sbd.append(sql); if (rowNum != null) { sbd.append(" and rownum <" + rowNum); } if (alarmTime != null) { SimpleDateFormat fmt = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); String Time = fmt.format(alarmTime); sbd.append(" and DB_DATETIME > to_date('" + Time + "','yyyy/mm/dd hh24:mi:ss')"); } //4、执行sql语句并且换回一个查询的结果集 rs = st.executeQuery(sbd.toString()); while (rs.next()) { //循环遍历结果集 DataBridge dataBridge = new DataBridge(); dataBridge.setId(rs.getString("DB_GUID")); dataBridge.setXmmc(rs.getString("DB_XMMC")); dataBridge.setFKey(rs.getString("DB_FKEY")); dataBridge.setFName(rs.getString("DB_FNAME")); dataBridge.setValue(rs.getString("DB_VALUE")); dataBridge.setDateTime(rs.getTimestamp("DB_DATETIME")); dataBridgeList.add(dataBridge); } return dataBridgeList; } catch (Exception e) { log.error("三厂数字化报警查询异常:" + e.getMessage()); return dataBridgeList; } finally { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }