结构化的jsp页面

include使用:

在jsp中用<%@include file=”“>来引入其他jsp页面。
先写foot.jsp

    <body>
    <hr>
    <a>copyRight@2017-2019</a>
</body>

再写test.jsp

<body>
    <h1>this is the test of foot include</h1>
    <h3>i found a girl</h3>
    <%@include file ="foot.jsp" %>
</body>

结果如下:
这里写图片描述
超级easy!
如果改变foot.jsp的值,包含这个jsp的jsp文件不会发生相应改变,因为目标jsp在将foot.jsp编译并转换成servlet,只是一次进行,下次还是会用第一次转换的serverlet。jsp提供了动态机制:
     <jsp:include page = "foot.jsp" flush="true">

MVC结构

对于一个应用程序来说,页面之间切换,页面显示,数据处理等等业务混在一起对于维护是极为不利的,因而出现了这样的jsp结构用来组织web应用中的逻辑和显示的关系。
这里写图片描述
这样Model 就是javabean处理逻辑或者数据,View 用来显示对应页面,Controller 用来控制请求到对应视图和做相应逻辑处理及处理数据。三者分开降低耦合。

实践

表示用户登录的html页面,提供用户输入,将数据发送给控制器:

    <body>
<form action="Controller.jsp" method=post>
    <table>
    <tr>
        <td>ID:</td>
        <td><input type=text name="id"></td>
    </tr>
    <tr>
        <td>passWord:</td>
        <td><input type="text" name="password"></td>
    </tr>
    </table>
    <input type="submit" value="submit" id="user1"/>
</form> 
</body>

控制器根据request里面parameter的数据进行控制转发给指定页面:

<body>
    <%  
    String id = request.getParameter("id");
    String pw = request.getParameter("password");
    out.println(id+"  "+pw);
    if(id.equals("mtdsq")&&pw.equals("123qwe")){
    %>
    <jsp:forward page="welcome.jsp">
        <jsp:param value="<%=id %>" name="id"/>
    </jsp:forward>  
    <%}else{%>
        <jsp:forward page="wrong.jsp"/>
    <%}%>
</body>

分别添加正确和错误页面:
welcome页面

<body>
    <h1>WELCOME "<%=request.getParameter("id") %>"</h1>
</body>

wrong页面

    <body>
    <h1>GET OUT</h1>
</body>

一个简单的MVC模型就有了。这里有个<jsp:forward>是用来转发页面的,直接跳转到指定页面当前负责转发的页面是不显示的。里面也有<jsp:param>参数,用以传递数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值