简单粗暴JavaWeb-第三篇:通过controller实现页面跳转

现在实现一个最简单的登录页面:输入用户名和密码后,跳转到登录结果页面,提示登录结果。


1、编辑用户名及密码登录界面

首先重新编辑index.jsp首页,使其拥有一个form表单,包含用户名和密码,以及提交按钮,代码如下:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>
        首页
    </title>
</head>
<body>
    <form action="login" method="post">
        <input name="userName" type="text" />
        <input name="password" type="password"/>
        <input id="submitButton" type="submit" value="登录" />
    </form>
</body>
</html>

视图如下:


这里form中的action对应controller上的requestMapping,所以要有.html后缀就都要有,否则就都没有,不然匹配不上。这里的表单form通过submit按钮提交后,发起一个url为login的请求,然后映射到相应的controller。

2、写一个简单的跳转controller

代码如下:

@RequestMapping(value="login ")
public ModelAndView login(String userName,String password){
    CheckParam checkParam = new CheckParam();
    ModelAndView mav = new ModelAndView();
    mav.setViewName("/html/basic/loginSucess");
    mav.addObject("userName",userName);
    mav.addObject("password",password);
    mav.addObject("loginResult",checkParam.checkLoginParam(userName,password).getErrorMsg());
    return mav;
}
参数对应表单的内容,检验过后返回一个新视图,新视图jsp中有三个变量,变量名分别为userName、password和loginResult,通过addObject方法将变量绑定具体值传到视图中去。

3、编辑跳转后的视图文件

新视图的代码比较简单,如下

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
账号:${userName}
密码:${password}
${loginResult}
</body>
</html>


显示结果如图

用户的信息是当做常量存在了类中,后面用数据库进行实现。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值