1、request对象的使用

(1)编写一个包含有表单的JSP页面form.jsp,其中包含可以输入姓名和出生地的文本框,提交表单后在另一个页面中显示用户提交的姓名和出生地。请写出相应代码:

form.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>form</title>
</head>
<body>
<form action="display.jsp"method="post" name="name">
8 姓名:<input type="text" name="username"> 出生地:<input type="text" name="from"> <input type="submit" name="submit" value="提交"> </form> </body> </html>

display.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>display</title>
</head>
<body>
<% out.print("姓名:"+request.getParameter("from"));
out.print("<br>");
out.print("出生地:"+request.getParameter("username"));
%>
</body>
</html>

(2)编写一个名为shiyan5_2form.jsp的JSP文件,浏览效果如下图所示:

再编写一个名为shiyan5_2display.jsp的JSP文件,用来显示用户提交的信息,浏览效果如下图所示:

请编写相应代码:(注意中文乱码的处理):

shiyan5_2form.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>test2_1</title>
</head>
<body>
<p>请输入下列信息</p>
<form action="shiyan5_2display.jsp" method="post" name="name">
输入您的姓名:<input type="text" name="username"><br>
请选择您的性别:<input type="radio" name="sex" value="男">男
<input type="radio" name="sex" value="女">女<br>
您喜欢的歌手:<input type="checkbox" name="singer" value="张学友">张学友
<input type="checkbox" name="singer" value="李健">李健
<input type="checkbox" name="singer" value="刘德华">刘德华
<input type="checkbox" name="singer" value="王菲">王菲<br>
<input type="hidden" name="hide" value="这是隐藏信息">
<input type="submit" value="提交">
</form>
</body>
</html>

shiyan5_2display.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>test2_1</title>
</head>
<body>
<%
request.setCharacterEncoding("utf-8"); out.print(request.getParameter("username"));
out.print("<br>" + request.getParameter("sex") + "<br>");
String[] singer = request.getParameterValues("singer");
if (singer == null) {
out.print("请输入相关信息");
} else {
for (String s : singer) {
out.print(s + " ");
}
}
out.print("<br>" + request.getParameter("hide"));
%>
</body>
</html>

(3)编写一个shiyan5_3_a.jsp文件,浏览效果如下图所示:

单击“确认”超链接后,显示如下shiyan5_3_b.jsp页面:

请写出相应代码:

shiyan5_3_a.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>test2_1</title>
</head>
<body>
<p>信息确认:</p>
<hr>
<%
String name = "张三";
String banji = "2015级1班";
String project = "跳远";
out.print("姓名:"+name+",班级:"+banji+",申报项目:"+project);
%><br>
如信息无误,请点击<a href="shiyan5_3_b.jsp?name=张三&banji=2015级1班&project=跳远">确认</a>
</form>
</body>
</html>

shiyan5_3_b.jsp:

 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>test2_1</title>
</head>
<body>
<p>您的信息如下:</p>
<hr>
<%
request.setCharacterEncoding("utf-8");
out.print("姓名:"+request.getParameter("name")+"<br>");
out.print("班级:"+request.getParameter("banji")+"<br>");
out.print("项目:"+request.getParameter("project"));
%>
</body>
</html>

2、response对象的使用

(1)下面的JSP页面,如果请求该页面时想让页面以word方式打开,请在横线上填写正确的代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"%>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body bgcolor=cyan style="font-size:28px">

<p>学习response对象的setContentType方法</p>

</body>

</html>

 <% response.setContentType("application/msword;charset=UTF-8"); %>

(2)编写如下登录页面shiyan5_4.jsp:

在其中输入用户名和密码,如用户名和密码无误(正确的用户名和密码自定,如用户名为张三,密码为123456)则显示欢迎页面shiyan5_4_receive.jsp,如下图所示:

若用户或密码错误,则仍然显示登录页面,等待用户输入用户名和密码。此外,如用户直接请求shiyan5_4_receive.jsp,仍会显示登录页面。

请写出相应代码:

shiyan5_4.jsp:
 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title></title>
</head>
<body>
<p style="text-align: center;">系统登陆</p>
<hr>
<form action="shiyan5_4_receive.jsp" method="post" name="login" style="text-align: center">
用户名:<input type="text" name="username"><br><br>
密 码:<input type="password" name="password"><br><br><br>
<input type="submit" name="submit" value="确定">
<input type="reset" name="reset" value="取消">
</form>
</body>
</html>
shiyan5_4_recevie.jsp:
 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
request.setCharacterEncoding("utf-8");
String username = "";
String password = "";
username = request.getParameter("username");
password = request.getParameter("password");
if (username==null || password==null) {
response.sendRedirect("shiyan5_4.jsp");
}else {
if (!username.equals("张三") || !password.equals("123456")) {
response.sendRedirect("shiyan5_4.jsp");
}
} %>
登陆成功,用户<%=username%>,你好!
</body>
</html>

大学jsp实验5request,response的更多相关文章

  1. 大学jsp实验4include,forword

    一.实验目的与要求 1.掌握常用JSP动作标记的使用. 二.实验内容 1.include动作标记的使用 编写一个名为shiyan4_1.jsp的JSP页面,页面内容自定,但要求使用include动作标 ...

  2. 大学jsp实验6session

    1.session对象的使用 (1)设计一个简单的在线问卷调查程序,共有3个页面,分别是one.jsp.two.jsp.three.jsp. 其中,shiyan6_1_one.jsp页面效果如下图所示 ...

  3. 大学jsp实验七--JavaBean在JSP中的应用

    值bean的应用 (1)若有如下图所示的两个JSP页面,在第一个的页面的表单中填写相应内容,提交后再显示用户的提交信息.使用JavaBean的方式实现上述效果,请写出相应的代码. bean文件:Tes ...

  4. 大学jsp实验3include指令的使用

    1.include指令的使用 (1)编写一个名为includeCopyRight.jsp的页面,页面的浏览效果如下: 要求“2016”这个值可以实现动态更新.请写出页面代码: <%@ page ...

  5. Jsp重定向(response.sendRedirect())和转发(request.getRequestDispatcher().forward(request,r)的差别

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...

  6. 关于项目在网页中运行部分jsp出现乱码(由request.getRequestDispatcher("XXX.jsp").forward(request, response)造成)的解决方法

    在写jsp的时候发现部分的jsp在浏览器预览时出现乱码,为一堆问号,如图: 当时问了同学,只有部分jsp会出现乱码,因为重新建一个jsp在运行就没有错误,可以显示出来,所以发现是jsp头部的错误,当新 ...

  7. jsp中利用response.senddirect(str)重定向,传递参数新思路

    用Servlet进行请求重定向,参数传递好办,直接用request.setAttribute(str1,str2); 但是如果不用Servlet 而是直接用jsp进行转发呢? 我们首先要知道   请求 ...

  8. JSP具体条款——response对象

    response对象 response为响应对象client要求.输出信息到客户.他封装JSP反应生成.发送client在回应client要求. 1.重定向网页 使用response对象的sendRe ...

  9. JSP具体篇——response对象

    response对象 response对象用于响应client请求,向客户输出信息. 他封装了JSP产生的响应,并发送到client以响应client请求. 1.重定向网页 使用response对象的 ...

随机推荐

  1. IT程序员的抉择:我要离开帝都了

    不知不觉在北京已经漂泊了近5年了,共为3家公司打过工,其中有几十人的小公司,也有几万人的大公司.随着工作技能的提升和工作经验的积累,薪水自然也涨了不少,但是看着北京的房价.物价飞涨,感觉自己赚多少都是 ...

  2. 从 0 到 1 实现 react - 9.onChange 事件以及受控组件

    该系列文章在实现 cpreact 的同时理顺 React 框架的核心内容 项目地址 从一个疑问点开始 接上一章 HOC 探索 抛出的问题 ---- react 中的 onChange 事件和原生 DO ...

  3. MSSQL清理日志\删除数据\收缩数据库

    首先解释一下数据库的版本是SQL Server 2012.清除的数据库800多G,磁盘空间就剩10多G,数据量最多的表有2亿.目的就是清楚去年的数据(2017年之前),遇到了一些问题,总结起来就是三方 ...

  4. tornado设置cookie并加密

    最近看看tornado,遇到了sso的东西,了解下如何设置cookie 1.基本cookie set_cookie 方法在用户的浏览中设置 cookie: get_cookie 方法在用户的浏览中获取 ...

  5. POJ - 2528 区间离散化,线段树区间修改,区间询问

    这个题非常有意思的地方是,我们发现区间[1,4]和[5,8]是紧挨着的,因为这个的数代表的是一段区间,原本我们对于普通的离散, a[1]=1,a[2]=5,a[3]=6,a[4]=8;数组下标就是重新 ...

  6. python_线程的开启、守护线程、锁、死锁、事件、定时器、条件、队列、池

    0.承上 什么是线程? CPU调度的最小单位. 线程是进程的必要组成单位. 主线程: 程序开始运行的时候,就产生了一个主线进程来运行这个程序. 子线程: 是由主线程开启的其他线程. · 各线程之间的工 ...

  7. 为github添加ssh key

    用git关联github上的远程仓库前需要先为github添加ssh key 一.检查本机是否生成ssh key 本地查找.ssh文件,其中id_rsa.pub中的内容就是ssh key 二.为git ...

  8. asp.net mvc 三种过滤器

    前几天面试遇到这个问题,发现不是很了解,学习了下,这里记录下来 经常需要将用户的操作记录到日志中,或者是验证用户是否登录了网站, 面对这样的需求,以前的操作是自定义一个统一的全局方法,然后做处理, 在 ...

  9. Effective C++目录

    条款1:视C++为一个语言联邦 条款2:尽量以const.enum.inline替换#define 条款3:尽可能使用const 条款4:确定对象使用前已先被初始化 条款5:了解C++默认编写并调用哪 ...

  10. Oracle创建表sql语句

    create table t_owners ( id number primary key, name ), addressid number, housenumber ), watermeter ) ...