package database;
import java.sql.*;
import java.util.Vector;
import common.CurrentTime;
public class Member {
// Registered members bring information to the GCM
public Vector<String> getMember() {
Connection conn = connectionDB();
Vector<String> member = new Vector<String>();
Statement stmt = null;
ResultSet rs = null;
String query = "select * from ownerkey";
// Query execute
try {
stmt = conn.createStatement();
rs = stmt.executeQuery(query);
if (stmt.execute(query)) {
rs = stmt.getResultSet();
}
// Add member
while (rs.next()) {
String reg_id = rs.getString("reg_id");
member.add(reg_id);
}
} catch (SQLException e1) {
System.out.println("[error][" + common.CurrentTime.getTime()
+ "] : Database query fault");
}
// connection close
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
}
}
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
}
}
return member;
}
// Device Registration to GCM
public void registerMember(String reg_id) {
Connection conn = connectionDB();
String query = "insert into ownerkey (reg_id) values (?);";
try {
PreparedStatement preparedStmt = conn.prepareStatement(query);
preparedStmt.setString(1, reg_id);
preparedStmt.execute();
System.out.println("[success][" + common.CurrentTime.getTime()
+ "] : Device registration to GCM");
} catch (SQLException e) {
System.out.println("[error][" + common.CurrentTime.getTime()
+ "] : A device that is already registered");
}
// connection close
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
}
}
}
// Device unregistration to GCM
public void unregisterMember(String reg_id) {
Connection conn = connectionDB();
// Execute query
String query = "delete from ownerkey where reg_id=(?);";
try {
PreparedStatement preparedStmt = conn.prepareStatement(query);
preparedStmt.setString(1, reg_id);
preparedStmt.execute();
System.out.println("[success][" + common.CurrentTime.getTime()
+ "] : Device unregistration to GCM");
} catch (SQLException e) {
System.out.println("[error][" + common.CurrentTime.getTime()
+ "] : The device does not exist");
}
// connection close
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
}
}
}
private Connection connectionDB() {
Connection conn = null;
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
System.out.println("[error][" + common.CurrentTime.getTime()
+ "] : JDBC Driver not found");
}
try {
conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", "root", "1234");
} catch (SQLException e) {
System.out.println("[error][" + common.CurrentTime.getTime()
+ "] : Database connection fault");
}
return conn;
}
}
package http;
import java.io.IOException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
// Device Registration
public class Register extends HttpServlet{
database.Member db = new database.Member();
public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
String reg_id = req.getParameter("reg_id");
System.out.println("[request][" + common.CurrentTime.getTime()
+ "] : request divice registation");
db.registerMember(reg_id);
}
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
String reg_id = req.getParameter("reg_id");
System.out.println("[request][" + common.CurrentTime.getTime()
+ "] : request divice registation");
db.registerMember(reg_id);
}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<!-- device register -->
<servlet>
<servlet-name>register</servlet-name>
<servlet-class>http.Register</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>register</servlet-name>
<url-pattern>/register</url-pattern>
</servlet-mapping>
<!-- 주고받는 부분 작성, 알람, 푸시 다 -->
</web-app>
gcm 서버 등록하는 부분까지만 이긴한데 이거마져 안됩니다.....
처음부터 안된건 아니고 하다보니까 갑자기 안되요 ..
2일째 밤새면서 하고있습니다. 도와주세요ㅠㅠㅠㅠ
실행하면 로그도 안뜨고 웹에서 http404에러라고 뜹니다.
참고로 db에는 ownerkey 테이블에 reg_id, parkingshare이라는 값을 넣을 수 있습니다.