Advertisement
Guest User

servlet

a guest
Oct 29th, 2018
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.75 KB | None | 0 0
  1.  
  2. import java.io.File;
  3. import java.io.IOException;
  4. import java.nio.file.Path;
  5. import java.nio.file.Paths;
  6.  
  7. import javax.servlet.ServletException;
  8. import javax.servlet.annotation.WebServlet;
  9. import javax.servlet.http.HttpServlet;
  10. import javax.servlet.http.HttpServletRequest;
  11. import javax.servlet.http.HttpServletResponse;
  12.  
  13. import java.sql.*;
  14. import java.util.ArrayList;
  15. import java.util.Scanner;
  16.  
  17. import java.net.URLDecoder;
  18.  
  19. /**
  20. * Servlet implementation class needsAndAssessmentServlet
  21. */
  22. @WebServlet("/needsAndAssessment")
  23. public class NeedsAndAssessmentServlet extends HttpServlet {
  24. private static final long serialVersionUID = 1L;
  25.  
  26. private String dbname;
  27. private String dbuser;
  28. private String dbpass;
  29.  
  30. /**
  31. * @see HttpServlet#HttpServlet()
  32. */
  33. public NeedsAndAssessmentServlet() {
  34. super();
  35. try
  36. {
  37. String s = getClass().getName();
  38. int i = s.lastIndexOf(".");
  39. if(i > -1) s = s.substring(i + 1);
  40. s = s + ".class";
  41. System.out.println("name " +s);
  42. String testPath = this.getClass().getResource(s).toString();
  43. System.out.println(testPath);
  44. String realpath = URLDecoder.decode(testPath.substring(6), "UTF-8");
  45. System.out.println(realpath);
  46.  
  47. Path p = Paths.get(realpath);
  48. Path folder = p.getParent();
  49. System.out.println(folder.toString());
  50. File config = new File(folder.toString() + "\\" + "dbconfig.txt");
  51.  
  52. Scanner sc = new Scanner(config);
  53. dbname = sc.nextLine();
  54. dbuser = sc.nextLine();
  55. dbpass = sc.nextLine();
  56. sc.close();
  57. }
  58. catch (Exception e)
  59. {
  60. e.printStackTrace();
  61. }
  62. }
  63.  
  64. /**
  65. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
  66. * response)
  67. */
  68. protected void doGet(HttpServletRequest request, HttpServletResponse response)
  69. throws ServletException, IOException {
  70. // TODO Auto-generated method stub
  71. response.getWriter().append("Served at: ").append(request.getContextPath());
  72. }
  73.  
  74. /**
  75. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
  76. * response)
  77. */
  78. protected void doPost(HttpServletRequest request, HttpServletResponse response)
  79. throws ServletException, IOException {
  80. try (
  81. Connection conn = DriverManager.getConnection(
  82. "jdbc:mysql://localhost:3306/" + dbname + "?useSSL=false&allowPublicKeyRetrieval=true", dbuser,
  83. dbpass);
  84. )
  85. {
  86.  
  87. //Gets params from request
  88. ArrayList<String> fields = new ArrayList<String>();
  89. fields.add("unique_identifier");
  90. fields.add("unique_identifier_value");
  91. fields.add("date_of_birth");
  92. fields.add("postal_code_where_the_service_was_recieved");
  93. fields.add("start_date_of_assessment");
  94. fields.add("language_of_service");
  95. fields.add("official_language_of_preference");
  96. fields.add("type_of_institution");
  97. fields.add("referred_by");
  98. fields.add("increase_knowledge_of_life_in_canada");
  99. fields.add("increase_knowledge_of_life_in_canada_referrals");
  100. fields.add("increase_knowledge_of_com_and_gov_services");
  101. fields.add("increase_knowledge_of_com_and_gov_services_referrals");
  102. fields.add("increase_knowledge_of_working_in_canada");
  103. fields.add("increase_knowledge_of_working_in_canada_referrals");
  104. fields.add("increase_knowledge_of_education_in_canada");
  105. fields.add("increase_knowledge_of_education_in_canada_referrals");
  106. fields.add("increase_following_social_networks");
  107. fields.add("increase_following_social_networks_referrals");
  108. fields.add("increase_following_professional_networks");
  109. fields.add("increase_following_professional_networks_referrals");
  110. fields.add("increase_following_access_to_local_community_services");
  111. fields.add("increase_following_access_to_local_community_services_referrals");
  112. fields.add("increase_following_level_of_community_involvement");
  113. fields.add("increase_following_level_of_community_involvement_referrals");
  114. fields.add("improve_language_skills");
  115. fields.add("improve_language_skills_referrals");
  116. fields.add("improve_language_skill_to");
  117. fields.add("improve_other_skills");
  118. fields.add("improve_other_skills_referrals");
  119. fields.add("improve_other_skills_to");
  120. fields.add("find_employment");
  121. fields.add("find_employment_referrals");
  122. fields.add("find_employment_timeframe");
  123. fields.add("find_employment_mimimum_one_year_experience");
  124. fields.add("find_employment_intends_occupation_NOC_skill_level");
  125. fields.add("find_employment_intends_credential_regonition_and_license");
  126. fields.add("client_intends_to_become_citizen");
  127. fields.add("support_services_may_be_required");
  128. fields.add("care_fore_newcomer_children");
  129. fields.add("transportation");
  130. fields.add("provisions_for_disabilities");
  131. fields.add("translation");
  132. fields.add("interpretation");
  133. fields.add("crisis_counselling");
  134. fields.add("non_IRRC_program_services_needed");
  135. fields.add("food_clothing_other_material_needs");
  136. fields.add("food_clothing_other_material_needs_referrals");
  137. fields.add("housing_accommodation");
  138. fields.add("housing_accommodation_referrals");
  139. fields.add("health_mental_health_wellbeing");
  140. fields.add("health_mental_health_wellbeing_referrals");
  141. fields.add("financial");
  142. fields.add("financial_referrals");
  143. fields.add("family_support");
  144. fields.add("family_support_referrals");
  145. fields.add("language_nonIRCC");
  146. fields.add("language_nonIRCC_referrals");
  147. fields.add("education_skills_development");
  148. fields.add("education_skills_development_referrals");
  149. fields.add("employment_related");
  150. fields.add("employment_related_referrals");
  151. fields.add("legal_information_and_services");
  152. fields.add("legal_information_and_services_referrals");
  153. fields.add("community_services");
  154. fields.add("community_services_referrals");
  155. fields.add("support_services_received");
  156. fields.add("care_for_newcomer_children2");
  157. fields.add("child1_age");
  158. fields.add("child1_type_of_care");
  159. fields.add("child2_age");
  160. fields.add("child2_type_of_care");
  161. fields.add("child3_age");
  162. fields.add("child3_type_of_care");
  163. fields.add("child4_age");
  164. fields.add("child4_type_of_care");
  165. fields.add("child5_age");
  166. fields.add("child5_type_of_care");
  167. fields.add("child_transportation");
  168. fields.add("child_provisions_for_disabilities");
  169. fields.add("child_translation");
  170. fields.add("child_translation_between");
  171. fields.add("child_translation_and");
  172. fields.add("child_interpretation");
  173. fields.add("child_interpretation_between");
  174. fields.add("child_interpretation_and");
  175. fields.add("child_crisis_counselling");
  176. fields.add("settlement_plan_compeleted_and_shared_with_client");
  177. fields.add("end_date_of_assessment_YYYY_MM_DD");
  178. fields.add("reason_for_update");
  179.  
  180.  
  181.  
  182. //Query string
  183. String query = "INSERT INTO ";
  184. query += "needsandassessment"; //TODO table name
  185. query += "(";
  186. for(int i = 0; i < fields.size(); i++) {
  187. query += fields.get(i) + ", ";
  188. }
  189. //query += "(unique_identifier, unique_identifier_value, date_of_birth, postal_code_where_the_service_was_recieved, start_date_of_assessment, language_of_service,";
  190. //query += "official_language_of_preference, type_of_institution, referred_by, increase_knowledge_of_life_in_canada, increase_knowledge_of_life_in_canada_referrals) ";
  191. query = query.substring(0, query.length() - 2);
  192. query += ")";
  193. query += "VALUES(";
  194. for (int i = 0; i < fields.size() - 1; i++) {
  195. query += "?,";
  196. }
  197. query += "?)";
  198.  
  199.  
  200. for(int i = 0; i < fields.size(); i++) {
  201. String field_data = GetParam(request, fields.get(i));
  202. fields.set(i, field_data);
  203. }
  204.  
  205. //Sets values into query
  206. PreparedStatement querySql = conn.prepareStatement(query);
  207. for(int i = 0; i < fields.size(); i++) {
  208. querySql.setString(i + 1, fields.get(i));
  209. }
  210. // querySql.setString(1, unique_identifier);
  211. // querySql.setString(2, unique_identifier_value);
  212. // querySql.setString(3, date_of_birth);
  213. // querySql.setString(4, postal_code_where_the_service_was_recieved);
  214. // querySql.setString(5, start_date_of_assessment);
  215. // querySql.setString(6, language_of_service);
  216. // querySql.setString(7, official_language_of_preference);
  217. // querySql.setString(8, type_of_institution);
  218. // querySql.setString(9, referred_by);
  219. // querySql.setString(10, increase_knowledge_of_life_in_canada);
  220. // querySql.setString(11, increase_knowledge_of_life_in_canada_referrals);
  221. querySql.executeUpdate();
  222.  
  223. response.setStatus(HttpServletResponse.SC_OK);
  224. } catch (SQLException e) {
  225. e.printStackTrace();
  226. response.setStatus(HttpServletResponse.SC_CONFLICT);
  227. response.getOutputStream().println(e.getMessage());
  228. }
  229. }
  230.  
  231. private String GetParam(HttpServletRequest request, String param)
  232. {
  233. return request.getParameter(param);
  234. }
  235.  
  236. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement