Guest User

Untitled

a guest
Sep 6th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 17.24 KB | None | 0 0
  1. import java.io.FileInputStream;
  2. import java.sql.Connection;
  3. import java.sql.DriverManager;
  4. import java.sql.PreparedStatement;
  5. import java.sql.ResultSet;
  6. import java.sql.Statement;
  7. import java.text.SimpleDateFormat;
  8. import java.util.*;
  9.  
  10. public class DB_Class
  11. {
  12.     private String MySQL_IP = null;
  13.     private String MySQL_PORT = null;
  14.     private String MySQL_DATABASE = null;
  15. //  private String MySQL_TABLE = null;
  16.     private String MySQL_USERNAME = null;
  17.     private String MySQL_PASSWORD = null;
  18.  
  19.     private Connection conn = null;
  20.  
  21.     private PreparedStatement Crawler_prestate = null;
  22.     private PreparedStatement newsdata_prestate = null;
  23.     private PreparedStatement crawlerlog_prestate = null;
  24.     private PreparedStatement parsed_prestate = null;
  25.  
  26.     public DB_Class()
  27.     {
  28.         getDBConfig();
  29.     }
  30.  
  31.     private void getDBConfig()
  32.     {
  33.         try
  34.         {
  35.             Properties props = new Properties();
  36.  
  37.             props.load(new FileInputStream("db_config.ini"));
  38.  
  39.             MySQL_IP = props.getProperty("MySQL_IP");
  40.             MySQL_PORT = props.getProperty("MySQL_PORT");
  41.             MySQL_DATABASE = props.getProperty("MySQL_DATABASE");
  42. //          MySQL_TABLE = props.getProperty("MySQL_TABLE");
  43.             MySQL_USERNAME = props.getProperty("MySQL_USERNAME");
  44.             MySQL_PASSWORD = props.getProperty("MySQL_PASSWORD");
  45.         }
  46.         catch(Exception e)
  47.         {
  48.             e.printStackTrace();
  49.         }
  50.     }
  51.  
  52.     public void conn_DB()
  53.     {
  54.         try
  55.         {
  56.             String driver = "com.mysql.jdbc.Driver";
  57.             String url = "jdbc:mysql://" + MySQL_IP + ":" + MySQL_PORT + "/" + MySQL_DATABASE + "?useUnicode=true&characterEncoding=UTF8";
  58.  
  59.             Class.forName(driver);
  60.             conn = DriverManager.getConnection(url, MySQL_USERNAME, MySQL_PASSWORD);
  61.         }
  62.         catch(Exception e)
  63.         {
  64.             e.printStackTrace();
  65.         }
  66.     }
  67.  
  68.     public void Server_Initail_URL_list()
  69.     {
  70.         try
  71.         {
  72.             String initail_sql = "UPDATE url_list SET crawler_id=?, crawler_ip=?, cost_time=?, update_time=?";
  73.  
  74.             PreparedStatement prestate = conn.prepareStatement(initail_sql);
  75.  
  76.             prestate.setString(1, null);
  77.             prestate.setString(2, null);
  78.             prestate.setString(3, null);
  79.             prestate.setString(4, null);
  80.  
  81.             prestate.executeUpdate();
  82.  
  83.             prestate.close();
  84.         }
  85.         catch(Exception e)
  86.         {
  87.             e.printStackTrace();
  88.         }
  89.     }
  90.  
  91.     public void Server_Initail_Cralwer_Status()
  92.     {
  93.         try
  94.         {
  95.             String initail_sql = "DELETE FROM crawler_status";
  96.  
  97.             PreparedStatement prestate = conn.prepareStatement(initail_sql);
  98.  
  99.             prestate.executeUpdate();
  100.  
  101.             prestate.close();
  102.         }
  103.         catch(Exception e)
  104.         {
  105.             e.printStackTrace();
  106.         }
  107.     }
  108.  
  109.     public HashMap<String, String> Server_Select_Crawl_URL(String crawler_ip)
  110.     {
  111.         HashMap<String, String> return_map = new HashMap<String, String>();
  112.  
  113.         try
  114.         {
  115.             String select_sql = "SELECT id, site_id, sitename, type, url FROM url_list WHERE site_id NOT IN (SELECT DISTINCT site_id FROM url_list WHERE crawler_ip=?) AND crawler_ip IS null ORDER BY update_time LIMIT 1";
  116.  
  117.             PreparedStatement prestate = conn.prepareStatement(select_sql);
  118.             prestate.setString(1, crawler_ip);
  119.  
  120.             ResultSet result = prestate.executeQuery();
  121.  
  122.             while(result.next())
  123.             {
  124.                 return_map.put("id", result.getString("id"));
  125.                 return_map.put("site_id", result.getString("site_id"));
  126.                 return_map.put("sitename", result.getString("sitename"));
  127.                 return_map.put("type", result.getString("type"));
  128.                 return_map.put("url", result.getString("url"));
  129.             }
  130.  
  131.             result.close();
  132.             prestate.close();
  133.         }
  134.         catch(Exception e)
  135.         {
  136.             e.printStackTrace();
  137.         }
  138.  
  139.         return return_map;
  140.     }
  141.  
  142.     public void Server_Register_Update_URL_List_CrawlerIP(
  143.             String id,
  144.             String crawler_ip,
  145.             String crawler_id)
  146.     {
  147.         try
  148.         {
  149.             String update_sql = "UPDATE url_list SET crawler_ip=?, crawler_id=? WHERE id=?";
  150.  
  151.             PreparedStatement prestate = conn.prepareStatement(update_sql);
  152.             prestate.setString(1, crawler_ip);
  153.             prestate.setString(2, crawler_id);
  154.             prestate.setString(3, id);
  155.  
  156.             prestate.executeUpdate();
  157.             prestate.close();
  158.         }
  159.         catch(Exception e)
  160.         {
  161.             e.printStackTrace();
  162.         }
  163.     }
  164.  
  165.     public void Server_Register_Update_Crawler_Status(
  166.             String crawler_id,
  167.             String crawler_ip,
  168.             String crawler_pid,
  169.             String url)
  170.     {
  171.         try
  172.         {
  173.             Calendar rightNow = Calendar.getInstance();
  174.             SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//存入DB的時間格式
  175.  
  176.             String check_sql = "SELECT count(*) check_sql FROM crawler_status WHERE crawler_id=?";
  177.             String insert_sql = "INSERT INTO crawler_status (crawler_id, crawler_ip, pid, url, last_update_time, status) VALUES(?, ?, ?, ?, ?, ?)";
  178.             String update_sql = "UPDATE crawler_status SET last_update_time=?, url=?, status=? WHERE crawler_id=?";
  179.  
  180.             PreparedStatement prestate = conn.prepareStatement(check_sql);
  181.             prestate.setString(1, crawler_id);
  182.  
  183.             ResultSet result = prestate.executeQuery();
  184.  
  185.             result.next();
  186.  
  187.             int check_string = result.getInt("check_sql");
  188.  
  189.             if(check_string == 0)
  190.             {
  191.                 prestate = conn.prepareStatement(insert_sql);
  192.  
  193.                 prestate.setString(1, crawler_id);
  194.                 prestate.setString(2, crawler_ip);
  195.                 prestate.setString(3, crawler_pid);
  196.                 prestate.setString(4, url);
  197.                 prestate.setString(5, fmt.format(rightNow.getTime()));
  198.                 prestate.setString(6, "green");
  199.             }
  200.             else
  201.             {
  202.                 prestate = conn.prepareStatement(update_sql);
  203.  
  204.                 prestate.setString(1, fmt.format(rightNow.getTime()));
  205.                 prestate.setString(2, url);
  206.                 prestate.setString(3, "green");
  207.                 prestate.setString(4, crawler_id);
  208.             }
  209.  
  210.             result.close();
  211.             prestate.executeUpdate();
  212.             prestate.close();
  213.         }
  214.         catch(Exception e)
  215.         {
  216.             e.printStackTrace();
  217.         }
  218.     }
  219.  
  220.     public void Server_Done_Update_URL_List_CrawlerIP(
  221.             String crawler_ip,
  222.             String crawler_id,
  223.             String cost_time)
  224.     {
  225.         try
  226.         {
  227.             Calendar rightNow = Calendar.getInstance();
  228.             SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//存入DB的時間格式
  229.  
  230.             String update_sql = "UPDATE url_list SET crawler_ip=?, crawler_id=?, cost_time=?, update_time=? WHERE crawler_id=?";
  231.  
  232.             PreparedStatement prestate = conn.prepareStatement(update_sql);
  233.             prestate.setString(1, null);
  234.             prestate.setString(2, null);
  235.             prestate.setString(3, cost_time);
  236.             prestate.setString(4, fmt.format(rightNow.getTime()));
  237.             prestate.setString(5, crawler_id);
  238.  
  239.             prestate.executeUpdate();
  240.             prestate.close();
  241.         }
  242.         catch(Exception e)
  243.         {
  244.             e.printStackTrace();
  245.         }
  246.     }
  247.  
  248.     public void Server_Update_Crawler_Status(String crawler_id)
  249.     {
  250.         try
  251.         {
  252.             Calendar rightNow = Calendar.getInstance();
  253.             SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//存入DB的時間格式
  254.  
  255.             String update_sql = "UPDATE crawler_status SET last_update_time=? WHERE crawler_id=?";
  256.  
  257.             PreparedStatement prestate = conn.prepareStatement(update_sql);
  258.             prestate.setString(1, fmt.format(rightNow.getTime()));
  259.             prestate.setString(2, crawler_id);
  260.  
  261.             prestate.executeUpdate();
  262.             prestate.close();
  263.         }
  264.         catch(Exception e)
  265.         {
  266.             e.printStackTrace();
  267.         }
  268.     }
  269.  
  270.     public void Server_Check_Crawler_Status()
  271.     {
  272.         try
  273.         {
  274.             Calendar rightNow = Calendar.getInstance();
  275.             SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  276.  
  277.             rightNow.add(Calendar.HOUR_OF_DAY, -1);
  278.  
  279.             String check_sql = "UPDATE crawler_status SET status=? WHERE last_update_time<?";
  280.  
  281.             PreparedStatement prestate = conn.prepareStatement(check_sql);
  282.             prestate.setString(1, "red");
  283.             prestate.setString(2, fmt.format(rightNow.getTime()));
  284.  
  285.             prestate.executeUpdate();
  286.             prestate.close();
  287.         }
  288.         catch(Exception e)
  289.         {
  290.             e.printStackTrace();
  291.         }
  292.     }
  293.  
  294.     public void Server_Clear_Dead_Crawler()
  295.     {
  296.         try
  297.         {
  298.  
  299.             String delete_sql = "UPDATE url_list SET crawler_id=?, crawler_ip=? WHERE crawler_id IN (SELECT crawler_id FROM crawler_status WHERE status=?)";
  300.  
  301.             PreparedStatement prestate = conn.prepareStatement(delete_sql);
  302.             prestate.setString(1, null);
  303.             prestate.setString(2, null);
  304.             prestate.setString(3, "red");
  305.  
  306.             prestate.executeUpdate();
  307.             prestate.close();
  308.         }
  309.         catch(Exception e)
  310.         {
  311.             e.printStackTrace();
  312.         }
  313.     }
  314.  
  315.     public ResultSet Cawler_SelectURL_List(String site_id)
  316.     {
  317.         ResultSet result = null;
  318.         try
  319.         {
  320.             String check_sql = "SELECT url, sitename, type FROM url_list WHERE site_id=?";
  321.  
  322.             PreparedStatement prestate = conn.prepareStatement(check_sql);
  323.             prestate.setString(1, site_id);
  324.  
  325.             result = prestate.executeQuery();
  326.         }
  327.         catch(Exception e)
  328.         {
  329.             e.printStackTrace();
  330.         }
  331.         return result;
  332.     }
  333.  
  334.     public String Cawler_Check_Newsdata_HTML(String keyURL)
  335.     {
  336.         String check_string = "";
  337.         try
  338.         {
  339.             String check_sql = "";
  340.  
  341.             check_sql = "SELECT count(*) check_news FROM newsdata_html WHERE url='" + keyURL + "'";
  342.  
  343.             Statement stmt = conn.createStatement();
  344.             ResultSet result = stmt.executeQuery(check_sql);
  345.  
  346.             while(result.next())
  347.                 check_string = result.getString("check_news");
  348.  
  349.             result.close();
  350.             stmt.close();
  351.         }
  352.         catch(Exception e)
  353.         {
  354.             e.printStackTrace();
  355.         }
  356.         return check_string;
  357.     }
  358.  
  359.     public String Cawler_Check_Newsdata(String keyURL)
  360.     {
  361.         String check_string = "";
  362.         try
  363.         {
  364.             String check_sql = "";
  365.  
  366.             check_sql = "SELECT count(*) check_news FROM newsdata WHERE url='" + keyURL + "'";
  367.  
  368.             Statement stmt = conn.createStatement();
  369.             ResultSet result = stmt.executeQuery(check_sql);
  370.  
  371.             while(result.next())
  372.                 check_string = result.getString("check_news");
  373.  
  374.             result.close();
  375.             stmt.close();
  376.         }
  377.         catch(Exception e)
  378.         {
  379.             e.printStackTrace();
  380.         }
  381.         return check_string;
  382.     }
  383.  
  384.     public void Crawler_SetUpdate_preStmt()
  385.     {
  386.         try
  387.         {
  388.             String update_newsdata_html_sql = "INSERT INTO newsdata_html (site_id, parsed, url, sitename, title, author, type, rawtime, html) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?)";
  389.  
  390.             Crawler_prestate = conn.prepareStatement(update_newsdata_html_sql);
  391.         }
  392.         catch(Exception e)
  393.         {
  394.             e.printStackTrace();
  395.         }
  396.     }
  397.  
  398.     public void Crawler_AddBatch(String site_id, Page_Element PE)
  399.     {
  400.         try
  401.         {
  402.             if(Cawler_Check_Newsdata_HTML(PE.getURL()).equals("0") && Cawler_Check_Newsdata(PE.getURL()).equals("0"))//再次判斷
  403.             {
  404.                 Crawler_prestate.setString(1, site_id);
  405.                 Crawler_prestate.setString(2, "No");
  406.                 Crawler_prestate.setString(3, PE.getURL());
  407.                 Crawler_prestate.setString(4, PE.getSitename());
  408.                 Crawler_prestate.setString(5, PE.getTitle());
  409.                 Crawler_prestate.setString(6, PE.getAuthor());
  410.                 Crawler_prestate.setString(7, PE.getType());
  411.                 Crawler_prestate.setString(8, PE.getRawTime());
  412.                 Crawler_prestate.setString(9, PE.getHTML());
  413.                
  414.                 Crawler_prestate.addBatch();
  415.             }
  416.         }
  417.         catch(Exception e)
  418.         {
  419.             e.printStackTrace();
  420.         }
  421.     }
  422.  
  423.     public void Crawler_ExecuteBatch()
  424.     {
  425.         try
  426.         {
  427.             Crawler_prestate.executeBatch();
  428.  
  429.             Crawler_prestate.clearBatch();
  430.         }
  431.         catch(Exception e)
  432.         {
  433.             e.printStackTrace();
  434.         }
  435.     }
  436.  
  437.     public String Parser_Local_SelectLastID(String crawler_id)
  438.     {
  439.         String return_string = "0";
  440.         try
  441.         {
  442.             String select_sql = "SELECT id FROM newsdata_html WHERE site_id=? and parsed='No' order by id DESC limit 1";
  443.  
  444.             PreparedStatement prestate = conn.prepareStatement(select_sql);
  445.             prestate.setString(1, crawler_id);
  446.             ResultSet result = prestate.executeQuery();
  447.  
  448.             while(result.next())
  449.                 return_string = result.getString("id");
  450.  
  451.             prestate.close();
  452.         }
  453.         catch(Exception e)
  454.         {
  455.             e.printStackTrace();
  456.         }
  457.  
  458.         return return_string;
  459.     }
  460.  
  461.     public ResultSet Parser_Local_SelectHTML(String crawler_id, String html_id)
  462.     {
  463.         ResultSet result = null;
  464.         try
  465.         {
  466.             String select_sql = "SELECT * FROM newsdata_html WHERE site_id=? and id>? and parsed='No' limit 10000";
  467.  
  468.             PreparedStatement prestate = conn.prepareStatement(select_sql);
  469.             prestate.setString(1, crawler_id);
  470.             prestate.setString(2, html_id);
  471.  
  472.             result = prestate.executeQuery();
  473.         }
  474.         catch(Exception e)
  475.         {
  476.             e.printStackTrace();
  477.         }
  478.  
  479.         return result;
  480.     }
  481.  
  482.     public String Parser_Server_SelectLastID()
  483.     {
  484.         String return_string = "0";
  485.         try
  486.         {
  487.             String select_sql = "SELECT id FROM newsdata_html WHERE parsed='No' order by id DESC limit 1";
  488.  
  489.             PreparedStatement prestate = conn.prepareStatement(select_sql);
  490.  
  491.             ResultSet result = prestate.executeQuery();
  492.  
  493.             while(result.next())
  494.                 return_string = result.getString("id");
  495.  
  496.             prestate.close();
  497.         }
  498.         catch(Exception e)
  499.         {
  500.             e.printStackTrace();
  501.         }
  502.  
  503.         return return_string;
  504.     }
  505.  
  506.     public ResultSet Parser_Server_SelectHTML(String html_id)
  507.     {
  508.         ResultSet result = null;
  509.         try
  510.         {
  511.             String select_sql = "SELECT * FROM newsdata_html WHERE id>? and parsed='No' limit 10000";
  512. //          String select_sql = "SELECT * FROM newsdata_html WHERE id>? limit 10000";
  513.  
  514.             PreparedStatement prestate = conn.prepareStatement(select_sql);
  515.             prestate.setString(1, html_id);
  516.  
  517.             result = prestate.executeQuery();
  518.         }
  519.         catch(Exception e)
  520.         {
  521.             e.printStackTrace();
  522.         }
  523.  
  524.         return result;
  525.     }
  526.  
  527.     public String Parser_CheckNews(String keyURL)
  528.     {
  529.         String check_string = "";
  530.         try
  531.         {
  532.             String check_sql = "";
  533.  
  534.             check_sql = "SELECT count(*) check_news FROM newsdata WHERE url=?";
  535.  
  536.             PreparedStatement prestate = conn.prepareStatement(check_sql);
  537.             prestate.setString(1, keyURL);
  538.  
  539.             ResultSet result = prestate.executeQuery();
  540.  
  541.             while(result.next())
  542.                 check_string = result.getString("check_news");
  543.  
  544.             result.close();
  545.             prestate.close();
  546.         }
  547.         catch(Exception e)
  548.         {
  549.             e.printStackTrace();
  550.         }
  551.         return check_string;
  552.     }
  553.  
  554.     public void Parser_SetUpdate_preStmt()
  555.     {
  556.         try
  557.         {
  558.             String update_newsdata_sql = "INSERT INTO newsdata (url, title, time, rawtime, content, sitename, author, crawltime, type, html) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
  559.             String update_crawler_lost_log_sql = "INSERT INTO crawler_lost_log (sitename, url, time, lost, black_list) VALUES(?, ?, ?, ?, ?)";
  560.             String parsed_sql = "UPDATE newsdata_html SET parsed='Yes' WHERE id=?";
  561.  
  562.             newsdata_prestate = conn.prepareStatement(update_newsdata_sql);
  563.             crawlerlog_prestate = conn.prepareStatement(update_crawler_lost_log_sql);
  564.             parsed_prestate = conn.prepareStatement(parsed_sql);
  565.         }
  566.         catch(Exception e)
  567.         {
  568.             e.printStackTrace();
  569.         }
  570.     }
  571.  
  572.     public void Parser_AddBatch(Page_Element PE, Get_Crawl_Pattern GCP, Time_Process_Class TPC)
  573.     {
  574.         try
  575.         {
  576.             if(Parser_CheckNews(PE.getURL()).equals("0"))//再次判斷
  577.             {
  578.                 StringBuilder sb = new StringBuilder();
  579.  
  580.                 newsdata_prestate.setString(1, PE.getURL());
  581.                 newsdata_prestate.setString(2, PE.getTitle());
  582.  
  583.                 if(PE.getTime() == null)
  584.                     newsdata_prestate.setString(3, PE.getCrawlTime());
  585.                 else
  586.                     newsdata_prestate.setString(3, TPC.time(PE.getTime(), GCP.getTimeZone()));
  587.  
  588.                 newsdata_prestate.setString(4, PE.getRawTime());
  589.                 newsdata_prestate.setString(5, PE.getContent());
  590.                 newsdata_prestate.setString(6, PE.getSitename());
  591.  
  592.                 if(PE.getAuthor() == null)
  593.                     newsdata_prestate.setString(7, PE.getSitename());
  594.                 else
  595.                     newsdata_prestate.setString(7, PE.getAuthor());
  596.  
  597.                 newsdata_prestate.setString(8, PE.getCrawlTime());
  598.                 newsdata_prestate.setString(9, PE.getType());
  599.                 newsdata_prestate.setString(10, PE.getHTML());
  600.  
  601.                 newsdata_prestate.addBatch();
  602.  
  603.                 if(PE.getTitle() == null)
  604.                     sb.append("title ");
  605.  
  606.                 if(PE.getRawTime() == null)
  607.                     sb.append("time ");
  608.  
  609.                 if(PE.getContent() == null)
  610.                     sb.append("content ");
  611.  
  612.                 if(PE.getAuthor() == null)
  613.                     sb.append("author ");
  614.  
  615.                 if(PE.getType() == null)
  616.                     sb.append("type ");
  617.  
  618.                 if(sb.length() > 0)
  619.                 {
  620.                     String check_lostLog = Check_LostLog(PE.getURL());
  621.  
  622.                     if(check_lostLog.equals("0"))
  623.                     {
  624.                         crawlerlog_prestate.setString(1, PE.getSitename());
  625.                         crawlerlog_prestate.setString(2, PE.getURL());
  626.                         crawlerlog_prestate.setString(3, PE.getCrawlTime());
  627.                         crawlerlog_prestate.setString(4, sb.toString());
  628.                         crawlerlog_prestate.setString(5, "0");
  629.  
  630.                         crawlerlog_prestate.addBatch();
  631.                     }
  632.                 }
  633.  
  634.                 parsed_prestate.setString(1, PE.getID());
  635.                 parsed_prestate.addBatch();
  636.             }
  637.         }
  638.         catch(Exception e)
  639.         {
  640.             e.printStackTrace();
  641.         }
  642.     }
  643.  
  644.     public void Parser_ExecuteBatch()
  645.     {
  646.         try
  647.         {
  648.             newsdata_prestate.executeBatch();
  649.             crawlerlog_prestate.executeBatch();
  650.             parsed_prestate.executeBatch();
  651.  
  652.             newsdata_prestate.clearBatch();
  653.             crawlerlog_prestate.clearBatch();
  654.             parsed_prestate.clearBatch();
  655.         }
  656.         catch(Exception e)
  657.         {
  658.             e.printStackTrace();
  659.         }
  660.     }
  661.  
  662.     public String Check_LostLog(String URL)
  663.     {
  664.         String check_string = "";
  665.  
  666.         try
  667.         {
  668.             String check_sql = "SELECT count(*) check_lost FROM crawler_lost_log WHERE url='" + URL + "'";
  669.  
  670.             Statement stmt = conn.createStatement();
  671.             ResultSet result = stmt.executeQuery(check_sql);
  672.  
  673.             while(result.next())
  674.                 check_string = result.getString("check_lost");
  675.  
  676.             result.close();
  677.             stmt.close();
  678.         }
  679.         catch(Exception e)
  680.         {
  681.             e.printStackTrace();
  682.         }
  683.  
  684.         return check_string;
  685.     }
  686.  
  687.     public ResultSet getCrawl_Pattern(String site_id)
  688.     {
  689.         ResultSet result = null;
  690.         try
  691.         {
  692.             String select_sql = "SELECT * FROM site_pattern WHERE site_id=?";
  693.  
  694.             PreparedStatement prestate = conn.prepareStatement(select_sql);
  695.             prestate.setString(1, site_id);
  696.  
  697.             result = prestate.executeQuery();
  698.         }
  699.         catch(Exception e)
  700.         {
  701.             e.printStackTrace();
  702.         }
  703.  
  704.         return result;
  705.     }
  706.  
  707.     public void close_DB()//
  708.     {
  709.         try
  710.         {
  711.             conn.close();
  712.         }
  713.         catch(Exception e)
  714.         {
  715.             e.printStackTrace();
  716.         }
  717.  
  718.     }
  719. }
Add Comment
Please, Sign In to add comment