7 従業員レコードの更新

Employee Java Beanを作成します。

クラス名:

src/main/java/com/oracle/jdbc/samples/entity/Employee.java

この例で作成したEmployee.javaファイルを使用します。

7.1 Java Beanで、従業員の名による検索に必要なメソッドを作成

前の課題で作成したEmployee.javaを使用します。

クラス名:

src/main/java/com/oracle/jdbc/samples/bean/JdbcBean.java

新しいメソッドgetEmployeeByFn(String fn);をBeanに作成します

従業員名で検索するためのメソッドを作成するコードを次に示します。

/**
* Get List of employees by First Name pattern
* @param fn
* @return List of employees with given beginning pattern
*/
public List<Employee> get EmployeeByFn(String fn);

7.2 従業員名による検索のためのgetEmployeebyFn()メソッドの実装

クラス名:

src/main/java/com/oracle/jdbc/samples/bean/JdbcBeanImpl.java

最初の手順で作成したgetConnection()メソッドを使用して、同じデータベースに接続します。

次に、従業員の名に基づいてgetEmployeeByFn()メソッドの従業員データを作成します。

SELECT Employee_Id, First_Name, Last Name, Email, Phone_Number, Job_Id, Salary FROM EMPLOYEES
WHERE First_Name LIKE ?
public List<Employee> getEmployeeByFn(String fn) {
List<Employee> returnValue = new ArrayList<>();
public List<Employee> getEmployeeByFn(String fn) {
List<Employee> returnValue = new ArrayList<>();
try (Connection connection = getConnection()) {
try (PreparedStatement preparedStatement = connection.prepareStatement(
"SELECT Employee_Id, First_Name, Last_Name, Email, Phone_Number, Job_Id, Salary FROM 
EMPLOYEES WHERE First_Name LIKE ?")) {
preparedStatement.setString(1, fn + '%');
try (ResultSet resultSet = preparedStatement.executeQuery()) {
while(resultSet.next()) {
returnValue.add(new Employee(resultSet));
}
}
}
} catch (SQLException ex) {
logger.log(Level.SEVERE, null, ex);
ex.printStackTrace();
}
return returnValue;
}