私は春までの初心者です。次のエラーに直面しています。私を助けてください。 ありがとうございます。これはMVC DAOの正しい方法ですか? autowired依存関係の注入が失敗したようなエラーが発生しました
ユーザインタフェース
package com.system.dao;
import java.util.List;
import com.system.model.User;
public interface UserDAO {
public String createOrUpdate(User user);
public List<User> getAllUser();
public String delete(User user);
}
ユーザインタフェースの実装
public class UserDAOImpl implements UserDAO {
private NamedParameterJdbcTemplate jdbc;
@Autowired
public void setJdbc(DataSource jdbc) {
this.jdbc = new NamedParameterJdbcTemplate(jdbc);
}
@Transactional
@Override
public String createOrUpdate(User user) {
BeanPropertySqlParameterSource params = new BeanPropertySqlParameterSource(user);
if (user.isUpdate()) {
jdbc.update(
"update login set login_id=:loginId,login_password:loginPassword,user_name=:userName,user_contact=:userContact,user_email=:userEmail where user_id=:userId",
params);
return "User Updated";
} else {
jdbc.update(
"insert into login(login_id,login_password,user_name,user_contact,user_email) values(:loginId,:loginPassword,:userName,:userContact,:userEmail)",
params);
return "User added";
}
}
@Override
public List<User> getAllUser() {
jdbc.query("select * from login", new RowMapper<User>() {
@Override
public User mapRow(ResultSet rs, int num) throws SQLException {
// TODO Auto-generated method stub
User user = new User();
user.setLoginId(rs.getString("login_id"));
user.setLoginPassword(rs.getString("login_password"));
user.setUserContact(rs.getString("user_contact"));
user.setUserEmail(rs.getString("user_email"));
user.setUserId(rs.getInt("user_id"));
user.setUserName(rs.getString("user_name"));
return user;
}
});
return null;
}
@Override
public String delete(User user) {
jdbc.update("delete from login where user_id:userId", new MapSqlParameterSource("userId", user.getUserId()));
return "User deleted";
}
}
ユーザサービス
package com.system.service;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.system.dao.impl.UserDAOImpl;
import com.system.model.User;
@Service
public class UserService {
private UserDAOImpl userDAOImpl;
@Autowired(required=true)
public void setUserDAOImpl(UserDAOImpl userDAOImpl) {
this.userDAOImpl = userDAOImpl;
}
public String createOrUpdate(User user) {
return userDAOImpl.createOrUpdate(user);
}
public List<User> getAllUser() {
return userDAOImpl.getAllUser();
}
public String delete(User user) {
return userDAOImpl.delete(user);
}
}
コンテキスト(DAOコンテキスト)
<context:annotation-config></context:annotation-config>
<context:component-scan base-package="com.system.dao">
</context:component-scan>
<context:component-scan base-package="com.system.dao.impl">
</context:component-scan>
<context:component-scan base-package="com.system.service">
</context:component-scan>
で続きを読みますか? :) – davidxxx
あなたはあなたの豆を定義しますか? – GVArt