-3

特定のデータベースの特定のテーブルにアクセスするインベントリ システムが既にあります。

ここで、ユーザーがメインのインベントリ システム フレームに進む前に、ログイン フォームとして機能する新しいフレームを作成したいと考えています。

同じデータベースで異なるテーブルにアクセスしたい (例: inventory_system_db データベースの下の user_table と item_table)。

ユーザーが管理者アカウントでログオンした場合、管理者コントロール (編集、追加、削除など) を使用して在庫システムにアクセスできます。

そして、彼が通常のユーザーとしてログオンすると、在庫システムにアクセスできますが、管理コントロールはありません。

知りたいこと:

  • ログインフォームを作成するには?
  • 在庫システムに進めるには?
4

2 に答える 2

8

ログインダイアログが必要な場合は、以下のコードを確認してください。

 public class LoginPane extends JDialog implements ActionListener {
  String itsUsername = "";
  String itsPassword = "";
  boolean itsFirst = true;
  boolean itsKeep = false;
  JTextField itsUserField = new JTextField(15);
  JPasswordField itsPassField = new JPasswordField(15);
  JCheckBox itsKeepBox = new JCheckBox("Save details:", false);
  boolean itsInit = false;

  public LoginPane() {
    super();
setTitle("Login");
setModal(true);
getContentPane().setLayout(new GridLayout(3, 2));
getContentPane().add(new JLabel("Username:"));
getContentPane().add(itsUserField);
getContentPane().add(new JLabel("Password"));
getContentPane().add(itsPassField);
getContentPane().add(itsKeepBox);
JButton submit = new JButton("done");
getContentPane().add(submit);
submit.addActionListener(this);
pack();
 }

public String[] getLogin() {
if (!itsKeep && !itsFirst) {
  return null;
}
if (!itsInit) {
  return null;
}
itsFirst = false;
String[] res = new String[2];
res[0] = itsUsername;
res[1] = itsPassword;
if (!itsKeep) {
  itsUsername = "";
  itsPassword = "";
}
return res;
  }

  public void actionPerformed(ActionEvent e) {
itsUsername = itsUserField.getText();
itsPassword = new String(itsPassField.getPassword());
itsKeep = itsKeepBox.isSelected();
itsInit = true;
setVisible(false);
}
}

好きなようにボタンにアクションを追加できます!

于 2013-02-20T10:43:55.367 に答える
0

これを解決するには多くの解決策がありますが、そのうちの 1 つが次のとおりです。

  1. users テーブルの data に、ユーザーの権限を格納します。

  2. ログイン時に、権限を確認し、それが管理者(またはあなたがそれを何と呼ぶか​​)であるかどうかを確認し、追加、削除、および権限のいずれかの権利を彼に付与し、それ以外の場合は権限を制限します.

  3. これを遵守するには、ユーザーがこのタスクを実行する権限を持っているかどうかを確認するために、これらすべての権限をチェックする必要があります。

  4. また、ユーザーがアクションの実行を許可されていない場合は、追加、削除 (ボタンの形式の場合) を非表示にすることができます。

したがって、これはすべてアプリケーションのアーキテクチャに依存します。

于 2013-02-20T10:29:25.827 に答える