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. Jmeter性能与接口自动化实战

    本书可以作为工具书,也可以作为jmeter疑难杂症的良方!各位同学在jmeter学习中遇到的常见难题,在本文中都可以检索到答案. 大纲如下: ☞点击这里,获取本书

  2. Flask入门的第一个项目进阶版

    前言: 此次版本增加[一对多]数据库关系和动态路由设置. 一.数据库设计 environments表与variable1表的关系为:一对多.variable1.env_id设置为外键,与environ ...

  3. 爱奇艺2017秋招笔试(C++智能设备方向)

    虽然有方向,但是好像题目都是随机题库抽取. 选择题都很基础...挖坑,待更新 编程: 一. 奇异数: 如果一个数字满足以下条件,我们就称它为奇异数: 1.   这个数字至少有两位 2. 这个数的最低两 ...

  4. 多项式求值 n维多项式 Horner解法

    #include<iostream> using namespace std; template<class T> T ploy(T *coeff,int n,const T& ...

  5. linux 安装 SVN server

    安装 使用yum安装非常简单: yum install subversion 配置 2.1. 创建仓库 我们这里在/home下建立一个名为svn的仓库(repository),以后所有代码都放在这个下 ...

  6. taro 与uni-app对比

    https://www.jianshu.com/p/03e08399587e   (copy)

  7. C++中String类的字符串分割实现

    最近笔试,经常遇到需要对字符串进行快速分割的情景,主要是在处理输入的时候,而以前练习算法题或笔试,很多时候不用花啥时间考虑测试用例输入的问题.可是C++标准库里面没有像java的String类中提供的 ...

  8. 你不知道的JavaScript——第二章:this全面解析

    1调用位置 调用栈:为了到达当前执行位置所调用的所有函数. function baz(){ //当前调用栈:baz //因此,当前调用位置是全局作用域 console.log('baz'); bar( ...

  9. java类型的小知识List 等

    List 复制之 浅拷贝与深拷贝 详细连接https://blog.csdn.net/never_tears/article/details/79067245 java中判断字符串是否为数字的方法的几 ...

  10. spring boot+mybatis+generator生成domain大小写问题

    之前遇到一个问题,用generator生成数据库对应的domain,以前都是好好的,那天突然生成的domain都是小写的,因为我数据库里是大写的,后来找到解决办法, <table tableNa ...