解决方案 »
- showModalDialog 取得父窗口的中文值
- STRUTS2 能不能向<result type="redirectAction">/categories.action </result> 中的actionz传值
- apache上传组件的问题
- 请问大家什么是DAO?
- 为什么总是Remote Client Aborted Request, IOException: Connection reset by peer: socket write error
- 第一次用NetBeans5开发jsp感觉比eclipse3要好,但就不知道如何在保存java文件时自动编译成class
- tomcat,跑了半年了,突然很消耗性能
- 有太多属性的类的储存问题
- jsp中switch中的case "此处可否为字串?":???在线等!
- SSH项目在服务器启动时无法加载部分action类
- 有没有做过mysql增量和全备份的?
- 谷歌浏览器打印设置的问题!!!!!!!!!!!!!!!!!!!!!!!!!!
<context:component-scan base-package="com.jfpal">
<context:include-filter type="regex"
expression=".*.*.action.*" />
<!-- 这里排除service,防止事务失效 -->
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>
</context:component-scan>
<context:include-filter expression=".*Controller$" type="regex"/>
</context:component-scan>应该是等同的吧
我按你的方法配置后结果还是一样的,在MVC配置扫描action包下的controller的时候,会报没有service的错(controller里有各种service的自动注入)给我的感觉就像两个配置是独立开,没有相互影响一样(核心配置扫描到的service在mvc扫描的时候没生效)不知道是不是我的web.xml配置有问题
你这里貌似也没有说到扫描Service类呀
我也不知道我说得对不对
首先也谢谢你回答我的问题spring核心配置是不是在springmvc配置前边儿扫描?<context:component-scan base-package="com.stock">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>如果是的话,这个配置是说在spring核心扫描的时候不扫描Controller,那Service和dao应该在这次扫描中就添加到spring 容器里了吧.
在springmvc扫描的时候,service应该是存在的呀,这里我不是很理解.
感谢你的答复,我这里附上我的dao,service,action代码dao:(部分代码)@Repository
public class UserDao extends AbstractDao<User, Long> { protected Class<User> getClassType() {
return User.class;
} public User findByUserName(User o) {
return super.queryForObject("SELECT_USER_INFO", o.getUserName());
}
service:(部分代码)@Service
@Transactional
public class UserService extends AbstractService<User, Long> { private UserDao userDao;
public UserDao getUserDao() {
return userDao;
} @Autowired
public void setUserDao(UserDao userDao) {
this.setBaseDao(userDao);
this.userDao = userDao;
}action:(部分代码)@Controller
public class LoginController { private Log log = LogFactory.getLog(this.getClass());
private String path;
@Autowired
private UserService userService;
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String inLogin(Map<String, Object> model) {
return "login/login";
} @RequestMapping({ "/", "/welcome" })
public String inMain(Map<String, Object> model, HttpSession session) {
path = "main/main";
holdCurrentUser(model, session); return path;
}
@Autowired
public void setUserDao(UserDao userDao) {
this.setBaseDao(userDao);
this.userDao = userDao;
}对Spring不太了解,但在setUserDao(UserDao userDao)里递归调用setUserDao(dao),会否造成无限循环??
解决办法,核心扫描dao,service,服务扫描action
ps:如有使用security注意userService,切记切记