【Java】☕️JavaBeansとは何か?
【結論】
【目次】
はじめに
Spring修行の途中経過を書きます。
今回は、Spring修行するにあたって不足している、JavaBeansについて理解を深めてみました。
JavaBeansとは
余計なことは一切考えず、JavaBeans=銀行 を脳みそに刷り込んでください。
刷り込みができたら以下の記事を読んでみてください。
さいごに
このような良記事をタダで読めるなんて良い時代です。
私もこんな記事が書けるようにスキルを磨いていこうと思います。
以上です🤪
…で終わるとあまりにも短すぎるので、JavaBeansの実装をJavaとRubyで書いてみたので載せておきます。
Javaで書いた場合
とにかく長いです🤮
class Profile { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } public class Sample { public static void main(String args[]) { Profile profile = new Profile(); profile.setName("万年 寝太郎"); profile.setAge(20); System.out.println("名前:"+ profile.getName()); System.out.println("年齢:"+ profile.getAge()); } }
実行結果
名前:万年 寝太郎 年齢:20
Rubyで書いた場合
ProfileクラスがJavaBeansに相当する部分です。
読み書きするためのアクセサメソッドの定義であることを表すattr_accessor
メソッドとして、nameやage変数を定義してあげるだけです。
class Profile attr_accessor :name attr_accessor :age end profile = Profile.new profile.name = "万年 寝太郎" profile.age = 20 puts "名前:#{profile.name}" puts "年齢:#{profile.age}"
実行結果
名前:万年 寝太郎 年齢:20
Javaでgetter/setterを自動生成する方法
Javaのソースを長くしている諸悪の根源😈であるgetter/setter
(name変数に対するgetName()やsetName(String name)のこと)に関して、自動生成してくれる機能が存在します。
※手順の解説は、Mac🍎でSTS(spring tool suite)を使う前提です。
手順1
クラスと変数を宣言します。この時点で既にgetter/setter
が宣言されていないと、警告⚠️を出してくれます。
手順2
[ソース]→[getterおよびsetterの生成]を選択します。
手順3
[getterおよびsetterの生成]画面が表示されるので、設定後に[生成]ボタンを押下します。
手順4
nameとage変数に対するgetter/settrメソッドが自動生成されます。