SSH问题请教
好久没写SSH了,最近写了一个登录发现好多问题,请大侠赐教!
action部分:
- Java code
public String login() throws Exception{ System.out.print(users.getUname()); System.out.print(users.getUpwd()); try { Users loginUser=loginservice.login(users.getUname(),users.getUpwd()); if(loginUser!=null){ ActionContext context=ActionContext.getContext(); context.getSession().put("LOGINUSER", loginUser); return SUCCESS; } } catch (Exception e) { log.error("登录查询失败", e); return ERROR; } return INPUT; }service部分:
- Java code
public Users login(String uname,String upass){ List list=usersDAO.findByUname(uname); if(list==null ||list.size()==0){ return null; } Users users=(Users)usersDAO.findByUname(uname).get(0); if(users==null){ return null; } if(uname.equals(users.getUname())&&upass.equals(users.getUpwd())){ return users; }else{ return null; } }dao部分:
- Java code
public List findByUname(Object uname) { return findByProperty(UNAME, uname); }- Java code
public List findByProperty(String propertyName, Object value) { log.debug("finding Users instance with property: " + propertyName + ", value: " + value); try { String queryString = "from Users as model where model." + propertyName + "= ?"; return getHibernateTemplate().find(queryString, value); } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } }问题是,加断点调试。走完这些方法就回到action里的return ERROR
[解决办法]
这个可能是你的daoimpl里出了问题,你换种方式试试.
[解决办法]
把你的queryString打印出来看看。
[解决办法]
先检查你的参数传到daoimpl没有,数据库是否有对应的记录存在,检查查询结果是否为空. 这是我的理解,希望对你有帮助,不过一般daoimpl都是自己写的吧.
[解决办法]
[解决办法]
http://www.iteye.com/problems/38304
你的问题很奇怪,应该是配置问题?
[解决办法]
代码没看出有什么问题,楼上说的很有可能,看看配置文件
[解决办法]
楼主把spring的配置文件粘出来,可能是bean没有配置对的问题。
[解决办法]
- Java code
<!-- 配置DAO组件的父模板 --> <bean id="daoTemplate" abstract="true"> <!-- 注入sessionFactory引用 --> <property name="sessionFactory" ref="sessionFactory"/> </bean> <!-- 流水号 --> <bean id="sequenceDao" parent="daoTemplate" class="com.cms.dao.impl.SequenceDaoImpl" />
[解决办法]
<bean id="UsersDao" class="com.foraise.dao.impl.UsersDao">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
id="UsersDao" 改成小写 id="usersDao" 再试试。