zoukankan      html  css  js  c++  java
  • java之jsp页面语法

    jsp页面相比静态页面html来说,就是多了一些脚本,利用这些脚本来动态地改变页面内容的显示。

    1.JSP脚本写法

    1 <%            这里写java代码;            %>
    2 <%!     JSP声明,用来声明变量、方法;       %>
    3 <%=               表达式                %>
    4 <%-- JSP注释 --%>

    注意:表达式后面不能接分号。

    2.JSP指令

    1 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
    2 <%@ include file="login_success.jsp" %>

    page指令,基本上可以说是每个jsp页面的标配吧,它定义了这个jsp页面脚本语言--java,解析类型--html,

    内容编码--utf-8,以及页面的编码-utf-8.

    include指令,这个指令相当于html的iframe标签,实现在这个页面中内嵌一个其他页面,这个指令位置放在

    哪,那么新页面的渲染位置就在哪。

    3.JSP动作

    表单获取用户名、密码;

    1 <%--用javabean规则建一个Users类(eco包下),实例化一个对象newUser --%>
    2 <jsp:useBean id="newUser" class="eco.Users" scope="page"/>
    3 <%--设置newUser的属性值,值来自于表单,*号表示取得所有属性值赋给对应的newUser对象 --%>
    4 <%--属性名如果不写*,可以填newUser对应的属性,但是没有填的属性就获取不到 --%>
    5 <jsp:setProperty name="newUser" property="*" />  
    6 <%--调用newUser对象的getter方法获取属性值,渲染到页面 --%>
    7 姓名:<%=newUser.getUsername()  %>
    8 密码:<%=newUser.getPassword()  %>

    注意:登录界面填写的用户名、密码数据类型一定要和Users类中规定的数据类型一致!

    手动设置输出的用户名、密码;

     1 <form id="login" action="login.jsp?mypassword=88888" method="post">
     2 <jsp:useBean id="newUser" class="eco.Users" scope="page"/>
    3 <%--手动设置username的值vaule--%> 4 <jsp:setProperty name="newUser" property="username" value="eco" />
    5 <%--手动设置password的值,值来自于表单发送请求时设置的mypassword值--%> 6 <jsp:setProperty name="newUser" property="password" param="mypassword" />

    7 姓名:<%=newUser.getUsername() %> 8 密码:<%=newUser.getPassword() %>

    上面最后一个是将发送请求时URL里的mypassword值取出赋值给newUser对象的password属性;

    <%=request.getParameter("mypassword") %>这句命令即是获取发送请求时URL里的mypassword值。

    1 <jsp:include page="login_success.jsp" flush="true" />

    这是一个include动作,功能和其指令一样,page属性表示要插入的页面,flush属性表示是否从缓冲中读取。

    1 <jsp:forward page="login_success.jsp" />

    这是一个服务器转发动作,相当于

    request.getRequestDispatcher("login_success.jsp").forward(request, response);

    将登录页面发来的请求转发到login_success.jsp页面,这个过程是一次请求,虽然经过了两个页面。

    1 <jsp:forward page="login_success.jsp" >
    2      <jsp:param name="e-mail" value="eco@163.com" />
    3 </jsp:forward>

    parameter动作通常和forward一起使用,登录表单发送请求给当前页面时只保存了用户名、密码两个信息,

    当前页面要转发这次请求给login_success.jsp页面,转发之前,为这次请求添加了一个e-mail属性,那么,

    我们可以在login_success.jsp页面通过<%=request.getParameter("e-mail") %>获取之前添加的e-mail属性。

  • 相关阅读:
    为图片指定区域添加链接
    数值取值范围问题
    【leetcode】柱状图中最大的矩形(第二遍)
    【leetcode 33】搜索旋转排序数组(第二遍)
    【Educational Codeforces Round 81 (Rated for Div. 2) C】Obtain The String
    【Educational Codeforces Round 81 (Rated for Div. 2) B】Infinite Prefixes
    【Educational Codeforces Round 81 (Rated for Div. 2) A】Display The Number
    【Codeforces 716B】Complete the Word
    一个简陋的留言板
    HTML,CSS,JavaScript,AJAX,JSP,Servlet,JDBC,Structs,Spring,Hibernate,Xml等概念
  • 原文地址:https://www.cnblogs.com/eco-just/p/7793187.html
Copyright © 2011-2022 走看看