大学jsp实验5request,response
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的更多相关文章
- 大学jsp实验4include,forword
一.实验目的与要求 1.掌握常用JSP动作标记的使用. 二.实验内容 1.include动作标记的使用 编写一个名为shiyan4_1.jsp的JSP页面,页面内容自定,但要求使用include动作标 ...
- 大学jsp实验6session
1.session对象的使用 (1)设计一个简单的在线问卷调查程序,共有3个页面,分别是one.jsp.two.jsp.three.jsp. 其中,shiyan6_1_one.jsp页面效果如下图所示 ...
- 大学jsp实验七--JavaBean在JSP中的应用
值bean的应用 (1)若有如下图所示的两个JSP页面,在第一个的页面的表单中填写相应内容,提交后再显示用户的提交信息.使用JavaBean的方式实现上述效果,请写出相应的代码. bean文件:Tes ...
- 大学jsp实验3include指令的使用
1.include指令的使用 (1)编写一个名为includeCopyRight.jsp的页面,页面的浏览效果如下: 要求“2016”这个值可以实现动态更新.请写出页面代码: <%@ page ...
- Jsp重定向(response.sendRedirect())和转发(request.getRequestDispatcher().forward(request,r)的差别
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...
- 关于项目在网页中运行部分jsp出现乱码(由request.getRequestDispatcher("XXX.jsp").forward(request, response)造成)的解决方法
在写jsp的时候发现部分的jsp在浏览器预览时出现乱码,为一堆问号,如图: 当时问了同学,只有部分jsp会出现乱码,因为重新建一个jsp在运行就没有错误,可以显示出来,所以发现是jsp头部的错误,当新 ...
- jsp中利用response.senddirect(str)重定向,传递参数新思路
用Servlet进行请求重定向,参数传递好办,直接用request.setAttribute(str1,str2); 但是如果不用Servlet 而是直接用jsp进行转发呢? 我们首先要知道 请求 ...
- JSP具体条款——response对象
response对象 response为响应对象client要求.输出信息到客户.他封装JSP反应生成.发送client在回应client要求. 1.重定向网页 使用response对象的sendRe ...
- JSP具体篇——response对象
response对象 response对象用于响应client请求,向客户输出信息. 他封装了JSP产生的响应,并发送到client以响应client请求. 1.重定向网页 使用response对象的 ...
随机推荐
- IT程序员的抉择:我要离开帝都了
不知不觉在北京已经漂泊了近5年了,共为3家公司打过工,其中有几十人的小公司,也有几万人的大公司.随着工作技能的提升和工作经验的积累,薪水自然也涨了不少,但是看着北京的房价.物价飞涨,感觉自己赚多少都是 ...
- 从 0 到 1 实现 react - 9.onChange 事件以及受控组件
该系列文章在实现 cpreact 的同时理顺 React 框架的核心内容 项目地址 从一个疑问点开始 接上一章 HOC 探索 抛出的问题 ---- react 中的 onChange 事件和原生 DO ...
- MSSQL清理日志\删除数据\收缩数据库
首先解释一下数据库的版本是SQL Server 2012.清除的数据库800多G,磁盘空间就剩10多G,数据量最多的表有2亿.目的就是清楚去年的数据(2017年之前),遇到了一些问题,总结起来就是三方 ...
- tornado设置cookie并加密
最近看看tornado,遇到了sso的东西,了解下如何设置cookie 1.基本cookie set_cookie 方法在用户的浏览中设置 cookie: get_cookie 方法在用户的浏览中获取 ...
- POJ - 2528 区间离散化,线段树区间修改,区间询问
这个题非常有意思的地方是,我们发现区间[1,4]和[5,8]是紧挨着的,因为这个的数代表的是一段区间,原本我们对于普通的离散, a[1]=1,a[2]=5,a[3]=6,a[4]=8;数组下标就是重新 ...
- python_线程的开启、守护线程、锁、死锁、事件、定时器、条件、队列、池
0.承上 什么是线程? CPU调度的最小单位. 线程是进程的必要组成单位. 主线程: 程序开始运行的时候,就产生了一个主线进程来运行这个程序. 子线程: 是由主线程开启的其他线程. · 各线程之间的工 ...
- 为github添加ssh key
用git关联github上的远程仓库前需要先为github添加ssh key 一.检查本机是否生成ssh key 本地查找.ssh文件,其中id_rsa.pub中的内容就是ssh key 二.为git ...
- asp.net mvc 三种过滤器
前几天面试遇到这个问题,发现不是很了解,学习了下,这里记录下来 经常需要将用户的操作记录到日志中,或者是验证用户是否登录了网站, 面对这样的需求,以前的操作是自定义一个统一的全局方法,然后做处理, 在 ...
- Effective C++目录
条款1:视C++为一个语言联邦 条款2:尽量以const.enum.inline替换#define 条款3:尽可能使用const 条款4:确定对象使用前已先被初始化 条款5:了解C++默认编写并调用哪 ...
- Oracle创建表sql语句
create table t_owners ( id number primary key, name ), addressid number, housenumber ), watermeter ) ...