【有料級】JavaでDB接続するJDBCプログラミングを完全解説【JavaDB講座 総集編】

Поделиться
HTML-код
  • Опубликовано: 1 дек 2024

Комментарии • 83

  • @teppein1809
    @teppein1809 Год назад +8

    これをタダで見れるなんて、凄いサービス。おかげで、データベースを使ったWEBアプリの構築がよく分かりました。

    • @SekaChan
      @SekaChan  Год назад +3

      コメントありがとうございました!
      webアプリ+DB連携の理解が深まったようで良かったです。
      実は、これはリアルのセミナーだと数十万円するような内容です。
      僕もRUclipsでいろいろ勉強させてもらってるので、自分にできることで還元できたらなって思ってます!

  • @qiaoqiao5345
    @qiaoqiao5345 9 месяцев назад +5

    はきはきと喋られている明るい雰囲気なので学ぶ元気がもらえます。他のチャンネルにはない良さだと思います。

    • @SekaChan
      @SekaChan  9 месяцев назад

      ありがとうございます!
      僕もみなさんのコメントから元気をもらってます😄

  • @うちゃ-u1i
    @うちゃ-u1i Год назад +4

    見終わったー相変わらず完璧な教え方ですありがとうございます!
    ここ1週間くらいずっとせかチャンの動画見てましたこの動画もまた見返します
    だいぶ知識ついたのでwebアプリ色々と作ってみます!
    また今度知りたい分野の講座が登場したら見ます!

    • @SekaChan
      @SekaChan  Год назад +1

      うちゃさん、コメントありがとうございました!
      1週間でDB編まで見られちゃうなんてスゴイですね。
      かなりの知識をインプットできたと思うので、次はアウトプットできるレベルを目指しましょう!
      ぜひいろんなプログラムを作ってみてください!

  • @ST-lm9zz
    @ST-lm9zz Год назад +5

    Java silver受験に向けて勉強に取り組み始めましたが、もう悲しいくらいに無知識で、、、意気込んで試験勉強3ヶ月で受ける!と決めていたのに、、その月が2月ですが、正答率半分もいかず。。。せかちゃんみてがんばろうとおもいます。😢✨

    • @SekaChan
      @SekaChan  Год назад +2

      S Tさん、コメントありがとうございました!
      JavaSilverって結構マニアックな内容が出てきますからね。
      勉強3ヶ月目で正答率が半分いっていなくても、全然気にする必要はないと思います👍
      むしろ、JavaSilverにチャレンジしようと覚悟を決めたこと。
      そして、2ヶ月以上も頑張って勉強を続けてきたこと。
      これだけでも十分胸を張って良いことですよ!
      近日中に「Javaの効率的な勉強方法」や「プログラミング学習につまづいたときの対策」の動画を出します。
      きっと参考になると思うので、そちらもぜひ見てみてください!

  • @柏木健志
    @柏木健志 Год назад +2

    せかチャン 菅原さんの説明が、有料教材よりも優しくて分かりやすいと感じているので、せかチャンを優先して観ています(笑)Javaシリーズは、【Javaの始め方】から全部2回ずつ視聴していますが、やっぱり後半になるほど難しく、理解が追い付かないところもでてきています(私としてはポリフォーリズムのあたりから頭がオーバーヒートし始めました(笑))ただ、とっても丁寧に説明してくださってるのは伝わってますので、繰り返し復習していくことで少しずつ自分の物にしていければいいな、と思います。配信、感謝します!ありがとうございます!

    • @SekaChan
      @SekaChan  Год назад +1

      柏木さん、コメントありがとうございました!
      もうデータベース編の動画まで見てくれたんですね。しかも全部2回ずつなんてすごく速い!
      そうやって全体の動画を繰り返し見てもらうと全体像を把握しながら理解を深めていけるので、とても良い勉強方法だなぁと感じました😄
      ポリモフィズムも含めて最初は難しいって感じる内容も多いと思いますが、少しずつ「分かった!」と思える部分を増やしていってもらえたら嬉しいです。

  • @梅太郎-x4f
    @梅太郎-x4f 8 месяцев назад +2

    見たかったやつや😂

    • @SekaChan
      @SekaChan  8 месяцев назад +1

      ここまで深堀りしてる動画はなかなかないので、ぜひ活用してください😄

  • @blackbird02169
    @blackbird02169 Год назад +4

    この動画明日までに見終える🔥まだ始まって10分くらいだけど、2回見直しつつ自分でも図解書いてみたら理解度が凄い、、!

    • @SekaChan
      @SekaChan  Год назад

      blackbirdさん、コメントありがとうございました!
      データベース編の動画をすべて理解できれば、相当な実力がつくと思いますよ👍
      ぜひ頑張ってください!

  • @okojo_MK
    @okojo_MK 9 месяцев назад +1

    なるほど
    DBでも最初にクラスを宣言して処理ごとにインスタンス化するみたいなことができるんですね
    賢い…

    • @SekaChan
      @SekaChan  9 месяцев назад +1

      入門講座6章で解説したクラスライブラリと同じように、DB関連の処理が用途ごとにクラス別にまとめられているイメージですね。

  • @nekoboru-r6m
    @nekoboru-r6m Год назад +1

    いつもわかりやすい解説動画ありがとうございます。
    先日Java silverに合格し、今度はSilver SQLの資格取得を頑張っているのですが、今後解説動画を出す予定はありますか??

    • @SekaChan
      @SekaChan  Год назад

      いつも動画を見てくれてありがとうございます!
      また、Java Silver合格おめでとうございます。さらにSilver SQLも狙ってるんですね。ぜひ頑張ってください!
      SQLはそれほどリクエストが多くない分野なので、今のところ解説動画を出す予定はないですね。

  • @ほとくれない
    @ほとくれない Год назад +1

    分かりやすい説明ありがとうございます。 質問ですが、
    「webアプリでDB更新」を自分なりに書き換えて動かして見たのですが、追加をしてもmysqlに追加されません。
    DB内にコマンドプロンプトから入力したものはブラウザの「表示」で確認できます。
    考えられる原因はどこでしょうか?
    個人的には、public int insertが怪しいと思ってます。
    また、すべて文字列で受け取っている場合、書き方は
    String sql = "INSERT INTO student VALUES( ' " + no + " ' , ' " + name + " ' , ' " + score + " ' ) " ;
    であってますか?
    ※「no」や「name」等はHTMLに入力した値はmsgで表示できました。
    初歩的な質問だと思いますがご教授いただければ幸いです。

    • @SekaChan
      @SekaChan  Год назад +1

      ほとくれないさん、コメントありがとうございました。
      そういう「コンパイルは通るけど実行してもうまくいかない」ときって、結構バグ取りが難しいんですよね💦
      DB処理がうまくいかないときは、System.out.println( sql ) などで実行しているSQL文そのものを出力すると間違いに気づけることが多いです。
      ちなみに、そのSQL文だと no と score を '~' で囲んでしまっているため、文字列として追加しようとしてしまいます。
      配布のサンプルプログラムも参考にしてもらって、no や score を囲んでいる ' を除いてみてください。

  • @317yusukemheat
    @317yusukemheat Год назад +1

    DTOとentityの動画内についてご質問です。
    jsp内の17から19行目でsdtoのgetメソッドにてリスト内の情報をstudentbeanのsbに格納していますが、このsbのインスタンス生成はいらないのでしょうか。
    ご教示お願いいたします。

    • @SekaChan
      @SekaChan  Год назад

      大谷友亮さん、コメントありがとうございました。
      StudentBeanのインスタンスはDAOで生成されて、DTOに格納されています。
      JSPではそのDTOをリクエストスコープから取り出して使っているので、ここで新しくインスタンスを生成しなくても大丈夫ですね。

    • @317yusukemheat
      @317yusukemheat Год назад

      なるほど!ありがとうございます。
      追加で質問です。
      DTOとentityの動画内についてご質問です。
      ShowStudentServletクラスで全件検索した結果のsdaoをsdtoに格納していますが、sdtoのインスタの生成は不要なのでしょうか。
      ご教示お願いいたします。

  • @abcdefghijkendo
    @abcdefghijkendo Год назад +1

    配信ありがとうございます。
    今回DBと接続するのにDriverManegerが使われていると思います。私がみている参考書ではDataSourceが出てきます。
    違いや、使う場面などあれば教えてください。

    • @SekaChan
      @SekaChan  Год назад +1

      abcdefghitoshiさん、コメントありがとうございました!
      DriverManegerとDataSourceは、両方ともDBに接続する機能をもつものですね。
      DBへの接続情報をコード内に書く(DriverManeger)か、別のところに登録しておく(DataSource)かで違いがあります。
      詳しくはこの動画やその参考書を見てみてください😄

  • @ちもね
    @ちもね Год назад +2

    楽しく拝見しております。DBの更新処理についてはSQLインジェクションが発生する可能性がありそうですがPreparedStatementを使った方式のほうが良いのではないでしょうか

    • @SekaChan
      @SekaChan  Год назад +1

      ちもね*さん、コメントありがとうございました!
      その通りですね。SQLインジェクションの可能性を考えると、PreparedStatementの方が適切だと思います。
      webアプリは他にもセキュリティの脆弱性があるため、どこかのタイミングでwebセキュリティに関するプログラミングの解説動画を作れたら良いなと考えています😄

  • @品川EJ鈴木
    @品川EJ鈴木 Год назад +1

    いつもわかりやすい説明ありがとうございます。サンプルプログラムをダウンロードして動作を確認することができて非常に有効な動画だと思いました。一つ質問なんですが、StudentDTOのclassファイルは問題と思いますが、ソースをコンパイルするとStudentBeanの部分がすべて「エラー: シンボルを見つけられません」となってしまって、いろいろと試していますがどうにも解決できません(ほかのjavaソースはすべてコンパイルOKでした)。importすべきものもないようだし、スペルも間違っていないようなのですが、何か心当たりがあればご教示願います。

    • @SekaChan
      @SekaChan  Год назад +1

      いつも動画を見てくれてありがとうございます!
      直接的な理由は分かりませんが、パッケージ化したクラスをコンパイラが見つけられていないようですね。
      念のため一度作ったclassファイルはすべて削除してもらって‥
      ・*.java でコンパイルする方法とjavaファイルを1つひとつコンパイルする方法を両方試す
      ・呼び出される側のクラスから順番にコンパイルする
      ・javaファイルとclassファイルの配置を変えてコンパイルする
      このあたりを意識してみてもらえたらと思います。

    • @品川EJ鈴木
      @品川EJ鈴木 Год назад +1

      @@SekaChan *.java でコンパイルする方法で実施したら「エラー: クラス StudentDTOはpublicであり、ファイルStudentDTO.javaで宣言する必要があります、」という基本レベルのメッセージに変わりました。ファイル名とクラス名は同じに見えましたが、参照系の動画からコピーした同じ処理内容のStudentDTOで実施したところコンパイルは問題なく実施できました。*javaでコンパイルすると問題なくクラスができたのに、javaファイルを1つひとつ実施すると事象が変わらないです。コンパイルは呼び出される側から(StudentBean -> StudentDTOの順番で実施)。とりあえずclassができたので一安心です。ありがとうございました。

  • @creamice-d8p
    @creamice-d8p Год назад +1

    配信ありがとうございます。MySQLを動画通りにダウンロードすると途中でVisual Studioのインストールが必要と出てきて作業が進められません。この場合、Visual Studioをダウンロードするべきなのでしょうか?

    • @SekaChan
      @SekaChan  Год назад +1

      cream iceさん、コメントありがとうございました!
      僕の環境にはVisual Studioはインストールされてないですね。
      Visual Studioや関連機能を使わないのであれば、ダウンロードしなくても大丈夫かなと思います😄

    • @creamice-d8p
      @creamice-d8p Год назад

      返信ありがとうございます。
      再度MySQLをインストールしてみると、Documentationとsample以外ダウンロードできず、Serverの設定でエラーが出てきました。
      この場合、VIsual Studio 2019を入れてみたほうがいいですか?他にも方法がありますか?

  • @JI-py3xf
    @JI-py3xf 9 месяцев назад +1

    もう少しで終わるところだったんですが、DAOのところで、ShowNameServlet2.javaをコンパイルしてみると下記のシンボルだけエラーになってしまいます。
    シンボル: クラス StudentDAO
    場所: クラス ShowNameServlet2
    ShowNameServlet2.java:11: エラー: シンボルを見つけられません
    StudentDAO sdao = new StudentDAO();

    • @JI-py3xf
      @JI-py3xf 9 месяцев назад +1

      解決しました。すみませんでした。tomcat10にしたので、-classpathをつけてたんですが、StudentDAOも-classpathで指定してたところから探しているらしく、-sourcepathでファイルのある場所を指定しないと駄目でした。
      javac ShowNameServlet2.java -classpath C:\apache-tomcat-10.1.19\lib/servlet-api.jar -sourcepath C:\apache-tomcat-10.1.19\webapps\dbweb\WEB-INF\classes

  • @品川EJ鈴木
    @品川EJ鈴木 Год назад +1

    基本的な質問かもしれませんが、StudentDA03で
    下記の部分のシングルコーテーション" ' " がないと確かにデータを拾いませんが、この" ' "はエスケープ文字でもなさそうですが、どのような機能なのでしょうか?お手数ですがご教示願います。
    public int insert(int no, String name, int score) {
    String sql = "INSERT INTO student VALUES ("+ no + ", '"
    + name + "', " + score1 + ","+ score2 + "," + score3 + ")";

    • @SekaChan
      @SekaChan  Год назад

      コメントありがとうございました。
      「'」はSQL文で文字列を囲むときの記号ですね。
      例えば 45:36 からINSERT文の例として
      > INSERT INTO student VALUES(1, '菅原', 80)
      を紹介しましたが、「菅原」を囲んでいる「'」のことです。

    • @品川EJ鈴木
      @品川EJ鈴木 Год назад +1

      ご回答ありがとうございます。細かい部分の質問にも答えていただいて本当に助かりました。

  • @燈雄榮
    @燈雄榮 Год назад

    すみません、この動画を見て作ろうとしたんですが、8.0.35では少しセットアップの手順が変わっていたので、説明動画のアップをお願いします。

    • @SekaChan
      @SekaChan  Год назад

      燈雄榮さん、コメントありがとうございました。
      この前のeclipseのときと同じような回答になってしまい申し訳ないですが、旧バージョンの動画しか作れていないのは不親切だと感じつつも、最新バージョンの動画を作り続けることが難しい部分もあります。
      今のところ最新バージョンの説明動画を撮る予定はないため、動画と同じバージョンのインストーラをダウンロード(Archiveからダウンロード可能です)して使ってもらうか、最新バージョンをインストールしたい場合は他の方の動画やwebサイトを参考にしてもらえたらと思います。

  • @山田太郎-o3o1c
    @山田太郎-o3o1c Год назад

    非常にわかりやすい解説ありがとうございます!
    初歩的な質問になってしまい申し訳ないのですが、APサーバとDBサーバの接続をしなくてもDriverManagerでDB接続ができるのでしょうか?

    • @SekaChan
      @SekaChan  Год назад

      山田太郎さん、コメントありがとうございました!
      「APサーバとDBサーバの接続」が(いろんな意味にとらえられる表現なので)具体的にどんなことを指しているのか分からないですが、この講座ではAPサーバにDBサーバとの接続情報を持たせるようなことはしていないですね。

  • @user-gp7ws4nd7m
    @user-gp7ws4nd7m Год назад +1

    菅原先生、いつもありがとうございます。
    「WebアプリとDB連携」のsampleプログラム(先生と同じソースコード)をEclipseで実行したら、「noが1の生徒名はnullです」と表示してしまい、どう解決すれば良いでしょうか?
    お忙しいところ恐縮ですが、宜しくお願い申し上げます。

    • @SekaChan
      @SekaChan  Год назад +1

      P Sさん、コメントありがとうございました!
      生徒名がnullになってしまうのはよくもらう質問なんですが、原因がいろいろあり得るので特定が難しいんですよね💦
      公開しているサンプルプログラムをそのまま動かしているのならDB側に原因がありそうですし、自分でプログラムを作ったのならプログラム側に原因(特に多いのはSQL文の誤り)があるのかもしれません。
      ちなみに1ヶ月前に同じ質問をしてくれた方は、もう一度最初からやってみたら正しく実行できたみたいですね。

    • @user-gp7ws4nd7m
      @user-gp7ws4nd7m Год назад +1

      菅原先生、いつもお世話になっております。nullの原因分析して頂き、どうもありがとうございました。
      以前の動画のサンプルプログラム(普通のjavaプロジェクト)を作った時、ちゃんとMySQLと接続し、データを取ってくれましたが、今回の動的プロジェクトを作ったら、nullになってしまいました。
      原因がよくわからないですが、今のMySQLの代わりにXAMPPで試したいかなと思います。お忙しい最中、ご返信頂き、どうもありがとうございました。

  • @うらきこージィ
    @うらきこージィ Год назад +1

    いつもとても分かり易い解説ありがとうございます。
    最後のサンプルプログラムを実装し実行すると、
    java.lang.NullPointerExceptionが出ます。
    EditStudentServlet.java の
    String btn = req.getParameter("btn"); でbtnの値を取得すると思うのですが、
    btnの値がnullになっていまして(コンソール出力で確認)、
    その後の if(btn.equals("追加")){ ・・・ のところで、
    参照値がnullのオブジェクトに対してメソッドを呼び出そうとして
    java.lang.NullPointerException が出ていると思うのですが、
    なぜ、btnの値がnullになってしまうのでしょうか?
    環境は、Eclipseです。
    ご教示頂けますと嬉しいです。
    よろしくお願い申し上げます。

    • @うらきこージィ
      @うらきこージィ Год назад +1

      HTMLファイルの
      のvalue属性『追加』を『add』のように英語に(他の3つのボタンも)変更したら
      上手くいきました。
      文字コードの問題かと思いました。。。がそんなことはないはずと、
      再度、value属性『add』を『追加』へ変更したら、その後はエラーが出なくなりました。。。
      そんなことってあるのでしょうか?・・・

    • @SekaChan
      @SekaChan  Год назад

      うらきこージィさん、コメントありがとうございました!
      タグのname属性は正しくbtnになっていますし、文字コードに問題があるというのもたしかに考えにくいです。
      何より、「追加」に戻した後にエラーが出なくなったというのが妙な動きですよね🤔
      属性値を指定する「"」を全角で一度保存しちゃって、そのキャッシュがどこかに残ってた?というのも考えてみましたが、可能性として低そうな気もします。
      明確な回答ができずに申し訳ありませんが、ちょっとこの文面だけだと原因がつかめないですね‥
      もしまた同じようなことが起こったら、タグでmethod="GET"を指定してみてください。
      ブラウザのアドレスバーにパラメータ情報が表示されるので、実際に送られている文字列を確認できます(日本語は化けてしまいますが)。

  • @kpkp2922
    @kpkp2922 Год назад +3

    配信ありがとうございます!勉強させていただいております!
    板書、動画編集など・・・丁寧でとても見やすいです。
    このチャンネルは、いい意味で教えたくないチャンネルの1つです(^O^)/
    これからもよろしくお願いいたします😊

    • @SekaChan
      @SekaChan  Год назад +1

      kp KP&さん、コメントありがとうございました!
      板書や動画編集は「分かりやすさ」につながればと丁寧にやっているので、そう感じてもらえて良かったです!
      せかチャンは動画を見てくれる視聴者さんがいるおかげで続けられているので、このチャンネルのこと、もし良かったら周りに教えてあげてください😄

  • @品川EJ鈴木
    @品川EJ鈴木 10 месяцев назад

    直接本動画のソースではありませんが、今回2度目の質問になります。
    以下の記述後、excuteUpdateでsqlを実行するのですが、
    String sql = "INSERT INTO testtable(id,name,price) " +
    "VALUES('" + id + "','" +name + "'," + price + ")";
    確かに正しく実行されるのですが、この指定( '"" + 変数 + "')の意味がいろいろ調べてもわからず閉口しています。
    何かヒントになることがあればご教示願えないでしょうか?

    • @SekaChan
      @SekaChan  10 месяцев назад

      動画外のソースなので詳細は省きますが、一般的に変数の値について疑問を感じたときは、その値を出力してみると意味を理解しやすいケースが多いですね。
      この場合も System.out.println( sql ) で出力してみると、' や " の意味合いが分かりやすいですよ。
      (また、この記述は動画内で解説した気がするので必要であれば探してみてください)

    • @品川EJ鈴木
      @品川EJ鈴木 10 месяцев назад +1

      JavaDB12にありました。引数で渡された文字列を+で連結してsql文を作成しているんですね。System.out.printlnにslqを参照すべきでした。それぞれの変数を指定して確認していたので解決に至りませんでした。適切なアドバイスありがとうございました。

  • @半澤博
    @半澤博 Год назад +1

    お世話になっております。「MySQL」をインストールしている際に Windows(x86,32-bit),MSI Installer 8.0.32 2.4Mを選択しますとその先の画面の内容がここで説明されているのとは
    ちがってまして、そのままま続けて良いかわからないなりインストールを中止しました。ダウンロードする容量も2.4Mと少なくて、後続の画面で表示されるソフトの数も少ないです。よろしくお願いいたします。

    • @SekaChan
      @SekaChan  Год назад +1

      半澤博さん、コメントありがとうございました。
      確認したところ、インストーラのバージョンが8.0.32に上がったみたいですね。
      マイナーチェンジなのでMySQLのコアとなる部分を同じようにインストール・設定できれば大丈夫かなと思いますが、どうしても不安という場合は、画面上のタブ「Archives」から動画と同じバージョン(8.0.31)をダウンロードすることも可能です👍

    • @半澤博
      @半澤博 Год назад +1

      @@SekaChan コメント頂きありがとうございます。「Archives」から同じバージョンを
      ダウンロードすることにいたします。

  • @sota2195
    @sota2195 Год назад +1

    表示される名前がnullになる場合どうしたらいいですか?

    • @SekaChan
      @SekaChan  Год назад +1

      名前として表示されるはずのデータが、どこかでうまく渡されていないのだと思います。
      どのサンプルで名前がnullになってしまうのかが分からないので具体的なことはいえませんが、HTML→JavaやDB→Javaなどデータの受け渡し部分を確認してみてください。

  • @さんかめはめ
    @さんかめはめ Год назад +4

    仕事が早いですね笑

    • @さんかめはめ
      @さんかめはめ Год назад +1

      次の講座決まっているのでしょうか??😊

    • @SekaChan
      @SekaChan  Год назад

      さんかめはめさん、コメントありがとうございました!
      JavaDB講座は前後のつながりが濃いので総集編動画の方が勉強しやすいかなと思い、このタイミングのアップになりました😄
      次の講座はもう撮り始めていますが、いつスタートするかは未定ですね。

    • @さんかめはめ
      @さんかめはめ Год назад +1

      @@SekaChan ありがとうございます!
      助かります!
      楽しみです!!

  • @iiszjak9454
    @iiszjak9454 Год назад +1

    すみませんConnectionとStatementはオブジェクトではなくクラスではないんですか?

    • @SekaChan
      @SekaChan  Год назад

      iis zjakさん、コメントありがとうございました。
      厳密にいうと、ConnectionとStatementはインタフェースですね。
      getConnection()やcreateStatement()では、これらのインタフェースを実装したクラスのオブジェクトを取得しています😄

  • @naru_ZooBee
    @naru_ZooBee Год назад +1

    1:00:34
    mysql> use sampledb;
    Database changed
    mysql> source where.sql;
    ERROR:
    Failed to open file 'where.sql', error: 2
    エラーが出るのですが、解決ができません。
    調べまくっても、直接URL指定しようにも、どこにフォルダがあるのかもわかりませんし・・・。
    mysqlのフォルダに入ってないんですよねぇ・・・。sampledb。
    それ以降は問題なくできました。

    • @SekaChan
      @SekaChan  Год назад

      神集場出雲_ZooBeeさん、コメントありがとうございました。
      「where.sqlを開けない」というエラーなので、mysqlコマンドを実行する際のカレントディレクトリ(動画では C:\Java )内にファイルがあることを確認してみてください。
      sampledbのほうは問題なさそうな気がします😄

  • @su-xo8io
    @su-xo8io Год назад +1

    1:09:35

  • @ponponpon1360
    @ponponpon1360 Год назад +1

    ありがとうございます!いつも楽しく視聴させていただいてます!
    一点質問があります。StudentDTO.javaで以下の書き方が出てきますが、最初のStudentBeanは引数の型、次のStudentBeanは戻り値の型であってますでしょうか。
    メソッドの定義をしている箇所なのかと思いますが、この記述が見慣れず、それぞれどういう構造なのかわかってないかもしれないです、、よろしくお願いします。
    public void add(StudentBean sb){
    list.add(sb);
    }
    public StudentBean get(int i){
    return list.get(i);
    }

    • @SekaChan
      @SekaChan  Год назад

      Pon Ponさん、コメントありがとうございました。
      いつも動画を見てくれてありがとうございます!
      StudentBeanについては、その認識(引数の型と戻り値の型)で合ってますよ👍
      もしメソッドの定義方法に不安な部分があれば、こちらの動画を見てもらうと理解が深まるかなと思います。
      ●【Java入門講座】3-2 設計図クラス
      ruclips.net/video/jSk1CzTdp-Q/видео.html