JDBC添削変更例
4649 ワード
ModelTable
ただの補助作用
public class Table {
final static int MAX_PEOPLE = 12;
final static int MIN_PEOPLE = 2;
private int table_id;
private int table_status;
private int people;
public String getTable_name() {
return table_name;
}
public void setTable_name(String table_name) {
this.table_name = table_name;
}
private String table_name;
public int getTable_id() {
return table_id;
}
public void setTable_id(int tableId) {
table_id = tableId;
}
public int getTable_status() {
return table_status;
}
public void setTable_status(int tableStatus) {
table_status = tableStatus;
}
public int getPeople() {
return people;
}
public void setPeople(int people) {
this.people = people;
}
}
connection
データベース・リンクの取得
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(URL, USER, PWD);
return conn;
} catch (Exception ex) {
System.out.println("Error : " + ex.toString());
}
新規アクション
public int addTable(Table table) {
int flag = 0;
try {
StringBuffer sb = new StringBuffer("insert into");
sb.append(" r_table ");
sb.append(" (table_status, table_people, table_name) values (");
sb.append(table.getTable_status());
sb.append(",");
sb.append(table.getPeople());
sb.append(",'");
sb.append(table.getTable_name());
sb.append("')");
System.out.println(sb.toString());
Statement stmt = null;
stmt = conn.getConnection().createStatement();
stmt.executeUpdate(sb.toString());
} catch (SQLException e) {
flag = 1;
e.printStackTrace();
} finally {
try {
conn.closeConnection();
} catch (SQLException e) {
e.printStackTrace();
}
}
return flag;
}
アクションの削除
public int removeTableById(int id) {
int flag = 0;
try {
StringBuffer sb = new StringBuffer("delete from r_table where table_id=");
sb.append(id);
Statement stmt = null;
stmt = conn.getConnection().createStatement();
stmt.executeUpdate(sb.toString());
} catch (SQLException e) {
flag = 1;
e.printStackTrace();
} finally {
try {
conn.closeConnection();
} catch (SQLException e) {
e.printStackTrace();
}
}
return flag;
}
更新アクション
public int updateTable(Table table) {
int flag = 0;
try {
StringBuffer sb = new StringBuffer("update");
sb.append(" r_table ");
sb.append(" set table_status=");
sb.append(table.getTable_status());
sb.append(", table_people=");
sb.append(table.getPeople());
sb.append(", table_name='");
sb.append(table.getTable_name());
sb.append("' where table_id=");
sb.append(table.getTable_id());
Statement stmt = null;
stmt = conn.getConnection().createStatement();
stmt.executeUpdate(sb.toString());
} catch (SQLException e) {
flag = 1;
e.printStackTrace();
} finally {
try {
conn.closeConnection();
} catch (SQLException e) {
e.printStackTrace();
}
}
return flag;
}
クエリー操作
単一または複数のクエリーが可能
public Table getTableById(int id) {
Statement stmt;
Table t = new Table();
try {
stmt = conn.getConnection().createStatement();
// excuteing sql language
ResultSet rs = stmt.executeQuery("select * from r_table where table_id=" + id);
while (rs.next()) {
t.setTable_id(rs.getInt("table_id"));
t.setTable_name(rs.getString("table_name"));
t.setTable_status(rs.getInt("table_status"));
t.setPeople(rs.getInt("table_people"));
}
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
return t;
}