Advertisement
Guest User

PUT updateMember

a guest
Dec 14th, 2016
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.53 KB | None | 0 0
  1. /**
  2. * updateMember REST API
  3. *
  4. * @param member
  5. * @param password
  6. * @return
  7. *
  8. * Guidelines used:
  9. * http://howtodoinjava.com/jersey/jersey-restful-client-examples/#put
  10. */
  11. @PUT
  12. @Path("updatemember")
  13. @Consumes("application/json")
  14. @Produces("application/json")
  15. public Response updateMember(Member member, @QueryParam("password") String password) {
  16. try {
  17. Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/islandfurniture-it07?user=root&password=290597");
  18.  
  19. if (password != null) {
  20. String passStmt = "SELECT * FROM memberentity m WHERE m.EMAIL=?";
  21. PreparedStatement passPs = conn.prepareStatement(passStmt);
  22. passPs.setString(1, member.getEmail());
  23. ResultSet rs = passPs.executeQuery();
  24. rs.next();
  25. String passwordSalt = rs.getString("PASSWORDSALT");
  26. String passwordHash = generatePasswordHash(passwordSalt, password);
  27.  
  28. String stmt = "UPDATE Memberentity SET NAME = ?, PHONE = ?, ADDRESS = ?, SECURITYQUESTION = ?, SECURITYANSWER = ?, AGE = ?, INCOME = ?, PASSWORDHASH = ?"
  29. + " WHERE EMAIL = ?";
  30.  
  31. PreparedStatement ps = conn.prepareStatement(stmt);
  32. ps.setString(1, member.getName());
  33. ps.setString(2, member.getPhone());
  34. ps.setString(3, member.getAddress());
  35. ps.setInt(4, member.getSecurityQuestion());
  36. ps.setString(5, member.getSecurityAnswer());
  37. ps.setInt(6, member.getAge());
  38. ps.setInt(7, member.getIncome());
  39. ps.setString(8, passwordHash);
  40. ps.setString(9, member.getEmail());
  41.  
  42. // call executeUpdate to execute our sql update statement
  43. // http://alvinalexander.com/blog/post/jdbc/sample-jdbc-preparedstatement-sql-update
  44. int updates = ps.executeUpdate();
  45. ps.close();
  46. } else {
  47. String stmt = "UPDATE Memberentity SET NAME = ?, PHONE = ?, ADDRESS = ?, SECURITYQUESTION = ?, SECURITYANSWER = ?, AGE = ?, INCOME = ? "
  48. + " WHERE EMAIL = ?";
  49.  
  50. PreparedStatement ps = conn.prepareStatement(stmt);
  51. ps.setString(1, member.getName());
  52. ps.setString(2, member.getPhone());
  53. ps.setString(3, member.getAddress());
  54. ps.setInt(4, member.getSecurityQuestion());
  55. ps.setString(5, member.getSecurityAnswer());
  56. ps.setInt(6, member.getAge());
  57. ps.setInt(7, member.getIncome());
  58. ps.setString(8, member.getEmail());
  59.  
  60. // call executeUpdate to execute our sql update statement
  61. // http://alvinalexander.com/blog/post/jdbc/sample-jdbc-preparedstatement-sql-update
  62. int updates = ps.executeUpdate();
  63. ps.close();
  64. }
  65.  
  66. return Response.status(200).build();
  67. } catch (SQLException sqlex) {
  68. return Response.status(999).build();
  69. }
  70. catch (Exception ex) {
  71. ex.printStackTrace();
  72. return Response.status(Response.Status.BAD_REQUEST).entity(ex.getMessage()).build();
  73. }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement