Advertisement
Guest User

Untitled

a guest
Mar 16th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.54 KB | None | 0 0
  1. /**
  2. *
  3. */
  4. package datDat;
  5.  
  6. import java.sql.Connection;
  7. import java.sql.DriverManager;
  8. import java.sql.PreparedStatement;
  9. import java.sql.ResultSet;
  10. import java.sql.Statement;
  11. import java.text.ParseException;
  12. import java.text.SimpleDateFormat;
  13. import java.util.ArrayList;
  14. import java.util.Date;
  15. import java.util.Scanner;
  16.  
  17. /**
  18. * @author TheDon
  19. *
  20. */
  21. class TreningsDagbok {
  22.  
  23. private static Connection conn;
  24.  
  25. public static void main(String[] args) {
  26. try {
  27. Class.forName("com.mysql.jdbc.Driver") ;
  28. conn = DriverManager.getConnection("jdbc:mysql://eu-cdbr-azure-north-e.cloudapp.net:3306/acsm_e7b7847c37ccbc3", "bef37d4269be9a", "08e59887");
  29.  
  30. char valg = ' ';
  31. System.out.println(
  32. "Velkommen! Trykk (T) for � lage treningsprogram, (R) for � legge til resultat eller (L) for � lage �velse. Trykk (Q) for � avslutte");
  33. Scanner input = new Scanner(System.in);
  34.  
  35. //while (valg != 'Q') {
  36. valg = input.nextLine().charAt(0);
  37.  
  38. switch (valg) {
  39. case 'T':
  40. nyTrening(input);
  41. break;
  42. case 'R':
  43. break;
  44.  
  45. case 'L':
  46. nyOvelse(input);
  47. break;
  48. }
  49. //}
  50. }
  51. catch(Exception e) {
  52. System.out.println(e.getMessage());
  53. }
  54.  
  55. // Secure always database close connection
  56. try {
  57. conn.close();
  58. System.out.println("Connection closed");
  59. }
  60. catch(Exception e) {
  61. System.out.println(e.getMessage());
  62. }
  63. }
  64.  
  65. private static void nyTrening(Scanner input) {
  66. try {
  67. Date datoObjekt = null;
  68.  
  69. while (datoObjekt == null) {
  70. System.out.println("Hvilket dato? (yyyy-mm-dd)");
  71. String dato = input.nextLine();
  72. datoObjekt = parseDate(dato);
  73. }
  74.  
  75. System.out.println("Hvor lenge trente du?");
  76. int varighet_min = Integer.parseInt(input.nextLine());
  77.  
  78. Trening trening = new Trening(datoObjekt.getTime(), varighet_min);
  79.  
  80. System.out.println(trening.dato);
  81.  
  82. String query = "INSERT INTO trening (dato, varighet_min) VALUES (?, ?);";
  83.  
  84. PreparedStatement preparedStmt = conn.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  85. preparedStmt.setLong (1, trening.dato);
  86. preparedStmt.setInt (2, trening.varighet_min);
  87.  
  88. preparedStmt.execute();
  89.  
  90. ResultSet generatedKeys = preparedStmt.getGeneratedKeys();
  91.  
  92. if (generatedKeys.next()) {
  93. trening.id_trening = generatedKeys.getInt(1);
  94. }
  95.  
  96. char valg = ' ';
  97. while (valg != 'u' && valg != 'i') {
  98. System.out.println("Var det utetrening (u) eller innetrening(i)?");
  99. valg = input.nextLine().charAt(0);
  100. if (valg == 'u') {
  101. uteTrening(trening.id_trening, input);
  102. } else if (valg == 'i') {
  103. inneTrening(trening.id_trening, input);
  104. } else {
  105. System.out.println("Skriv enten inn i eller u. ");
  106. }
  107. }
  108.  
  109. Statement st = conn.createStatement();
  110. String sql = ("SELECT * FROM ovelse ORDER BY id_ovelse ASC;");
  111.  
  112. ArrayList<Ovelse> ovelser = new ArrayList<Ovelse>();
  113. System.out.println("Alle øvelser:");
  114.  
  115. ResultSet rs = st.executeQuery(sql);
  116. while (rs.next()) {
  117. int id_ovelse = rs.getInt(1);
  118. String navn = rs.getString(2);
  119. String beskrivelse = rs.getString(3);
  120.  
  121. Ovelse ovelse = new Ovelse(navn, beskrivelse);
  122. ovelse.id_ovelse = id_ovelse;
  123.  
  124. ovelser.add(ovelse);
  125.  
  126. System.out.println(Integer.toString(id_ovelse) + " - " + navn);
  127. System.out.println(" - " + beskrivelse);
  128. }
  129.  
  130. String ovelseValg = "";
  131. while (ovelseValg.equals("f")) {
  132. ovelseValg = input.nextLine();
  133.  
  134. try {
  135.  
  136. }
  137. catch(Exception e){
  138.  
  139. }
  140.  
  141. }
  142.  
  143.  
  144. }
  145. catch (Exception e) {
  146. System.out.println(e.getMessage());
  147. }
  148. }
  149.  
  150. private static void uteTrening(int id_trening, Scanner input) {
  151. try {
  152. System.out.println("Hvordan var været?");
  153. String ver = input.nextLine();
  154. System.out.println("Hvilken temperatur?");
  155. float temperatur = Float.parseFloat(input.nextLine());
  156. Utetrening utetrening = new Utetrening(id_trening, temperatur, ver);
  157.  
  158. String query = "INSERT INTO utetrening (id_trening, temperatur, ver_type) VALUES (?, ?, ?);";
  159.  
  160. PreparedStatement preparedStmt = conn.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  161. preparedStmt.setInt (1, id_trening);
  162. preparedStmt.setFloat (2, utetrening.temperatur);
  163. preparedStmt.setString(3, utetrening.vertype);
  164.  
  165. preparedStmt.execute();
  166. }
  167. catch (Exception e) {
  168. System.out.println(e.getMessage());
  169. }
  170. }
  171.  
  172. private static void inneTrening(int id_trening, Scanner input) {
  173. try {
  174. System.out.println("Beskriv luften");
  175. String luft = input.nextLine();
  176. System.out.println("Hvor mange tilskuere var det?");
  177. int antall_tilskuere = Integer.parseInt(input.nextLine());
  178. Innetrening innetrening = new Innetrening(id_trening, luft, antall_tilskuere);
  179.  
  180. String query = "INSERT INTO innetrening (id_trening, luft, antall_tilskuere) VALUES (?, ?, ?);";
  181.  
  182. PreparedStatement preparedStmt = conn.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  183. preparedStmt.setInt (1, id_trening);
  184. preparedStmt.setString (2, innetrening.luft);
  185. preparedStmt.setInt(3, innetrening.antall_tilskuere);
  186.  
  187. preparedStmt.execute();
  188.  
  189. }
  190. catch (Exception e) {
  191. System.out.println(e.getMessage());
  192. }
  193. }
  194.  
  195. private static void nyResultat (Scanner input){
  196.  
  197. Date datoObjekt = null;
  198.  
  199. while (datoObjekt == null) {
  200. System.out.println("Hvilken dato var treningen på? (yyyy-mm-dd)");
  201. String dato = input.nextLine();
  202. datoObjekt = parseDate(dato);
  203.  
  204. }
  205. // TODO: Hente treninger og øvelser til treninger på dato fra DB.
  206.  
  207. // TODO: Print treninger med øvelser. Velg trening.
  208.  
  209. // TODO: loop gjennom øvelsene og skriv inn resultat.
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216. }
  217.  
  218. private static void nyOvelse(Scanner input) {
  219. try {
  220. System.out.println("Hva heter øvelsen?");
  221. String navn = input.nextLine();
  222. System.out.println("Beskriv øvelsen");
  223. String beskrivelse = input.nextLine();
  224.  
  225. Ovelse ovelse = new Ovelse(navn, beskrivelse);
  226.  
  227. Statement stmt = conn.createStatement() ;
  228. String query = "INSERT INTO OVELSE (navn, beskrivelse) VALUES (?, ?);";
  229. PreparedStatement preparedStmt = conn.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  230. preparedStmt.setString (1, ovelse.navn);
  231. preparedStmt.setString (2, ovelse.beskrivelse);
  232.  
  233. preparedStmt.execute();
  234.  
  235. ResultSet generatedKeys = preparedStmt.getGeneratedKeys();
  236.  
  237. if (generatedKeys.next()) {
  238. ovelse.id_ovelse = generatedKeys.getInt(1);
  239. }
  240.  
  241. char valg = ' ';
  242. while (valg != 's' && valg != 'u') {
  243. System.out.println("Var det styrke/kondisøvelse (s) eller utholdenhetsøvelse(u)?");
  244. valg = input.nextLine().charAt(0);
  245. if (valg == 's') {
  246. nyStyrkeKondisOvelse(ovelse.id_ovelse, input);
  247. } else if (valg == 'u') {
  248. nyUtholdenhetsOvelse(ovelse.id_ovelse, input);
  249. } else {
  250. System.out.println("Skriv enten inn s eller u.");
  251. }
  252. }
  253. }
  254. catch (Exception e) {
  255. System.out.println(e.getMessage());
  256. }
  257. }
  258.  
  259. private static void nyStyrkeKondisOvelse(int id_ovelse, Scanner input) {
  260. try {
  261. System.out.println("Sett belastning");
  262. float belastning = Float.parseFloat(input.nextLine());
  263. System.out.println("Sett antall repitisjoner");
  264. int antall_repitisjoner = Integer.parseInt(input.nextLine());
  265. System.out.println("Antall sett?");
  266. int antall_sett = Integer.parseInt(input.nextLine());
  267.  
  268. StyrkeKondisOvelse styrkeKondisOvelse = new StyrkeKondisOvelse(id_ovelse, belastning, antall_repitisjoner,
  269. antall_sett);
  270.  
  271. Statement stmt = conn.createStatement() ;
  272. String query = "INSERT INTO styrkekondisovelse (id_ovelse, belastning, antall_repetisjoner, antall_sett) VALUES (?, ?, ?, ?);";
  273. PreparedStatement preparedStmt = conn.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  274. preparedStmt.setInt (1, styrkeKondisOvelse.id_ovelse);
  275. preparedStmt.setFloat (2, styrkeKondisOvelse.belastning);
  276. preparedStmt.setInt (3, styrkeKondisOvelse.antall_repitisjoner);
  277. preparedStmt.setInt (4, styrkeKondisOvelse.antall_sett);
  278.  
  279. preparedStmt.execute();
  280. }
  281. catch (Exception e) {
  282. System.out.println(e.getMessage());
  283. }
  284. }
  285. private static void nyUtholdenhetsOvelse(int id_ovelse, Scanner input){
  286. try {
  287. System.out.println("Hvor langt løp du?");
  288. int lengde_meter =Integer.parseInt(input.nextLine());
  289. System.out.println("Hvor lenge løp du?");
  290. int lengde_min =Integer.parseInt(input.nextLine());
  291.  
  292. UtholdenhetsOvelse utholdenhetsOvelse = new UtholdenhetsOvelse(id_ovelse, lengde_meter, lengde_min);
  293.  
  294. Statement stmt = conn.createStatement() ;
  295. String query = "INSERT INTO utholdenhetovelse (id_ovelse, lengde_meter, lengde_sek) VALUES (?, ?, ?);";
  296. PreparedStatement preparedStmt = conn.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
  297. preparedStmt.setInt (1, utholdenhetsOvelse.id_ovelse);
  298. preparedStmt.setInt (2, utholdenhetsOvelse.lengde_meter);
  299. preparedStmt.setInt (3, utholdenhetsOvelse.lengde_sek);
  300.  
  301. preparedStmt.execute();
  302. }
  303. catch (Exception e) {
  304. System.out.println(e.getMessage());
  305. }
  306. }
  307.  
  308. private static Date parseDate(String date) {
  309. try {
  310. return new SimpleDateFormat("yyyy-MM-dd").parse(date);
  311. } catch (ParseException e) {
  312. System.out.println("Feil datoformat, prøv igjen");
  313. return null;
  314. }
  315. }
  316.  
  317. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement