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

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

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

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

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

解決済

1回答

3597閲覧

在庫の更新、商品の追加、商品の削除が行える処理を作成したい

ribo

総合スコア11

Java

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

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2018/06/22 07:41

前提・実現したいこと

今javaを使ってeclipse上で動かすことができるECサイトのようなプログラムを作成しています。
そこで管理者モードとユーザーモードを選ばせる処理、管理者モードを選んだ際の中の処理にあたる更新、追加、削除を選ばせる処理を作成しました。(Main)

Java

1import java.util.Scanner; 2 3public class Main { 4public static void main(String[] args) { 5 6 int mode =0; 7 System.out.println("モードを選択してください \n0:管理者モード \n1:ユーザーモード"); 8 while(true){ 9 System.out.print(">"); 10 mode = new Scanner(System.in).nextInt(); 11 if(mode == 0 || mode ==1){ 12 break; 13 }else{ 14 System.out.println("0か1を入力してください"); 15 } 16 } 17 switch(mode){ 18 case 0: 19 //管理者モード 20 System.out.println("何を行いますか? \n0:在庫の更新 \n1:商品の追加 \n2:商品の削除"); 21 while(true){ 22 System.out.print(">"); 23 mode = new Scanner(System.in).nextInt(); 24 if(mode == 0 || mode ==1 || mode == 2){ 25 break; 26 }else{ 27 System.out.println("0か1か2を入力してください"); 28 } 29 } 30 switch(mode){ 31 case 0: 32 Update upd = new Update(); 33 upd.updatemain(); 34 break; 35 case 1: 36 Insert ins = new Insert(); 37 ins.insertmain(); 38 break; 39 case 2: 40 Delete del = new Delete(); 41 del.deletemain(); 42 break; 43 default: 44 System.out.println("エラー"); 45 } 46 break; 47 48 case 1: 49 //ユーザーモード 50 //インスタンスの生成 51 usermode usm = new usermode(); 52 usm.usermodemain(); 53 break; 54 default: 55 System.out.println("エラー"); 56 } 57 } 58} 59

しかしこのソースから商品追加を行うinsertなどのそれぞれのメソッドに飛んだ際にどのようなSQLや処理を行えば自由に新商品の追加や在庫更新、削除などができるのかわからなくて困っています。
ネットで調べたときは、あらかじめソースに入っている数値などがテーブルに入る処理が書かれていたりしたのですが、コンソール上に打ち込んだ内容を追加する処理がヒットしませんでした。

java

1import java.util.Scanner; 2 3public class Insert { 4 public void insertmain(){ 5 //SQL文を定義する 6 String sql = "INSERT INTO shouhin_mst values(?, ?, ?, ?)"; 7 8 System.out.println("商品の追加を行う商品名、値段、在庫数を入力してください。"); 9 System.out.println("商品名>"); 10 Scanner scan = new Scanner(System.in); 11 String name = scan.nextLine(); 12 System.out.println("値段>"); 13 Scanner scan = new Scanner(System.in); 14 int price = scan.nextInt(); 15 } 16}

このソースにどのように中身を足していけば商品を追加する処理ができるでしょうか?
コツがわかれば中身の処理を自分の力で作成しようと思っているのでどなたかアドバイスをよろしくお願いします。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/06/22 08:20

重箱の隅をつつくようで申し訳ないのですが「eclipse上で動かすことができる」というのは語弊があります。eclipseで「サーバー実行」することでコンパイルが行われ、tomcatサーバーが起動し、そのtomcatサーバー上で動いています。eclipseはあくまでコンパイルしているだけです。結局Java実行のためにはtomcatに乗せる必要があるわけです。お間違えのないよう。。。
m.ts10806

2018/06/22 08:21

あ、サーブレットじゃないからサーバーはtomcatじゃないか。失礼しました。
ribo

2018/06/22 08:43

ご指摘ありがとうございます。eclipseのコンソールに入力すると動作するようなニュアンスを書こうと考え今回のような表記に至りました。大変勉強になりました。
m.ts10806

2018/06/22 08:46

理解しました。GUIではなくCUI(画面なし)でということですね。
ribo

2018/06/22 08:50

そうですね。今回はCUIの予定です。
guest

回答1

0

ベストアンサー

データの追加(INSERT) - データベース接続 - サーブレット入門 - JavaDrive

あらかじめソースに入っている数値などがテーブルに入る処理が書かれていたりしたのですが、コンソール上に打ち込んだ内容を追加する処理がヒットしませんでした。

↑コンソール上に打ち込んだ内容はプログラムで受け取って変数に保持したりしませんか?

投稿2018/06/22 07:48

編集2018/06/22 07:51
tkturbo

総合スコア5572

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ribo

2018/06/22 07:55

解答してくださりありがとうございます。 現在の方針では打ち込んだ内容を変数に保持したいと考えています。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問