Java , MySQL අවුලක්

dnet

Active member
  • Dec 14, 2010
    178
    80
    28
    Java වලින් හදපු Program එකකින් MySQL Database එකේ Table කිහිපයකින් දත්ත අරගෙන JTable එකකට දාන්න ඕන වෙලා තියනවා. හදපු Code එක Localhost එකේ කිසි අවුලක් නැතිව වැඩ. ඒත් Network එකේ තියන පරිගනකයකින් Program එක වැඩ කරාම Data එන්න සෑහ‍ෙන්න වෙලාවක් යනවනේ. තනි Table එකකින් දත්ත ගත්තෝත් තත්පර 2-3 කිනි Data load වෙනවා. Table කිහිපයකින් Data ගන්න ගියොත් තමයි Data එන්න වෙලා යන්නේ.

    Database එකට connect කරලා තියෙන්නේත් connection pool එකකින්.
     

    Boiya

    Active member
  • Aug 7, 2015
    282
    120
    43
    මොකද්ද යූස් කරපු ORM එක?
    Hibernate යූස් කලානම් රිලේෂනල් ටේබල් වලට දාලා තියෙන lazyloading ඔක්කොම false කරලා බලන්න.
    JDBC වලදි උනත් එක ටේබල් එකකින් ඩේටා ගද්දි අනිත් ටේබල් සේරමත් refer කරන්නෙ නැති විදියට configurations හදන්න.
     

    dnet

    Active member
  • Dec 14, 2010
    178
    80
    28
    මොකද්ද යූස් කරපු ORM එක?
    Hibernate යූස් කලානම් රිලේෂනල් ටේබල් වලට දාලා තියෙන lazyloading ඔක්කොම false කරලා බලන්න.
    JDBC වලදි උනත් එක ටේබල් එකකින් ඩේටා ගද්දි අනිත් ටේබල් සේරමත් refer කරන්නෙ නැති විදියට configurations හදන්න.

    JDBC පාවිච්චි කරේ
     

    dnet

    Active member
  • Dec 14, 2010
    178
    80
    28
    code එක දාපන් බලන්න


    මෙන්න මේ විදිහට තියෙන්නේ.

    Code:
    ArrayList<Server_Log> ar =Server_Log_Utilities.getBy2Dates(cmb_date.getSelectedItem() + "", cmb_date2.getSelectedItem() + "");
      for (int c = 0; c < ar.size(); c++) {
         Server_Log sl = ar.get(c);
    
         String username = User_Utilities.getUserName(sl.getUser() + "");
         String row[] = {sl.getDate(), sl.getTime(), username, sl.getReff(), sl.getDescription()};
     dtm.addRow(row);
       }


    Server_Log_Utilities.getBy2Dates() කියන method එක.


    Code:
     public static ArrayList getBy2Dates(String date1, String date2) {
    
            try {
                ar = new ArrayList<>();
                Connection con = new DBCon().getConnection();
                ResultSet rst = DBHandle.getData(con, "SELECT * FROM server_log WHERE date BETWEEN '" + date1 + "' AND '" + date2 + "' ORDER BY  `date`");
                while (rst.next()) {
                    Server_Log ci = new Server_Log();
                    ci.setId(rst.getInt(1));
                    ci.setDate(rst.getString(2));
                    ci.setTime(rst.getString(3));
                    ci.setReff(rst.getString(4));
                    ci.setDescription(rst.getString(5));
                    ci.setUser(rst.getInt(6));
                    ar.add(ci);
                }
                con.close();
    
            } catch (Exception ex) {
                Logger.getLogger(Student_Utilities.class.getName()).log(Level.SEVERE, null, ex);
    
            }
            return ar;
        }



    User_Utilities.getUserName(sl.getUser() + "") කියන method එක.

    Code:
    public static String getUserName(String id) {
    
            String UserName="";
            try {
    
               Connection con = new DBCon().getConnection();
                    ResultSet rst = DBHandle.getData(con, "SELECT username FROM user  WHERE id='" + id + "'");
                    while (rst.next()) {
                        UserName =rst.getString(1);
    
                    }
               con.close();
            } catch (Exception ex) {
                Logger.getLogger(User_Utilities.class.getName()).log(Level.SEVERE, null, ex);
    
            }
            return UserName;
        }
     
    Last edited: