현재 Spring 및 Hibernate 응용 프로그램에서 작업 할 때 또 다른 문제점이 있습니다. 내 DAO 인터페이스/클래스뿐만 아니라 내 서비스 인터페이스/클래스 물론 엔터티를 빌드했습니다.Spring/Hibernate 응용 프로그램은 @ Transactional 없이만 작동합니다.
모든 것이 잘 전개되고 있지만 최대한 빨리 내 XXXServiceImpl 클래스에 @Transactional
주석을 추가 할 때, 내가 배포 과정에서 다음과 같은 예외가 (글래스 피시와 톰캣 테스트) : 물론
Caused by: java.lang.IllegalStateException: Cannot convert value of type [com.sun.proxy.$Proxy25 implementing net.dreamcode.bleevle.persistence.service.IntranetService,org.springframework.aop.SpringProxy,org.springframework.aop.framework.Advised] to required type [net.dreamcode.bleevle.persistence.service.impl.IntranetServiceImpl] for property 'intranetService': no matching editors or conversion strategy found
, 나는 시도 그것에 대해 뭔가를 찾을 수 있습니다. 기본적으로 인터페이스와 클래스가 주석을 추가 할 때 일치하지 않기 때문입니다. 하지만 인터페이스에 주석을 추가하려고 시도했는데 문제 해결에 도움이되지 않아 위에서 언급 한 것과 같은 오류가 발생했습니다.
BasicService (인터페이스) :
public interface BasicService<T> {
T findById(String id);
void create(T entity);
void delete(T entity);
void update(T entity);
}
UserService (인터페이스) :
import net.dreamcode.bleevle.data.User;
public interface UserService extends BasicService<User> {
User findByName(String name);
}
다음
내 프로젝트 (
BasicService
,
UserService
및
UserServiceImpl
)에서 몇 가지 예제 코드입니다
UserServiceImpl (클래스) :
public class UserServiceImpl implements UserService {
@Autowired
UserDao userDao;
@Override
public User findByName(String name) {
return userDao.findByName(name);
}
@Override
public User findById(String id) {
return userDao.findById(id);
}
@Override
public void create(User entity) {
userDao.create(entity);
}
@Override
public void delete(User entity) {
userDao.delete(entity);
}
@Override
public void update(User entity) {
userDao.update(entity);
}
public UserDao getUserDao() {
return userDao;
}
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
}
패턴 이런 종류의 (나는 그것이 서비스 및 다오 재료와 디자인 패턴의 어떤 것 같아요)로 작업 할 때 할 수있는 특정 일이 있습니까?
모든 종류의 도움을 주시면 감사하겠습니다. 미리 감사드립니다!
대단히 감사합니다. 내 클래스에 IntranetServiceImpl 속성이 없다고하더라도 setter는 매개 변수로 구현되어 있습니다. 이제 MySQL과 다른 오류가 발생하지만 직접 고칠 수 있다고 생각합니다. 다시 한 번 감사드립니다! – MrPixelDream