我使用SSH框架·在框架中创建了一个父类BaseAction(继承了DispatchAction)·其他的*Action都继承他(BaseAction)。
我有个userAction继承BaseAction··在userAction中有3个方法··添加,修改,查询,为什么在执行方法的时候没有更新到数据库中去··我只有把其他2个方法给注释了才可以·请问怎么回事··求解·
我有个userAction继承BaseAction··在userAction中有3个方法··添加,修改,查询,为什么在执行方法的时候没有更新到数据库中去··我只有把其他2个方法给注释了才可以·请问怎么回事··求解·
解决方案 »
- jsp表单的值到Servlet时,给javabean赋值不成功。
- 【新人求助100分】新手求教,关于开发自动化的问题。
- 从文件读数据、排序、写数据,写的很笨拙,大家给些意见
- tomcat端口
- 请高手指点一下这个关于数据库操作Bean的问题,急急急......
- 如何在tomcat中设置自己的主页!
- 初学JSP,运行时出错,请大哥大姐指点!!
- JSP笔记:forward和include方法的区别
- 为什么在分页的时候,第一页显示正常,按下一页,到第二页,变量里的中文字符就变乱码了,哪位朋友能帮帮我?
- linux下只装resin不装apache可以否?
- 急,在线等!做下载功能的时候怎么让迅雷这些下载工具获取到文件的大小?
- 一种显示效果 请高手指点
package com.lstc.gm.hi.web.action;
import org.apache.struts.actions.DispatchAction;import com.lstc.gm.hi.service.All_Service;
public class BaseAction extends DispatchAction {
All_Service all_service; public All_Service getAll_service() {
return all_service;
} public void setAll_service(All_Service all_service) {
this.all_service = all_service;
}
}
userAction代码================================
package com.lstc.gm.hi.web.action;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;
import java.util.List;import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;import com.lstc.gm.hi.web.form.UserForm;import com.lstc.gm.hi.entity.GmCompetence;
import com.lstc.gm.hi.entity.GmUser;
public class UserAction extends BaseAction{
@Transactional(propagation=Propagation.REQUIRED)
public ActionForward Login_Action(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)
{
UserForm userForm = (UserForm) form;// TODO Auto-generated method stub
String password= userForm.getGmusers().getPassword();
String account =userForm.getGmusers().getAccount();
List gmuserList = this.getAll_service().getGmuser_service().findByAccount(account);
if(gmuserList.size() >0)
{
Iterator it = gmuserList.iterator();
while(it.hasNext())
{
GmUser gmuser = (GmUser)it.next();
if(gmuser.getAccount() !=null && gmuser.getPassword().equals(password))
{
request.getSession(true).setAttribute("GmUser",gmuser);
return mapping.findForward("index");
}
else
{
message(request, response);
}
}
}
else
{
message(request, response);
}
return null;
}
public ActionForward Add_Action(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)
{
UserForm userForm = (UserForm) form;// TODO Auto-generated method stub
String account = userForm.getAccount();
GmCompetence gmcompetence = new GmCompetence();
GmUser gmuser = new GmUser();
Integer id =userForm.getGmusers().getCompetenceid();
gmcompetence =this.getAll_service().getGmcompetence_service().findById(new Integer(id));
gmuser.setAccount(userForm.getGmusers().getAccount());
gmuser.setAddress(userForm.getGmusers().getAddress());
gmuser.setCompetenceid(userForm.getGmusers().getCompetenceid());
gmuser.setGmCompetence(gmcompetence);
gmuser.setName(userForm.getGmusers().getName());
gmuser.setPassword(userForm.getGmusers().getPassword());
gmuser.setPhone(userForm.getGmusers().getPhone());
gmuser.setQq(userForm.getGmusers().getQq());
gmuser.setTel(userForm.getGmusers().getTel());
this.getAll_service().getGmuser_service().Save_gmuser(gmuser);
int i= gmuser.getUid();
System.out.println(i);
if(i>0)
{
System.out.println("成功!");
}
else
{
System.out.println("失败!");
}
return null;
}
public ActionForward Update_Action(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)
{
UserForm userForm = (UserForm) form;
int i=0;
Integer uid = Integer.valueOf(request.getParameter("Uid"));
String password = userForm.getThepaw();
GmUser gmuser = new GmUser();
gmuser = this.all_service.getGmuser_service().get_gmuser_byID(uid);
gmuser.setPassword(password);
this.getAll_service().getGmuser_service().update_GmUser(gmuser);
System.out.println(password);
System.out.println(gmuser.getName());
System.out.println(gmuser.getPassword());
System.out.println(gmuser.getUid());
if(uid>0)
{
this.getAll_service().getGmuser_service().update_password(gmuser);
if(i>0)
{
System.out.println("成功");
}
else
{
System.out.println("失败");
}
}
System.out.println("成功");
return null;
}
private void message(HttpServletRequest request,
HttpServletResponse response) {
String message;
message="对不起!没有该用户";
String forward="error.jsp?msg="+message;
try {
request.getRequestDispatcher(forward).forward(request,response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
有码有真相
配置是否对?
配置中添加: parameter="method"
表单请求为:xxxx.do?method=Add_Action
这样才能请求你的方法。
比如参数名为:operate
要执行添加要传一个operate=Add_Action
要执行更新:operate=Update_Action
要执行登录:operate=Login_Action
operate传的是要执行哪个方法,好好检查检查。
XML里要配置的这个parameter 参数懒得打字了http://hi.baidu.com/javahua/blog/item/57890dce796f8b38b700c845.html很清楚。
··要是在userAction中只有Add_Action方法的话是可以的··数据库来的数据库也添加了·就是多一个方法的话··就有问题了