ผมต้องการให้ login เเล้วเก็บข้อมูลไว้เเล้วไปใช่ใน Form ต่างๆ
เหมือนกับการที่ใช้ Session ใน php เพื่อดูข้อมูลของ id นั้นๆ
ผมอยากรู้ว่า ผมเข้าใจ code ถูกไหม ไปดูจากเว็บหนึ่งมา
ปล.เพิ่มข้อมูล
[code]สร้างClassนี้มาเพื่อเก็บค่าตัวแปรต่างๆ
public class UserClass {
public static String sUsername;
public static String sName;
// Username
public void setUsername(String username){
sUsername = username;
}
public static String getUsername(){
return sUsername;
}
// Name
public void setName(String name){
sName = name;
}
public static String getName(){
return sName;
}
}
[/code]-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[code]เลือกว่าจะเก็บตัวแปรไหนบ้าง
// set Variable to Class
UserClass user = new UserClass();
user.setUsername(rec.getString("Username"));
user.setName(rec.getString("Name"));
[/code]-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[code]เอาตัวแปรที่เก็บไว้ UserClass ด้านบนมาใช่
// get Username & Name from Class
UserClass user = new UserClass();
lblUsername.setText(user.getUsername());
lblName.setText(user.getName());
[/code]-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[code]package javaproject;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class MainLogin extends javax.swing.JFrame {
public String sUsername;
public String sPassword;
public MainLogin() {
initComponents();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/project","root","1234");
String sql = " SELECT * FROM member WHERE Username = ? AND Password = ? ";
PreparedStatement pst = con.prepareStatement(sql);
pst = con.prepareStatement(sql);
pst.setString(1, jTextField1.getText());
pst.setString(2, jTextField2.getText());
ResultSet rs = pst.executeQuery();
rs = pst.executeQuery();
if(rs.next()){
test1 menu = new test1();
menu.setVisible(true);
setVisible(false);
sUsername = jTextField1.getText();
sPassword = new String(jTextField2.getText());
dispose();
}
else{
JOptionPane.showMessageDialog(null,"รหัสผ่านผิดพลาด");
jTextField1.setText("");
jTextField2.setText("");
}
con.close();
}
catch(Exception e){
JOptionPane.showMessageDialog(null,e);
}
}
[/code]
การรับค่าของ java GUI ทำยังไง
เหมือนกับการที่ใช้ Session ใน php เพื่อดูข้อมูลของ id นั้นๆ
ผมอยากรู้ว่า ผมเข้าใจ code ถูกไหม ไปดูจากเว็บหนึ่งมา
ปล.เพิ่มข้อมูล
[code]สร้างClassนี้มาเพื่อเก็บค่าตัวแปรต่างๆ
public class UserClass {
public static String sUsername;
public static String sName;
// Username
public void setUsername(String username){
sUsername = username;
}
public static String getUsername(){
return sUsername;
}
// Name
public void setName(String name){
sName = name;
}
public static String getName(){
return sName;
}
}
[/code]-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[code]เลือกว่าจะเก็บตัวแปรไหนบ้าง
// set Variable to Class
UserClass user = new UserClass();
user.setUsername(rec.getString("Username"));
user.setName(rec.getString("Name"));
[/code]-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[code]เอาตัวแปรที่เก็บไว้ UserClass ด้านบนมาใช่
// get Username & Name from Class
UserClass user = new UserClass();
lblUsername.setText(user.getUsername());
lblName.setText(user.getName());
[/code]-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[code]package javaproject;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class MainLogin extends javax.swing.JFrame {
public String sUsername;
public String sPassword;
public MainLogin() {
initComponents();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/project","root","1234");
String sql = " SELECT * FROM member WHERE Username = ? AND Password = ? ";
PreparedStatement pst = con.prepareStatement(sql);
pst = con.prepareStatement(sql);
pst.setString(1, jTextField1.getText());
pst.setString(2, jTextField2.getText());
ResultSet rs = pst.executeQuery();
rs = pst.executeQuery();
if(rs.next()){
test1 menu = new test1();
menu.setVisible(true);
setVisible(false);
sUsername = jTextField1.getText();
sPassword = new String(jTextField2.getText());
dispose();
}
else{
JOptionPane.showMessageDialog(null,"รหัสผ่านผิดพลาด");
jTextField1.setText("");
jTextField2.setText("");
}
con.close();
}
catch(Exception e){
JOptionPane.showMessageDialog(null,e);
}
}
[/code]