From d26dbab8f789d787d5c39f8700b4ac19701f286f Mon Sep 17 00:00:00 2001
From: Julien Sere <jsere>
Date: Sat, 22 Jan 2011 17:22:13 +0000
Subject: initial check out java

git-svn-id: file:///var/svn/2011-usi/trunk@13 db941bf7-0cb3-4dda-9634-87faf64f93a7
---
 app/v2_java/src/org/usi2011/Database.java | 73 +++++++++++++++++++++++++++++++
 app/v2_java/src/org/usi2011/Question.java | 67 ++++++++++++++++++++++++++++
 app/v2_java/src/org/usi2011/User.java     | 56 ++++++++++++++++++++++++
 3 files changed, 196 insertions(+)
 create mode 100644 app/v2_java/src/org/usi2011/Database.java
 create mode 100644 app/v2_java/src/org/usi2011/Question.java
 create mode 100644 app/v2_java/src/org/usi2011/User.java

(limited to 'app/v2_java/src')

diff --git a/app/v2_java/src/org/usi2011/Database.java b/app/v2_java/src/org/usi2011/Database.java
new file mode 100644
index 0000000..6ebb63a
--- /dev/null
+++ b/app/v2_java/src/org/usi2011/Database.java
@@ -0,0 +1,73 @@
+package org.usi2011;
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+
+/**
+ * @author XKHM6852
+ * 
+ */
+public final class Database {
+
+	private static Connection connection;
+
+	/** */
+	public static Connection getConnection() {
+		if (connection == null) {
+			createDatabase();
+		}
+		return connection;
+	}
+
+	private static void createDatabase() {
+		try {
+			connection = DriverManager.getConnection("jdbc:hsqldb:mem:aname",
+					"sa", "");
+			String query = "DROP TABLE game; CREATE TABLE game ( "
+					+ "  id INT NOT NULL PRIMARY KEY, "
+					+ "  longpollingduration INT NOT NULL, "
+					+ "  nbusersthreshold INT NOT NULL,"
+					+ "  questiontimeframe INT NOT NULL,"
+					+ "  nbquestions INT NOT NULL" + ");";
+
+			Statement statement = connection.createStatement();
+			ResultSet resultset = statement.executeQuery(query);
+			connection.commit();
+			createUser();
+
+		} catch (SQLException e) {
+
+			System.out.println("SQL Exception " + e.getMessage());
+		}
+	}
+
+	private static void createUser() {
+		/*
+		 `id` int(11) NOT NULL AUTO_INCREMENT,
+		  `firstname` varchar(255) COLLATE utf8_bin NOT NULL,
+		  `lastname` varchar(255) COLLATE utf8_bin NOT NULL,
+		  `mail` varchar(255) COLLATE utf8_bin NOT NULL,
+		  `password` varchar(255) COLLATE utf8_bin NOT NULL,
+		  */
+		try {
+			String query = "DROP TABLE user; CREATE TABLE user ( "
+					+ "  id INT GENERATED BY DEFAULT AS IDENTITY, "
+					+ "  firstname VARCHAR NOT NULL, "
+					+ "  lastname VARCHAR NOT NULL,"
+					+ "  mail VARCHAR NOT NULL,"
+					+ "  password VARCHAR NOT NULL" + ");";
+
+			Statement statement = connection.createStatement();
+			ResultSet resultset = statement.executeQuery(query);
+			connection.commit();
+
+		} catch (SQLException e) {
+
+			System.out.println("SQL Exception " + e.getMessage());
+		}
+	}
+
+}
diff --git a/app/v2_java/src/org/usi2011/Question.java b/app/v2_java/src/org/usi2011/Question.java
new file mode 100644
index 0000000..0c391d3
--- /dev/null
+++ b/app/v2_java/src/org/usi2011/Question.java
@@ -0,0 +1,67 @@
+package org.usi2011;
+
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+
+import javax.servlet.ServletException;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * Servlet implementation class question
+ */
+public class Question extends HttpServlet {
+	private static final long serialVersionUID = 1L;
+	private Connection connection;
+	/**
+	 * Default constructor.
+	 */
+	public Question() {
+		super();
+		connection = Database.getConnection();
+	}
+
+	/**
+	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
+	 *      response)
+	 */
+	protected void doGet(HttpServletRequest request,
+			HttpServletResponse response) throws ServletException, IOException {
+		ServletOutputStream out = response.getOutputStream();
+		
+		try {
+			String query = "INSERT INTO game VALUES (1, 2, 3, 4, 5)";
+			Statement statement = connection.createStatement();
+			ResultSet resultset = statement.executeQuery(query);
+			query = "SELECT * FROM game";
+			statement = connection.createStatement();
+			resultset = statement.executeQuery(query);
+			while (resultset.next()) {
+				out.println(resultset.getString(1));
+			}
+		} catch (SQLException e) {
+			response.sendError(400);
+		}
+		
+		
+		out.println("hello world");
+		out.println(request.getRequestURI());
+		
+	}
+
+	/**
+	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
+	 *      response)
+	 */
+	protected void doPost(HttpServletRequest request,
+			HttpServletResponse response) throws ServletException, IOException {
+		// TODO Auto-generated method stub
+	}
+
+}
diff --git a/app/v2_java/src/org/usi2011/User.java b/app/v2_java/src/org/usi2011/User.java
new file mode 100644
index 0000000..091b4eb
--- /dev/null
+++ b/app/v2_java/src/org/usi2011/User.java
@@ -0,0 +1,56 @@
+package org.usi2011;
+
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.Map;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * Servlet implementation class User
+ */
+public class User extends HttpServlet {
+	private static final long serialVersionUID = 1L;
+	private Connection connection;
+    /**
+     * @see HttpServlet#HttpServlet()
+     */
+    public User() {
+        super();
+        connection = Database.getConnection();
+    }
+
+	/**
+	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
+	 */
+	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+		try {
+			String firstname = request.getParameter("firstname");
+			String lastname = request.getParameter("lastname");
+			String mail = request.getParameter("mail");
+			String password = request.getParameter("password");
+			
+			System.out.println(firstname);
+			System.out.println(lastname);
+			System.out.println(mail);
+			System.out.println(password);
+			
+			String query = "INSERT INTO game(firstname, lastname, mail) VALUES ('"+firstname+"', '"+lastname+"', '"+mail+"', '"+password+"')";
+			Statement statement = connection.createStatement();
+			ResultSet resultset = statement.executeQuery(query);
+			
+			response.setStatus(response.SC_CREATED);
+			
+		} catch (SQLException e) {
+			System.out.println(e.getMessage());
+			response.sendError(400);
+		}
+	}
+
+}
-- 
cgit v1.2.3