Advertisement
Guest User

Untitled

a guest
Jul 24th, 2016
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.75 KB | None | 0 0
  1. public class xmltosql extends HttpServlet {
  2. @Override
  3. public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException,IOException
  4. {
  5. System.out.println("this is in current data");
  6. try
  7. {
  8. // instream receives string from server 1
  9. InputStream in = req.getInputStream();
  10.  
  11.  
  12. // testing code
  13. DocumentBuilderFactory factory = null;
  14. DocumentBuilder builder = null;
  15. Document ret = null;
  16.  
  17. try {
  18. factory = DocumentBuilderFactory.newInstance();
  19. builder = factory.newDocumentBuilder();
  20. } catch (ParserConfigurationException e) {
  21. e.printStackTrace();
  22. }
  23.  
  24. try {
  25. // creating xml document ret using instream data
  26. ret = builder.parse(in);
  27. System.out.println("ret : "+ret);
  28. } catch (SAXException e) {
  29. e.printStackTrace();
  30. } catch (IOException e) {
  31. e.printStackTrace();
  32. }
  33.  
  34. try
  35. {
  36. // establishing jdbc connection to database on server 2
  37. Class.forName("com.mysql.jdbc.Driver");
  38. Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/nic", "root", "jumanjis");
  39. Statement st = con.createStatement();
  40. // initiating a queue to recieve object
  41. Queue<data> q = new LinkedList<data>();
  42. if(req!=null){
  43. // initiating object of data class which takes row values of table on server 1
  44. data obj = new data();
  45. // reading xml string from inputstream
  46. NodeList employeelist = ret.getElementsByTagName("employee");
  47. for(int i=0; i<employeelist.getLength();i++){
  48. Node n = employeelist.item(i);
  49. if(n.getNodeType()==Node.ELEMENT_NODE){
  50. Element employee = (Element) n;
  51. NodeList childnodes = employee.getChildNodes();
  52.  
  53. for(int j=0;j<childnodes.getLength();j++){
  54. Node child = childnodes.item(j);
  55. if(child.getNodeType()==Node.ELEMENT_NODE){
  56. Element x = (Element) child;
  57.  
  58. // initializing members of data class object
  59. switch (x.getTagName()) {
  60. case "id":
  61. obj.id = Integer.parseInt(x.getTextContent());
  62. break;
  63. case "name":
  64. obj.name = x.getTextContent();
  65. break;
  66. case "age":
  67. obj.age = Integer.parseInt(x.getTextContent());
  68. break;
  69. case "city":
  70. obj.city = x.getTextContent();
  71. break;
  72. case "country":
  73. obj.country = x.getTextContent();
  74. break;
  75. default:
  76. break;
  77. }
  78. }
  79. }
  80. }
  81. }
  82. // inserting object of data class to queue
  83. q.add(obj);
  84. // iterating through the objects in the queue
  85. Iterator iterator = q.iterator();
  86. while(iterator.hasNext()){
  87. data first =q.remove();
  88. // updating the table xyz on server 2 using the object in queue
  89. st.executeUpdate("insert into xyz values("+first.id+", '"+first.name+"', "+first.age+", '"+first.city+"', '"+first.country+"')");
  90. }
  91. ret = null;
  92. }
  93. }
  94. catch(Exception ex)
  95. {
  96. ex.printStackTrace();
  97. }
  98. // storing data in db
  99.  
  100.  
  101. }
  102. catch (IOException e)
  103. {
  104. System.err.println(e);
  105. e.printStackTrace();
  106. }
  107.  
  108. }
  109. }
  110.  
  111. <?xml version="1.0" encoding="UTF-8"?>
  112.  
  113. <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  114. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  115. xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  116. version="3.1">
  117.  
  118. <servlet>
  119. <servlet-name>xmltosql</servlet-name>
  120. <servlet-class>xmltosql</servlet-class>
  121. </servlet>
  122. <servlet-mapping>
  123. <servlet-name>xmltosql</servlet-name>
  124. <url-pattern></url-pattern>
  125. </servlet-mapping>
  126. </web-app>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement