jsp中基本操作

空一格

对bean中单个字段的操作 类似于操作bean中字段的set方法与get方法
<body>
    <jsp:useBean id="produce" class="com.lyq.bean.Produce"></jsp:useBean>
    <jsp:setProperty property="price" name="produce" value="8888.88"/>
    <div>
        <ul>
            <li>
                价格:<jsp:getProperty property="price" name="produce"/>
            </li>
        </ul>
    </div>
</body>
对bean中所有字段的操作
<body>
   <%request.setCharacterEncoding("UTF-8");%> <jsp:useBean id="produce" class="com.lyq.bean.Produce" scope="page">
    <jsp:setProperty name="produce" property="*"/>
  </jsp:useBean> <div> <ul> <li> 价格:<jsp:getProperty property="price" name="produce"/> </li>
       <li>
                名称:<jsp:getProperty property="name" name="produce"/>
            </li>
</ul> </div> </body>
显示系统时间
<body>
        <%
            Date date = new Date();
            String year = String.format("%tY", date); //将date进行格式化
            String month = String.format("%tm", date);
            String day = String.format("%td", date);
            String hour = String.format("%tH", date); //将date进行格式化
            String minute = String.format("%tM", date);
            String second = String.format("%tS", date);
            String dateStr = year + "" + month + "" + day + "" + hour + ""
                    + minute + "" + second + "";
        %>
        现在时间是:<%=dateStr %>
    </body>
java显示系统时间
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="java.util.*"%>
    <%@ page import="java.text.SimpleDateFormat"%>

<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>显示系统时间</title>
<base href="<%=basePath%>">
</head> <body> <% Date date = new Date(); //获取日期对象 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //设置日期时间格式 String today = df.format(date); //获取当前系统日期 %> 当前时间:<%=today%> <!-- 输出系统时间 --> </body> </html>
文件包含include指令
<%@ include file="top.jsp"%>
使用jsp:include动作标识包含文件
<jsp:include page="top.jsp"/>
jsp商标:一般被包含在footer中
<%@ page pageEncoding="UTF-8"%>
<%
String copyright="&nbsp;All Copyright &copy; 2020 XXXX有限公司";
%>
<table width="778" height="61" border="0" cellpadding="0" cellspacing="0" background="images/copyright.JPG">
  <tr>
    <td> <%= copyright %></td>
  </tr>
</table>
top文件:一般包含在网站开头
<%@ page pageEncoding="UTF-8"%>
<img src="images/banner.JPG">
中转页
<jsp:forward page="login.jsp"/>
重定向(地址栏会改变,变成重定向到地址)
<%response.sendRedirect("login.jsp"); %>
转发(地址栏不会改变)
request.getRequestDispatcher("/list.jsp").forward(request,response);
使用request对象获取请求参数值
页面1:
<body>
<a href="deal.jsp?id=1&user=">处理页</a>
</body>
页面2:
<%
String id=request.getParameter("id");    //获取id参数的值
%>
<body>
id参数的值为:<%=id %>
</body>
Cookie:
通过cookie保存并读取用户登录信息
<body>
<%
    Cookie[ ]   cookies = request.getCookies();//从request中获得Cookie对象的集合
    String user = "";    //登录用户
    String date = "";    //注册的时间
    if (cookies != null) {
        for (int i = 0; i < cookies.length; i++) {    //遍历cookie对象的集合
            if (cookies[i].getName().equals("mrCookie")) {//如果cookie对象的名称为mrCookie
                user = URLDecoder.decode(cookies[i].getValue().split("#")[0]);//获取用户名
                date = cookies[i].getValue().split("#")[1];//获取注册时间
            }
        }
    }
    if ("".equals(user) && "".equals(date)) {//如果没有注册
%>
        游客您好,欢迎您初次光临!
        <form action="deal.jsp" method="post">
            请输入姓名:<input name="user" type="text" value="">
            <input type="submit" value="确定">
        </form>
<%
    } else {//已经注册
%>
        欢迎[<b><%=user %></b>]再次光临<br>
        您注册的时间是:<%=date %>
<%
    }
%>
</body>

通过cookie保存用户登陆信息
<body>
<%
    request.setCharacterEncoding("utf-8");

    String user=URLEncoder.encode(request.getParameter("user"),"utf-8");    //获取用户名
    Cookie cookie = new Cookie("mrCookie", user+"#"+new java.util.Date().toLocaleString());
    cookie.setMaxAge(60*60*24*30);        //设置cookie有效期30天
    response.addCookie(cookie);    //保存cookie
%>
</body>
解决中文乱码
页面1:
<body>
<a href="show.jsp?name=张三&sex=男">解决中文乱码</a>
</body>

页面2:
<body>
name参数的值为:<%=new String(request.getParameter("name").getBytes("iso-8859-1"),"UTF-8") %><br>
sex参数的值为:<%=request.getParameter("sex") %>
</body>
使用request对象的相关方法获取客户端信息
<body>
<br>客户提交信息的方式:<%=request.getMethod()%>
<br>使用的协议:<%=request.getProtocol()%>
<br>获取发出请求字符串的客户端地址:<%=request.getRequestURI()%>
<br>获取发出请求字符串的客户端地址:<%=request.getRequestURL()%>
<br>获取提交数据的客户端IP地址:<%=request.getRemoteAddr()%>
<br>获取服务器端口号:<%=request.getServerPort()%>
<br>获取服务器的名称:<%=request.getServerName()%>
<br>获取客户端的主机名:<%=request.getRemoteHost()%>
<br>获取客户端所请求的脚本文件的文件路径:<%=request.getServletPath()%>
<br>获得Http协议定义的文件头信息Host的值:<%=request.getHeader("host")%>
<br>获得Http协议定义的文件头信息User-Agent的值:<%=request.getHeader("user-agent")%>
<br>获得Http协议定义的文件头信息accept-language的值:<%=request.getHeader("accept-language")%>
<br>获得请求文件的绝对路径:<%=request.getRealPath("index.jsp")%>
</body>
Session:
页面1:session产生
<%
      String name = request.getParameter("name");        //获取用户填写的用户名
      session.setAttribute("name",name);                //将用户名保存在session对象中
 %>
页面2:session获取
 <%
      
      String name = (String)session.getAttribute("name");        //获取保存在session范围内的对象
 %>
page对象各方法的应用
<body>
<%!    Object object;     //声明一个Object型的变量  %>
<ul>
<li>getClass()方法的返回值:<%=page.getClass()%></li>
<li>hashCode()方法的返回值:<%=page.hashCode()%></li>
<li>toString()方法的返回值:<%=page.toString()%></li>
<li>与Object对象比较的返回值:<%=page.equals(object)%></li>
<li>与this对象比较的返回值:<%=page.equals(this)%></li>
</ul>
</body>
30秒定时刷新到另外一个页面(可带参数)
<%
response.setHeader("refresh","30;URL=index.jsp");
%>

 

posted @ 2020-02-06 22:08  李重黎  阅读(263)  评论(0)    收藏  举报