按鈕的DTO和DAO實現
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
String login, password;
login = jTextField1.getText().trim();
password = jTextField2.getText().trim();
System.out.println("hello");
RegisterDAO r = new RegisterDAO();
r.insert(login, password);
}
代碼爲DAO類的Click事件代碼
public class RegisterDAO {
private String login, password;
public void insert(String login ,String password)
{
this.login= login;
this.password = password;
RegisterDTO r = new RegisterDTO();
r.setLogin(login);
r.setPass(password);
java.sql.Connection con = new DBConnection().getConnection();
if (con!=null){
System.out.println("the connection object is active ");
PreparedStatement pst;
String Q;
int x=1;
Q="insert into x(a,b) values(?,?)";
try {
pst=con.prepareStatement(Q);
pst.setString(x++, login);
pst.setString(x++,password);
int a=pst.executeUpdate();
System.out.println(a);
}
catch (Exception ex)
{
ex.printStackTrace();
}
//JOptionPane.showMessageDialog(null, s, s, x, null);
}
我的DTO類
public class RegisterDTO {
private String a;
private String b;
public void setLogin(String a)
{
this.a = a ;
System.out.println(a);
}
public String getLogin()
{
return a;
}
public void setPass(String b)
{
this.b = b;
System.out.println(b);
}
public String getPass()
{
return b;
}
1)我的問題是,我無法保留setter和getter方法存儲在dto類中的值。使用dto獲取價值的方法有哪些? 我也想訪問其他頁面上的值,但我無法獲得該值dto類中的打印語句顯示該值存儲在變量 我創建的應用程序基於swing並且我不知道那是擺動支持會議管理,如果它支持會議而不是幫助我實現這一點。
2)我想知道,我在DAO的情況下,我下面和DTO是正確的還是不計算策略
3)我想知道,訪問DTO到每一個網頁我是否需要創建dto的對象來訪問它,如果是這種情況,是否會導致多對象創建時的不明確性
4)我可以直接訪問存儲在dto通過getter方法(沒有數據庫訪問)。我已經創建了RET()方法檢索在我的DAO類從數據庫中的數據
public void ret(String login )
{
login= this.login ;
java.sql.Connection con = new DBConnection().getConnection();
if (con!=null){
System.out.println("the connection object is active ");
PreparedStatement pst;
String Q;
int x=1;
Q="select * form x where a=?";
try {
pst=con.prepareStatement(Q);
pst.setString(x++, login);
ResultSet rs= null;
rs = pst.executeUpdate();
}
上述代碼結果中的誤差,該結果集是不能夠處理出的executeUpdate的整數( ) 方法 。我是否需要爲此目的進行投射,因爲我無法弄清楚整數值如何投射到結果集中。我也想知道如何訪問單個字段作爲結果集顯示整個元組。結果集是如何能夠將值存儲到的getter方法的各個領域
*「上述代碼導致錯誤,結果集無法處理executeUpdate()方法中的整數」*這是因爲[executeUpdate()](http://docs.oracle.com /javase/7/docs/api/java/sql/Statement.html#executeUpdate%28java.lang.String%29)不會返回ResultSet,而是返回一個整數(請參閱API)。我認爲你的意思是[executeQuery()](http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#executeQuery%28java.lang.String%29),它返回一個結果集按預期。 – dic19