【Java】访问mysql数据库视图

数据库连接Connect:

package cn.hkwl.zaxq.mysql; 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
  
public class Connect { 
      
    String DBDRIVER="com.mysql.jdbc.Driver"; 
    String DBURL="jdbc:mysql://10.10.1.251:3306/dss?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=UTC&allowMultiQueries=true"; 
    String DBUSER="connect"; 
    String DBPWD="password"; 
    Connection conn=null; 
  
    public Connect(){ 
        try { 
            Class.forName(DBDRIVER); 
            conn=DriverManager.getConnection(DBURL,DBUSER,DBPWD); 
            //System.out.println("数据库连接成功"); 
        } catch (ClassNotFoundException e) { 
            // TODO: handle exception 
            e.printStackTrace(); 
        } catch (SQLException e) { 
            // TODO: handle exception 
            e.printStackTrace(); 
        } 
    } 
      
    public Connection getCon(){ 
        return conn; 
    } 
    
    public void closeCon(){ 
        try{ 
            conn.close(); 
        }catch(SQLException e){ 
            e.printStackTrace(); 
        } 
    } 
}

使用:

@RequestMapping("/getCHNStatus")
    public @ResponseBody void getCHNStatus(){
         Connect connect=new Connect(); 
         Connection connection=connect.getCon(); 
         PreparedStatement ps=null;
         ResultSet rs=null;
         ResultSetMetaData m=null;//获取 列信息
         try{
             String sql="select DEVICE_CODE,CHANNEL_NAME,OPEN_STATUS,CHANNEL_CODE from v_chn_status order by OPEN_STATUS";
             ps=connection.prepareStatement(sql); 
             rs=ps.executeQuery();
             m=rs.getMetaData();
             int columns=m.getColumnCount();
             JSONArray ja=new JSONArray();         
             while(rs.next()){
                 JSONObject jt=new JSONObject();
                 for(int i=1;i<=columns;i++)
                 {
                     switch(m.getColumnName(i)){
                         case "OPEN_STATUS":
                             switch(rs.getString(i)){
                                 case "1":jt.put(m.getColumnName(i), "开门");break;
                                 case "2":jt.put(m.getColumnName(i), "关门");break;
                                 case "3":jt.put(m.getColumnName(i), "常开");break;
                                 case "4":jt.put(m.getColumnName(i), "常闭");break;
                                 case "5":jt.put(m.getColumnName(i), "正常");break;
                             }
                             break;
                         default: jt.put(m.getColumnName(i), rs.getString(i));break;
                     }
                    
                 }
                 ja.add(jt);
             }        
             ps.close(); 
             connection.close(); 
             System.out.print(ja);
             JSONObject ot=new JSONObject();
             ot.put("success", true);
             ot.put("data", ja);
             outJson(ot);
         }catch(Exception e){
             outJsonFailure(e.toString());
             return;
         }
    }
原文地址:https://www.cnblogs.com/zwqh/p/8073609.html