Advertisement
Guest User

Untitled

a guest
Nov 29th, 2018
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.00 KB | None | 0 0
  1. // MAIN.java
  2.  
  3. import java.util.ArrayList;
  4. public class Main {
  5. public static void main(String[] args) {
  6.  
  7. // 1. Sukurti naują statybiniką ir išsaugoti duomenų bazėje
  8. Statybininkas statybininkas = new Statybininkas(5, "Mintautas", "Jurmalavičius",
  9. 1, "Akmentašys", "Dainava");
  10. StatybininkasDAO.insert(statybininkas);
  11.  
  12. // 2. Atlikti paiešką pagal pareigas
  13. ArrayList<Statybininkas> plytelčikai = StatybininkasDAO.searchByPareigos("Plytelčikas");
  14. System.out.println("Spausdinamas Array Listas: " + plytelčikai);
  15.  
  16. // 3. Galimybė redaguoti įrašą
  17. Statybininkas pirmasPlytelčikas = plytelčikai.get(0);
  18. System.out.println("PirmasPlytelčikas prieš update: " + pirmasPlytelčikas);
  19. pirmasPlytelčikas.setDarboviete("Kolūkis");
  20. StatybininkasDAO.update(pirmasPlytelčikas);
  21.  
  22. plytelčikai = StatybininkasDAO.searchByPareigos("Plytelčikas");
  23. pirmasPlytelčikas = plytelčikai.get(0);
  24. System.out.println("PirmasPlytelčikas po update: " + pirmasPlytelčikas);
  25.  
  26. // 4. Įrašo trynimas iš lentelės
  27. StatybininkasDAO.delete(5);
  28.  
  29. // 5. Metodas, kuris gražina statybinkų kiekį su tam tikru stažu
  30. System.out.println("Statybinikai su " + 5 + "metų stažu: " + StatybininkasDAO.statybininkuStazoMetai(3));
  31. }
  32. }
  33.  
  34. // Statybininkas.java
  35.  
  36. public class Statybininkas {
  37. private int id;
  38. private String vardas;
  39. private String pavarde;
  40. private int stazas;
  41. private String pareigos;
  42. private String darboviete;
  43.  
  44. //Reikalingas naudojant search, edit, delete bei naujo įrašo kūrimui
  45. public Statybininkas(int id, String vardas, String pavarde, int stazas, String pareigos, String darboviete) {
  46. this.id = id;
  47. this.vardas = vardas;
  48. this.pavarde = pavarde;
  49. this.stazas = stazas;
  50. this.pareigos = pareigos;
  51. this.darboviete = darboviete;
  52. }
  53.  
  54. // getteriai ir setteriai
  55. public int getId() {
  56. return id;
  57. }
  58.  
  59. public void setId(int id) {
  60. this.id = id;
  61. }
  62.  
  63. public String getVardas() {
  64. return vardas;
  65. }
  66.  
  67. public void setVardas(String vardas) {
  68. this.vardas = vardas;
  69. }
  70.  
  71. public String getPavarde() {
  72. return pavarde;
  73. }
  74.  
  75. public void setPavarde(String pavarde) {
  76. this.pavarde = pavarde;
  77. }
  78.  
  79. public int getStazas() {
  80. return stazas;
  81. }
  82.  
  83. public void setStazas(int stazas) {
  84. this.stazas = stazas;
  85. }
  86.  
  87. public String getPareigos() {
  88. return pareigos;
  89. }
  90.  
  91. public void setPareigos(String pareigos) {
  92. this.pareigos = pareigos;
  93. }
  94.  
  95. public String getDarboviete() {
  96. return darboviete;
  97. }
  98.  
  99. public void setDarboviete(String darboviete) {
  100. this.darboviete = darboviete;
  101. }
  102.  
  103. @Override
  104. public String toString() {
  105. return "Statybininkas {" +
  106. "id=" + id +
  107. ", vardas='" + vardas + '\'' +
  108. ", pavarde='" + pavarde + '\'' +
  109. ", stazas=" + stazas +
  110. ", pareigos='" + pareigos + '\'' +
  111. ", darboviete='" + darboviete + '\'' +
  112. '}';
  113. }
  114. }
  115.  
  116. // StatybininkasDAO.java
  117.  
  118. import java.sql.*;
  119. import java.util.ArrayList;
  120.  
  121. public class StatybininkasDAO {
  122. public static void insert(Statybininkas statybininkas) {
  123. String query = "INSERT INTO statybininkai (id, vardas, pavarde, stazas, pareigos, darboviete) VALUES (?,?,?,?,?,?)";
  124. String url = "jdbc:mysql://localhost:3306/darbenai?useUnicode=true&characterEncoding=UTF-8";
  125. try {
  126. Connection jungtis = DriverManager.getConnection(url, "root", "");
  127. PreparedStatement st = jungtis.prepareStatement(query);
  128. st.setInt(1, statybininkas.getId());
  129. st.setString(2, statybininkas.getVardas());
  130. st.setString(3, statybininkas.getPavarde());
  131. st.setInt(4, statybininkas.getStazas());
  132. st.setString(5, statybininkas.getPareigos());
  133. st.setString(6, statybininkas.getDarboviete());
  134. st.executeUpdate();
  135. st.close(); // uzdaroma prisijungimas prie db
  136. System.out.println("Duomenys įterpti sekmingai");
  137. } catch (SQLException e) {
  138. System.out.println("Klaida įterpiant duomenis");
  139. e.printStackTrace();
  140. }
  141. }
  142.  
  143. public static ArrayList<Statybininkas> searchByPareigos(String pareigos) {
  144. String query = "SELECT * FROM statybininkai WHERE pareigos = ? ORDER BY darboviete ASC";
  145. String url = "jdbc:mysql://localhost:3306/darbenai?useUnicode=true&characterEncoding=UTF-8";
  146. ArrayList<Statybininkas> statybinikai = new ArrayList<>();
  147. try {
  148. Connection jungtis = DriverManager.getConnection(url, "root", "");
  149. PreparedStatement st = jungtis.prepareStatement(query);
  150. st.setString(1, pareigos);
  151. ResultSet rezultatuRinkinys = st.executeQuery();
  152. while (rezultatuRinkinys.next()){
  153. statybinikai.add(new Statybininkas(
  154. // int id, String vardas, String pavarde, int stazas, String pareigos, String darboviete
  155. rezultatuRinkinys.getInt("id"),
  156. rezultatuRinkinys.getString("vardas"),
  157. rezultatuRinkinys.getString("pavarde"),
  158. rezultatuRinkinys.getInt("stazas"),
  159. rezultatuRinkinys.getString("pareigos"),
  160. rezultatuRinkinys.getString("darboviete")
  161. ));
  162. }
  163. st.close(); // uzdaroma prisijungimas prie db
  164. System.out.println("Paieska pagal pareigas ivykdyta sekmingai");
  165. } catch (SQLException e) {
  166. System.out.println("Paieska nesekminga");
  167. e.printStackTrace();
  168. }
  169. return statybinikai;
  170. }
  171.  
  172. public static void update(Statybininkas statybininkas) {
  173. // int id, String vardas, String pavarde, int stazas, String pareigos, String darboviete
  174. String query = "Update statybininkai SET id=?, vardas=?, pavarde=?, stazas=?, pareigos=?, darboviete=? WHERE id=?";
  175. String url = "jdbc:mysql://localhost:3306/darbenai?useUnicode=true&characterEncoding=UTF-8";
  176. try {
  177. Connection jungtis = DriverManager.getConnection(url, "root", "");
  178. PreparedStatement st = jungtis.prepareStatement(query);
  179. st.setInt(1, statybininkas.getId());
  180. st.setString(2, statybininkas.getVardas());
  181. st.setString(3, statybininkas.getPavarde());
  182. st.setInt(4, statybininkas.getStazas());
  183. st.setString(5, statybininkas.getPareigos());
  184. st.setString(6, statybininkas.getDarboviete());
  185. // WHERE sąlygos ID
  186. st.setInt(7, statybininkas.getId());
  187. st.executeUpdate();
  188. st.close(); // uzdaroma prisijungimas prie db
  189. System.out.println("Duomenys redaguoti sekmingai");
  190. } catch (SQLException e) {
  191. System.out.println("Duomenų redagavimas nepavyko");
  192. e.printStackTrace();
  193. }
  194. }
  195. public static void delete(int id) {
  196. String query = "DELETE FROM statybininkai WHERE id=?";
  197. String url = "jdbc:mysql://localhost:3306/darbenai?useUnicode=true&characterEncoding=UTF-8";
  198. try {
  199. Connection jungtis = DriverManager.getConnection(url, "root", "");
  200. PreparedStatement st = jungtis.prepareStatement(query);
  201. st.setInt(1, id);
  202. st.executeUpdate();
  203. st.close(); // uzdaroma prisijungimas prie db
  204. System.out.println("Duomenys ištrinti sėkmingai");
  205. } catch (SQLException e) {
  206. System.out.println("Duomenų ištrinti nepavyko");
  207. e.printStackTrace();
  208. }
  209. }
  210.  
  211. public static int statybininkuStazoMetai(int metai){
  212. String query = "SELECT COUNT(*) as statybininku_kiekis FROM statybininkai WHERE stazas = ?";
  213. String url = "jdbc:mysql://localhost:3306/darbenai?useUnicode=true&characterEncoding=UTF-8";
  214. int statybininku_kiekis = 0;
  215. try {
  216. Connection jungtis = DriverManager.getConnection(url, "root", "");
  217. PreparedStatement st = jungtis.prepareStatement(query);
  218. st.setInt(1, metai);
  219. ResultSet rezultatuRinkinys = st.executeQuery();
  220. if(rezultatuRinkinys.next())
  221. statybininku_kiekis = rezultatuRinkinys.getInt("statybininku_kiekis");
  222. else
  223. System.out.println("Statybininkų metų užklausa nepavyko");
  224. System.out.println("Statybininkų metų užklausa pavyko");
  225. } catch (SQLException e) {
  226. System.out.println("Statybininkų metų užklausa nepavyko");
  227. e.printStackTrace();
  228. }
  229. return statybininku_kiekis;
  230. }
  231. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement