Научи ме

Програмиране => Java => Темата е започната от: Meniak в 04 Октомври 2014, 22:40:18

Титла: Метод в програмата с доста връзки към БД
Публикувано от: Meniak в 04 Октомври 2014, 22:40:18
Здравейте. В програмата дето пиша ми се налага да създам метод който има доста връзки към различни таблици от базата данни.
Не мога да ползвам Join защото връзките са Select Update Insert Delete всяка е различна а и държи различна информацията.

Пример натискам на бутончето "Продай" и метода проверява дали това което ще се продава го има с един Select, ако го има приспада продаденото от наличното с един Update и вкарва в друга таблица какво и колко е продадено.

Та на въпроса как ще е по добре всяка заявка в try-catch ли да слагам или примерно само първата (Select) и да направа една проверка ако това дето ще се продава го има да сложа другите връзки. Не знам дали ме разбирате, ако нещо ще дообясня.

И друго да знаете нещо дето мога да си оптимизирам кода, примерно да показва къде кода ми товари приложението за да намеря друг начин за изписване на кода или нещо подобно.
Титла: Re: Метод в програмата с доста връзки към БД
Публикувано от: Wanderer в 04 Октомври 2014, 22:55:10
Цитат
И друго да знаете нещо дето мога да си оптимизирам кода, примерно да показва къде кода ми товари приложението за да намеря друг начин за изписване на кода или нещо подобно.

Това което търсиш се казва profiler ->за еклипс може да си инсталираш jvmmonitor от маркетплейса.

Иначe не разбрах какво питаш.
Титла: Re: Метод в програмата с доста връзки към БД
Публикувано от: Avalanche в 04 Октомври 2014, 23:01:08
Странно го зададе тоя въпрос, но отговор е ясен. Това дето се чудиш се оправя с транзакции (transaction). Те ти позволяват да изпълниш един сет заявки на един път, като ако нещо стане има опцията да се върне в начално положение (rollback), както и commit за да приложиш промените. От предишните теми помня че ползваш Apache Derby, потърси в нета конкретната имплентация за транзакции с нея - не съм я разцъквал.
Титла: Re: Метод в програмата с доста връзки към БД
Публикувано от: Meniak в 04 Октомври 2014, 23:12:21
Не ползвам определена база данни в смисъл каквото ми скимне това ползвам - уча се като драскам код.

Мерси много ще потърся в нета какво са това транзакциите за да знам вече но все пак ако напиша кода както мислех да го пиша ще има ли проблем?

@Wanderer мерси много ще се разровя из нета за jvmmonitor щото ползвам NetBeans. С Еклипс не съм си имал вземане даване, тръгнах с NetBeans и до днес сам си с него.

Слято мнение: 05 Октомври 2014, 12:55:15
Ще се опитам да обясня с примерен код за да стане малко по ясно.
След като съм попълнил полетата и сам натиснал бутончето "Продай" се изпълнява метод.

try {
      String sql = "SELECT...........";
      if (rs.next()) {
          try {
                String sql = "UPDATE...........";
          } catch (Exception e) {
             System.out.println(e.getMessage());
          }

          try {
               String sql = "INSERT...........";
          } catch (Exception e) {
             System.out.println(e.getMessage());
          }
         
     }
} catch (SQLException e) {
   System.out.println(e.getMessage());
}

Този начин за писане на кода става ли за нещо? и може ли да се напише по добре и въобще какви са му плюсовете ако въобще има и минусите.