質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

解決済

(急募)Javaのセッターゲッターの使い方がわかりません

n.t
n.t

総合スコア0

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

2回答

0評価

0クリップ

40閲覧

投稿2017/11/28 16:52

課題でJavaのプログラミングがでて困っております。
アクセスクラスとコントロールクラスの二つではデータのselectなどうまくいったのですが今課題のgeter seterを利用しなきゃいけないところで生きず待ってしまっております。

下記に私が挫折したコードがあります。
Javaに詳しい方助けてください。よろしくお願いします。

Java

//アクセスクラス import java.sql.*; import java.util.ArrayList; import java.util.List; public class DataBase { private Connection con = createConnection(); private String Host = "jdbc:mysql://localhost:3306/shoseki"; private String User = "root"; private String Pass = ""; private Connection createConnection() { Connection con = null; try { Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(Host,User,Pass); }catch(ClassNotFoundException e) { e.printStackTrace(); }catch(SQLException e) { e.printStackTrace(); } return con; } private void close(Connection con){ try { con.close(); }catch(SQLException e) { e.printStackTrace(); } } public void Serch(String key, String value) { String sql = "Select * From shoseki"; ResultSet rs = null; if(key != "null") { sql = sql.concat(" where " + key + " LIKE " + "'%" + value + "%'"); } rs = SqlExec(sql); SetResult(rs); } private ResultSet SqlExec(String sql) { Statement stmt = null; ResultSet rs = null; try { stmt = con.createStatement(); rs = stmt.executeQuery(sql); }catch(SQLException e) { e.printStackTrace(); } return rs; } private void SetResult(ResultSet rs) { List List = new ArrayList(); while(rs.next()) { Shoseki shoseki = new Shoseki(); shoseki.setIsbn(rs.getString("isbn")); shoseki.setTitle(rs.getString("title")); shoseki.setAuthor(rs.getString("author")); List.add(shoseki); } } }

Java

// コントロールクラス import java.sql.*; import java.util.ArrayList; import java.util.List; class ShosekiManagementSystem { private Shoseki shoseki; public static void main(String[] args){ String inputString; int n; ShosekiManagementSystem sms = new ShosekiManagementSystem(); while(true) { // Menu Display System.out.println("********************"); System.out.println("**書籍データベース**"); System.out.println("****操作メニュー****"); System.out.println("********************"); System.out.println("1.登録"); System.out.println("2.検索"); System.out.println("3.更新"); System.out.println("4.削除"); System.out.println("9.終了"); System.out.println(""); System.out.println("> "); inputString = new java.util.Scanner(System.in).nextLine(); n = Integer.parseInt(inputString); // End Determination if(n == 9 ) break; // Menu Number Check switch(n) { case 1: sms.Insert(); break; case 2: sms.Serch(); break; case 3: sms.Update(); break; case 4: sms.Delete(); break; default: } } } // Create private void Insert() { } // Update private void Update() { } // Delete private void Delete() { } // Serch private void Serch() { DataBase DB = new DataBase(); ResultSet rs; String inputString; int n; while(true) { // Menu Display System.out.println("1.全件検索"); System.out.println("2.ISBNから検索"); System.out.println("3.書籍名から検索"); System.out.println("4.著者から検索"); System.out.println("9.戻る"); System.out.println(""); System.out.println("> "); inputString = new java.util.Scanner(System.in).nextLine(); n = Integer.parseInt(inputString); // End Determination if(n == 9) break; // Menu Number Check switch(n) { case 1: DB.Serch("null","null"); ShowList(); break; case 2: System.out.println(""); System.out.println("ISBN番号による検索"); System.out.println(""); System.out.println("ISBN番号 ↓ "); inputString = new java.util.Scanner(System.in).nextLine(); DB.Serch("isbn",inputString); ShowList(); break; case 3: System.out.println(""); System.out.println("タイトルによる検索"); System.out.println(""); System.out.println("タイトル ↓ "); inputString = new java.util.Scanner(System.in).nextLine(); DB.Serch("title",inputString); ShowList(); break; case 4: System.out.println(""); System.out.println("著者による検索"); System.out.println(""); System.out.println("著者 ↓ "); inputString = new java.util.Scanner(System.in).nextLine(); DB.Serch("author",inputString); ShowList(); break; default: } } } private void ShowList(){ Shoseki List; for(inr i = 0; i < List.size(); i++) { List = (Shoseki) shoseki.get(i); System.out.println("ISBN   :\t" + List.getIsbn); System.out.println("タイトル :\t" + List.getTitle); System.out.println("著者   :\t" + List.getAuthor); } } }

Java

// ゲッター public class Shoseki { private String isbn; private String title; private String author; public String getIsbn() { return this.isbn; } public void setIsbn(String isbn) { this.isbn = isbn; } public String getTitle() { return this.title; } public void setTitle(String title) { this.title = title; } public String getAuthor() { return this.author; } public void setAuthor(String author) { this.author = author; } }

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

swordone
swordone

2017/11/28 17:04

具体的に何で行き詰っているのですか?
n.t
n.t

2017/11/28 17:09 編集

セッターゲッターを介してコントロールクラスで表示ができないことです。 アクセスクラスではDBのアクセス以外させたくないのと コントロールクラスで表示させるときにゲッターから受け取る際に配列の中身を複数件取得することができませんでした。
toris-birds
toris-birds

2017/11/28 18:12

ぱっと見で、ShowList()の中身が怪しい感じですが、それ以外でセッターゲッターの問題があるということでしょうか?
num79kill
num79kill

2017/11/28 23:31

SetResultにも問題あるし、コンパイルできないなか、教官に聞くといいと思うよ。課題でしよ
num79kill
num79kill

2017/11/29 00:09

ちなみに急募や初心者などと件名に書くと回答率が著しく低下します。
YasuhiroMiyake
YasuhiroMiyake

2017/11/29 00:22

ShowListメソッド内で書いていることを1行ずつコメントを書いてみてはいかがでしょうか。そうすれば自分で何を書いているのか分かると思います。(他の方もそうですが答えを書くのは簡単なのですが、それをすると課題の意味がないので・・・)

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。