Advertisement
Guest User

Untitled

a guest
Feb 27th, 2016
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.20 KB | None | 0 0
  1. package com.jzheadley.rideshareu;
  2.  
  3. import android.util.Log;
  4.  
  5. import java.sql.Connection;
  6. import java.sql.Date;
  7. import java.sql.DriverManager;
  8. import java.sql.ResultSet;
  9. import java.sql.SQLException;
  10. import java.sql.Statement;
  11. import java.util.HashMap;
  12. import java.util.Set;
  13.  
  14. public abstract class Model {
  15. protected String table = null;
  16. private int id = 0;
  17. private Connection connection;
  18. private Statement statement;
  19.  
  20. protected HashMap<String, Object> columns;
  21.  
  22. protected Model(String tbl) {
  23. this.table = tbl;
  24. try {
  25. connection = (Connection) DriverManager.getConnection("jdbc:mysql://191.237.45.19/RideShare", "root", "asdf");
  26. Log.d("RideShareU","Database connected Successfully");
  27. } catch (SQLException e) {
  28. e.printStackTrace();
  29. }
  30. try {
  31. statement = connection.createStatement();
  32. } catch (SQLException e) {
  33. e.printStackTrace();
  34. }
  35. this.columns = new HashMap<>();
  36. }
  37.  
  38. public void setId(int i) {
  39. this.id = i;
  40. }
  41.  
  42. public int getId() {
  43. return this.id;
  44. }
  45.  
  46. protected Object getColumn(String label) {
  47. return this.columns.get(label);
  48. }
  49.  
  50. public int create() throws SQLException {
  51. String qstr = "INSERT INTO `" + table + "` (id) VALUES (null);";
  52. if (statement.execute(qstr))
  53. return sql_last_insert_id();
  54. return 0;
  55. }
  56.  
  57.  
  58. public boolean read() throws SQLException {
  59. if (this.id) {
  60. ResultSet rset = statement.executeQuery("SELECT * FROM `" + this.table + " WHERE `id` = " + this.id + ";");
  61.  
  62. /* Load all columns into this object's HashMap. */
  63. }
  64. return false;
  65. }
  66.  
  67. public boolean update() throws SQLException {
  68. String qstr = "UPDATE `" + this.table + "` SET ";
  69. Set<String> keys = this.columns.keySet();
  70. int remaining = keys.size();
  71.  
  72. for (String k : keys) {
  73. Object v = this.columns.get(k);
  74.  
  75. if (v instanceof String)
  76. qstr += "`" + k + "`=\"" + v + "\"";
  77. else
  78. qstr += "`" + k + "`=" + v;
  79. if (--remaining > 0)
  80. qstr += ",";
  81. }
  82. qstr += ";";
  83.  
  84. return statement.execute(qstr);
  85. }
  86.  
  87. public boolean delete() {
  88. return sql_query("DELETE FROM `" + this.table + "` WHERE `id` = " + this.id + ";");
  89. }
  90.  
  91. class User extends Model {
  92. public User() {
  93. super("User");
  94. this.columns.put("name", null);
  95. }
  96.  
  97. public void setName(String n) {
  98. this.columns.put("name", n);
  99. }
  100.  
  101. public String getName() {
  102. return String.valueOf(this.columns.get("name"));
  103. }
  104. }
  105.  
  106. class Trip extends Model {
  107. public Trip() {
  108. super("Trip");
  109.  
  110. this.columns.put("vehicle", new Integer(0));
  111. this.columns.put("driver", new Integer(0));
  112. this.columns.put("departure", new Date());
  113. this.columns.put("arrival", new Date());
  114. this.columns.put("value", new Double(0.0));
  115. }
  116. }
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement