generate test user
authorFelix Schumacher <felix.schumacher@internetallee.de>
Thu, 26 Aug 2010 20:33:50 +0000 (22:33 +0200)
committerFelix Schumacher <felix.schumacher@internetallee.de>
Thu, 26 Aug 2010 20:33:50 +0000 (22:33 +0200)
src/org/mcb/services/FillDB.java [new file with mode: 0644]

diff --git a/src/org/mcb/services/FillDB.java b/src/org/mcb/services/FillDB.java
new file mode 100644 (file)
index 0000000..e479b6f
--- /dev/null
@@ -0,0 +1,106 @@
+package org.mcb.services;
+
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.Date;
+import java.sql.PreparedStatement;
+import java.sql.SQLException;
+import java.sql.Statement;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * Servlet implementation class FillDB
+ */
+public class FillDB extends HttpServlet {
+       private static final long serialVersionUID = 1L;
+
+       /**
+        * @see HttpServlet#HttpServlet()
+        */
+       public FillDB() {
+               super();
+               // TODO Auto-generated constructor stub
+       }
+
+       /**
+        * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
+        *      response)
+        */
+       protected void doGet(HttpServletRequest request,
+                       HttpServletResponse response) throws ServletException, IOException {
+               doPost(request, response);
+       }
+
+       /**
+        * @see Http Servlet#doPost(HttpServletRequest request, HttpServletResponse
+        *      response)
+        */
+       protected void doPost(HttpServletRequest request,
+                       HttpServletResponse response) throws ServletException, IOException {
+               Connection conn = null;
+               try {
+                       conn = connectionmanager.scgm_conn();
+                       Statement statement = conn.createStatement();
+                       try {
+                               statement
+                                               .executeUpdate("create table LOGIN_INFORMATION"
+                                                               + " (USER_ID varchar(40), NAME varchar(40), BRANCH_CODE varchar(40), PASSWORD varchar(40), LAST_LOGIN_DATE date, ROLE_ID varchar(40), ACTIVE varchar(10))");
+                               statement.executeUpdate("create table ROLES"
+                                               + " (ROLE_ID varchar(40), ROLE_DESC varchar(40))");
+                       } catch (SQLException e) {
+                               log("Could not create tables");
+                       } finally {
+                               statement.close();
+                       }
+                       String[] roles = { "red", "green", "blue" };
+                       PreparedStatement roleStmt = conn
+                                       .prepareStatement("insert into ROLES values (?, ?)");
+                       try {
+                               for (String role : roles) {
+                                       roleStmt.setString(1, role);
+                                       roleStmt.setString(2, "color is " + role);
+                                       roleStmt.execute();
+                               }
+                       } catch (SQLException e) {
+                               log("Could not insert role ", e);
+                       } finally {
+                               roleStmt.close();
+                       }
+                       PreparedStatement userStmt = conn
+                                       .prepareStatement("insert into LOGIN_INFORMATION"
+                                                       + " (USER_ID, NAME, BRANCH_CODE, PASSWORD, LAST_LOGIN_DATE, ROLE_ID, ACTIVE)"
+                                                       + " values (?, ?, ?, ?, ?, ?, ?)");
+                       try {
+                               PasswordService passwordService = new PasswordService();
+
+                               for (int i = 0; i < 1000; i++) {
+                                       userStmt.setString(1, "user" + i);
+                                       userStmt.setString(2, "name" + i);
+                                       userStmt.setString(3, "tc");
+                                       userStmt.setString(4, passwordService.encrypt("pass" + i));
+                                       userStmt.setDate(5, new Date(0));
+                                       userStmt.setString(6, roles[i % roles.length]);
+                                       userStmt.setString(7, i % 2 == 0 ? "A" : "I");
+                               }
+                       } finally {
+                               userStmt.close();
+                       }
+               } catch (Exception e) {
+                       log("Could not connect to database.", e);
+               } finally {
+                       if (conn != null) {
+                               try {
+                                       conn.close();
+                               } catch (SQLException e) {
+                                       // OK
+                               }
+                       }
+               }
+               response.sendRedirect(response.encodeRedirectURL(request.getContextPath()));
+       }
+
+}