Apache Commons を利用した Java でのプログラム作成問題の10回目となります。
環境を構築していない場合は、概要を読み、環境を構築してから実施してください。
※この出題形式に関しては答えは1つではありません。
解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正解として下さい。
問題
jp.pjin.tech.commons.domain.BloodType.java
package jp.pjin.tech.commons.domain; public enum BloodType { A, B, O, AB }
jp.pjin.tech.commons.domain.User.java
package jp.pjin.tech.commons.domain; import java.io.Serializable; import java.lang.reflect.InvocationTargetException; import java.time.LocalDate; import org.apache.commons.beanutils.BeanUtils; import lombok.Data; @Data public class User implements Serializable { private int id; private String name; private BloodType type; private LocalDate birthday; private String mail; private String phone; @Override public User clone() throws CloneNotSupportedException { try { return (User) BeanUtils.cloneBean(this); } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { e.printStackTrace(); } return null; } }
jp.pjin.tech.commons.Practice010.java
package jp.pjin.tech.commons; import java.time.LocalDate; import java.util.HashMap; import java.util.Map; import jp.pjin.tech.commons.domain.BloodType; import jp.pjin.tech.commons.domain.User; public class Practice010 { public static void main(String[] args) throws Exception { Map<String, Object> user = new HashMap<>(); user.put("id", 123); user.put("name", "大高弘明"); user.put("type", BloodType.B); user.put("birthday", LocalDate.parse("2000-12-10")); user.put("mail", "hiroaki.ootaka@ssie.jp"); user.put("phone", "000-9999-8888"); User ootaka = new User(); ootaka.setId((Integer) user.get("id")); ootaka.setName((String) user.get("user")); ootaka.setType((BloodType) user.get("type")); ootaka.setBirthday((LocalDate) user.get("birthday")); ootaka.setMail((String) user.get("mail")); ootaka.setPhone((String) user.get("phone")); System.out.println(ootaka); } }
Mapで生成しているデータがあります。
これをUserオブジェクトに変換しているのですが、良くこういったソースを目にします。
Userオブジェクトのフィールドが6項目なので、それほど長くないですが、多くなるとその分長くなります。
実際は、全てStringの値が来ることになるのですが、まあ、置いておいて。
先に値がUserオブジェクトの型と同様になるような状態からスタートしましょう。
この代入部分をcommonsを利用して、簡略化してください。
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第23回
Apache Commons を利用した Java でのプログラム作成問題の23回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 ※この出題形式に関しては答えは1つではありません。 解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第22回
Apache Commons を利用した Java でのプログラム作成問題の22回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 ※この出題形式に関しては答えは1つではありません。 解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第21回
Apache Commons を利用した Java でのプログラム作成問題の21回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 ※この出題形式に関しては答えは1つではありません。 解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第20回
Apache Commons を利用した Java でのプログラム作成問題の20回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 ※この出題形式に関しては答えは1つではありません。 解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第19回
Apache Commons を利用した Java でのプログラム作成問題の19回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 DB環境の準備は、Apache Commons Javaプログラム演習問題 第16回をご覧ください。 ※この出題形式に関して
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第18回
Apache Commons を利用した Java でのプログラム作成問題の18回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 DB環境の準備は、Apache Commons Javaプログラム演習問題 第16回をご覧ください。 ※この出題形式に関して
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第17回
Apache Commons を利用した Java でのプログラム作成問題の17回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 DB環境の準備は、Apache Commons Javaプログラム演習問題 第16回をご覧ください。 ※この出題形式に関して
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第16回
Apache Commons を利用した Java でのプログラム作成問題の16回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 ※この出題形式に関しては答えは1つではありません。 解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第12回
Apache Commons を利用した Java でのプログラム作成問題の12回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 ※この出題形式に関しては答えは1つではありません。 解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正
![apache commons](https://tech.pjin.jp/wp-content/uploads/2019/02/apache-commons.png)
Apache Commons Javaプログラム演習問題 第15回
Apache Commons を利用した Java でのプログラム作成問題の15回目となります。 環境を構築していない場合は、概要を読み、環境を構築してから実施してください。 ※この出題形式に関しては答えは1つではありません。 解答例はできるだけ複数載せるつもりですが、問題文の要件を満たしていれば正