Architecture 在JDBC中使用DAO
我的体系结构如下所示: (客户端:android,服务器:web服务axis2) 嗯。我这样做是为了执行登录:Architecture 在JDBC中使用DAO,architecture,jdbc,dao,Architecture,Jdbc,Dao,我的体系结构如下所示: (客户端:android,服务器:web服务axis2) 嗯。我这样做是为了执行登录: LoginActivity.java: call the web service (using AsyncTask) Services.java ... public User login(String username, String passwd) { return userManager.login(username, passwd);
LoginActivity.java:
call the web service (using AsyncTask)
Services.java
...
public User login(String username, String passwd) {
return userManager.login(username, passwd);
}
UserManager.java:
...
public UserManager() {
IDaoUser dao = new DaoUserImpl();
}
public User login(String username, String passwd) {
return dao.login(username, passwd);
}
...
DaoUser.java
...
public User login(String username, String passwd);
DaoUserImpl.java:
...
public User login(String username, String passwd) {
/* JDBC stuff */
}
...
这种方法正确吗?(或者至少,这有意义吗?)。
在DaoUserImpl.java中,我只是检查是否存在用户名和passwd等于参数的用户(同样,我不知道这种方法是否正确)。
谢谢。总的来说,看起来你已经步入正轨了。建议进行两项渐进式改进:
谢谢。是的,我也认为我有太多的层,但我认为随着系统的发展,我将需要它们。我不太熟悉REST,但我会考虑它。此外,我使用SOAP代替REST,因为目前我不需要解析任何XML(用KSOAP2),我想用REST我需要解析这些响应。
LoginActivity.java:
call the web service (using AsyncTask)
Services.java
...
public User login(String username, String passwd) {
return userManager.login(username, passwd);
}
UserManager.java:
...
public UserManager() {
IDaoUser dao = new DaoUserImpl();
}
public User login(String username, String passwd) {
return dao.login(username, passwd);
}
...
DaoUser.java
...
public User login(String username, String passwd);
DaoUserImpl.java:
...
public User login(String username, String passwd) {
/* JDBC stuff */
}
...