以SpringMVC注解的形式 如何从Controller跳到另一个Controller 然后在转发到jsp页面

使用springmvc 注解的形式实现

在这里就不说springmvc框架的搭建了 上篇文章已经写了springmvc的框架是如何搭建的

在这里写一个小例子 比喻登录(登录成功跳到一个Controller,登录失败跳到一个jsp页面)

以下是关键的代码


一:Login类的代码

@Controller
@RequestMapping("/admin/login.do")
public class AdminLogin extends BaseAction{
//使用了@Autowired就不用生成get set方法了
@Autowired
private IAdminServlet adminServlet;

public String login(String adminname,String password){

Admin admin=new Admin(adminname, password);
List<Admin> adminslisList=adminServlet.getNameByPwd(admin);

if (adminslisList.size()!=0) {
//将对象保存到session中
super.getSession().setAttribute("admin", adminslisList.get(0));
  System.out.println("登录成功");
  //使用关键字redirect重定向  重定向到Select_MerchantAction类中

  return "redirect:/merchant/seelct.do?method=cc";

}else {
   System.out.println("登录失败");

   //打印出错误信息

   super.getRequest().setAttribute("ErrorMsg", "用户名或者密码错误!");
   return "index";
  }
}


二:登录成功之后要重定向的Controller

@Controller
@RequestMapping("/merchant/seelct.do")
public class Select_MerchantAction extends BaseAction {
 
    @Autowired
    private IMerchantServlet merchantServlet;

    //查询全部的
    @RequestMapping(params = "method=cc")
    public String selectAll(){
    List<Merchant> listMerchants=merchantServlet.getByname(null);

    //将数据保存到Request

    super.getRequest().setAttribute("listMerchants", listMerchants);

    //转发到merchant_list.jsp页面

    return "merchant_list";
    }

}


三:merchant_list.jsp页面的核心代码

merchant_list.jsp页面遍历保存在request中的数据

<c:forEach items="${requestScope.listMerchants}" var="Merchant">              
      <tr>
             <td>${Merchant.merchantTypeName}</td>
             <td>${Merchant.areaName}</td>
             <td>${Merchant.merchantName}</td>
             <td>${Merchant.merchantPhone}</td>
             <td>${Merchant.merchantAddress}</td>
      </tr>
</c:forEach>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值