【JDBC】常用操作

xiaoxiao2021-02-28  93

package jdbc; import domain.Server; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; /** * Created by Solitude on 2017-6-2. */ public class ServerJdbc { public static void main(String[] args){ //all(); //pageServer(1, 20); //getTotalCount(); //searchServers("inIp", "4.1"); orderByServer("inIp", "DESC"); } public static ArrayList<Server> getServers(ResultSet rs){ ArrayList<Server> servers = new ArrayList<>(); try { while (rs.next()){ Server server = new Server(); server.setId(rs.getInt("id")); server.setServerName(rs.getString("serverName")); server.setInIp(rs.getString("inIp")); server.setOutIp(rs.getString("outIp")); server.setUsage(rs.getString("usage")); server.setDepartment(rs.getString("department")); server.setContact(rs.getString("contact")); server.setComment(rs.getString("comment")); servers.add(server); System.out.println("server department : " + server.getInIp()); } } catch (SQLException e) { e.printStackTrace(); } return servers; } //查找所有信息 public static ArrayList<Server> all() { String sql = "SELECT * FROM `server`"; Connection conn = MyJDBC.getConn(); ArrayList<Server> servers =null; try { PreparedStatement ptst = conn.prepareStatement(sql); ResultSet rs = ptst.executeQuery(); servers = getServers(rs); } catch (SQLException e) { e.printStackTrace(); } return servers; } //查找单页信息 public static ArrayList<Server> pageServer(int pageNow, int pageSize) { String sql = "SELECT * FROM `server` LIMIT ?, ?"; Connection conn = MyJDBC.getConn(); ArrayList<Server> servers = null; try { PreparedStatement ptst = conn.prepareStatement(sql); ptst.setInt(1, (pageNow - 1) * pageSize); ptst.setInt(2, pageSize); ResultSet rs = ptst.executeQuery(); servers = ServerJdbc.getServers(rs); }catch (SQLException e){ e.printStackTrace(); } MyJDBC.close(conn); return servers; } //获得总数量String sql = "SELECT count(*) FROM server"; public static int getTotalCount(){ String sql = "SELECT count(*) FROM server"; Connection conn = MyJDBC.getConn(); int totalCount = 0; try { PreparedStatement ptst = conn.prepareStatement(sql); ResultSet rs = ptst.executeQuery(); //只有一行,存放总数 while (rs.next()){ totalCount = rs.getInt(1); } } catch (SQLException e) { e.printStackTrace(); } System.out.print(totalCount); return totalCount; } /** * 模糊查找给定字段 */ public static ArrayList<Server> searchServers(String choice, String searchChar){ String sql = "select * from server where `" + choice + "` like '%" + searchChar + "%'"; System.out.println(sql); Connection conn = MyJDBC.getConn(); ArrayList<Server> servers = null; try { PreparedStatement ptst = conn.prepareStatement(sql); ResultSet rs = ptst.executeQuery(); servers = getServers(rs); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return servers; } /** * 对某个字段进行升/降排序 * select from server order by inIp ASC; 升 * select from server order by inIp DESC; 降 */ public static ArrayList<Server> orderByServer(String choice, String ascOrDesc){ String sql = "select * from `server` order by " + choice + " " + ascOrDesc; //String sql = "SELECT * FROM `server` order by ? ?"; ArrayList<Server> servers = null; System.out.println(choice + " " + ascOrDesc); try { Connection conn = MyJDBC.getConn(); PreparedStatement ptst = conn.prepareStatement(sql); //ptst.setString(1, choice); //ptst.setString(2, ascOrDesc); ResultSet rs = ptst.executeQuery(); servers =getServers(rs); } catch (SQLException e) { e.printStackTrace(); } return servers; } }
转载请注明原文地址: https://www.6miu.com/read-73817.html

最新回复(0)