public class loginDao extends HibernateDaoSupport implements IloginDao{ public List login(user user) {
try{String hql="from java_test where name='"+user.getUserName()+"' and pwd='"+user.getPassWord()+"'";
System.out.print("------"+hql);
List list =this.getHibernateTemplate().find(hql);
if(list.size()>0){
System.out.println(list);
return list;
}else return null;
}catch (Exception e){
e.printStackTrace();
return null;
}
}
}public class LoginService implements ILoginService{
private IloginDao loginDao; public IloginDao getLoginDao() {
return loginDao;
}
public void setLoginDao(IloginDao loginDao) {
this.loginDao = loginDao;
} public List login(user user) {
return this.getLoginDao().login(user);
}
}
public class LoginAction {
private ILoginService loginservice;
private user user;
public ILoginService getLoginservice() {
return loginservice;
}
public void setLoginservice(ILoginService loginservice) {
this.loginservice = loginservice;
} public user getUser() {
return user;
}
public void setUser(user user) {
this.user = user;
}
public String execute() throws Exception {
user.setUserName(user.getUserName());
System.out.println(user.getUserName());
user.setPassWord(user.getPassWord());
System.out.println(user.getPassWord());
List list=loginservice.login(user); if (list!=null&&list.size()>0) {
System.out.println("登陆成功");
ServletActionContext.getRequest().setAttribute("list", list);
return "success";}
else {
return "error";
}
}
}<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="Struts2" extends="struts-default">
<action name="LoginAction" class="com.test.action.LoginAction" method="execute">
<result name="error">/index.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>
<constant name="struts.objectFactory" value="spring" />
</struts> <?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation"
value="classpath:hibernate.cfg.xml">
</property>
</bean>
<!-- dao___sessionFactory -->
<bean id="loginDao" class="com.test.dao.loginDao">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean id="loginService" class="com.test.service.LoginService">
<property name="loginDao" ref="loginDao"></property>
</bean>
<bean id="loginAction" class="com.test.action.LoginAction">
<property name="loginservice" ref="loginService"></property>
</bean>
</beans><?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
</web-app>求解,为什么都没调用到hql语句????是注入错误吗???
try{String hql="from java_test where name='"+user.getUserName()+"' and pwd='"+user.getPassWord()+"'";
System.out.print("------"+hql);
List list =this.getHibernateTemplate().find(hql);
if(list.size()>0){
System.out.println(list);
return list;
}else return null;
}catch (Exception e){
e.printStackTrace();
return null;
}
}
}public class LoginService implements ILoginService{
private IloginDao loginDao; public IloginDao getLoginDao() {
return loginDao;
}
public void setLoginDao(IloginDao loginDao) {
this.loginDao = loginDao;
} public List login(user user) {
return this.getLoginDao().login(user);
}
}
public class LoginAction {
private ILoginService loginservice;
private user user;
public ILoginService getLoginservice() {
return loginservice;
}
public void setLoginservice(ILoginService loginservice) {
this.loginservice = loginservice;
} public user getUser() {
return user;
}
public void setUser(user user) {
this.user = user;
}
public String execute() throws Exception {
user.setUserName(user.getUserName());
System.out.println(user.getUserName());
user.setPassWord(user.getPassWord());
System.out.println(user.getPassWord());
List list=loginservice.login(user); if (list!=null&&list.size()>0) {
System.out.println("登陆成功");
ServletActionContext.getRequest().setAttribute("list", list);
return "success";}
else {
return "error";
}
}
}<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="Struts2" extends="struts-default">
<action name="LoginAction" class="com.test.action.LoginAction" method="execute">
<result name="error">/index.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>
<constant name="struts.objectFactory" value="spring" />
</struts> <?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation"
value="classpath:hibernate.cfg.xml">
</property>
</bean>
<!-- dao___sessionFactory -->
<bean id="loginDao" class="com.test.dao.loginDao">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean id="loginService" class="com.test.service.LoginService">
<property name="loginDao" ref="loginDao"></property>
</bean>
<bean id="loginAction" class="com.test.action.LoginAction">
<property name="loginservice" ref="loginService"></property>
</bean>
</beans><?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
</web-app>求解,为什么都没调用到hql语句????是注入错误吗???
com.test.action.LoginAction.execute(LoginAction.java:33)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:130)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:165)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:179)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.26 logs.
--------------------------------------------------------------------------------Apache Tomcat/6.0.26错误
user.setUserName(user.getUserName());
System.out.println(user.getUserName());
user.setPassWord(user.getPassWord());
System.out.println(user.getPassWord());两个输出的值是什么?另:这代码跟没写一样...
建议新new一个user1进行set,然后
List list=loginservice.login(user1);
user是你定义的一个对象,没有实例化吧,必然空指针
现在撒分咯
嘿嘿,其实是struts文件配置错了struts里面的那个class帮错值了