JSP-2

1.注释

1.HTML注释

<!--在HTML可以看到-->

2.代码注释

<% 
//1.Java单行注释
/*
2.Java的多行注释
*/
/**
3.javaDoc注释,用于成员注释
*/
%>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@page import="java.util.Date"%>
<!--这里是导入包-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>在此处插入标题</title>
</head>
<body>

<!-- 1.这个是html的注释,可以通过右击实现 -->
<%-- 2.jsp的注释,不发送到客户端 --%>

<%
//3.这个在这里可以用于java的单行注释
/*
4.这里是多行注释,同样客户机也看不到
*/
%>
<!-- 5.jsp的申明变量-->
<%
/* <%![申明1];[申明2]··· % >中间一定要用分号隔开
*/
%>
<%! int i=6; %>>
<%! int a,b,c;double d=6.0d; %>
<%! Date e=new Date(); %>
<!--6.jsp的表达式-->

<% 
//<%=表达式 % >这里就1.不分用;作为表达式的结束,2.中间不能用空格,3.只能写一个表达式
%>
</body>
</html>

3.JSP注释

<%--注释文本--%>

4.动态注释

就是这个注释会随里面的内容改变而改变
<!-- <%= 变量值%>-->

2.动作标识

1.包含文件标识jsp:include

2.请求转发标识jsp:forward

3.传递参数标识jsp:param

<jsp:param name=“参数名” value=“参数值”>

3. 内置对象(9个)

在这里插入图片描述
在这里插入图片描述

1.request对象

(获取请求参数)一次请求

语法:String request.getParameter(String parameter);
eg:String id =request.getParameter(“id”);

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>request的请求页面</title>
</head>
<body>
ID的参数为<%=request.getParameter("id") %>
name的参数为<%=request.getParameter("name") %>
</body>
</html>

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>关于内置对象的学习</title>
</head>
<body>
<a href="request_01_1.jsp?id=520">获取ID</a>
</body>
</html>

(获取表单信息)

语法:String [] request.getParameterValues(String parameter);

提交页面

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>request关于接受表单的学习-定义表单</title>
</head>
<body>
	<form action="request_02_1.jsp" method="post">
		请输入用于的姓名:
		<input type="text" name="name" /> <br/> 
		请选择性别:
		<input type="radio" value="男" name="sex" />男
		<input type="radio" value="女" name="sex" />女<br/> 
		请选择密码提示问题:
		<select name="question">
		<option value="母亲的生日">母亲的生日</option>
		<option value="父亲的生日">父亲的生日</option>
		
		</select><br/> 
		请输入问题的答案:<input type="text" name="key" /><br/> 
		请选择问题的答案:
		<input type="checkbox" value="唱歌跳舞" name="like"/> 唱歌跳舞
		<input type="checkbox" value="户外登山" name="like"/>户外登山
		<input type="checkbox" value="网上冲浪" name="like"/>网上冲浪<br/> 
		<input type="submit" value="提交"/> 
	</form>
</body>
</html>

提交的后的页面

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>表单时request</title>
</head>
<body>
姓名:<%=new String(request.getParameter("name").getBytes("ISO8859_1"),"UTF-8") %><br/>
性别:<%=new String(request.getParameter("sex").getBytes("ISO8859_1"),"UTF-8") %><br/>
密码提示问题:<%=new String(request.getParameter("question").getBytes("ISO8859_1"),"UTF-8") %><br/>
密码:<%=new String(request.getParameter("key").getBytes("ISO8859_1"),"UTF-8") %><br/>
个人爱好:
	<%
	String[] like = request.getParameterValues("like");
for (int i = 0; i < like.length;i++) {
	%>
	<%=new String(like[i].getBytes("ISO8859_1"),"UTF-8") %>
	<%
		}
	%>

</body>
</html>

(获取客户端的信息)

在这里插入图片描述

处理乱码

new String(request.getParameter("name").getBytes("ISO8859_1"),"UTF-8")

request.setAttribute(“属性”,“属性值”)

request.getAttribute(“属性”)//默认是null

在作用域中管理属性
语法
Object request.setAttribute(String name ,Object value)
request.settribute("date" ,new Date(); //添加一-个属性
示例
<ul style="line-height: 24px;">
<li>获取date属性: <%=request. getAttribute("date")%></i>
</ul>

cookie管理

COOKIE是小段的文本信息,通过使用COOKIE可以标识用户身份

记录用户名及密码、跟踪重复用户。COOKIE在服务器端生成并发送给浏览器,浏览器将COOKIE的KEY/NALUE保存到某个指定的目录中,服务器的名称与值可以由服务器端定义。

通过cookie的getCookies()方法可以获取到所有的cookie对象集合;

然后通过cookie对象的


getName()方法获取到指定名称的cookie

再通过

getValue()方法即可获取到cookie对象的值

另外,将一个cookie对象发送到客户端使用了response对象的addCookie()方法。
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Cookie的学习</title>
</head>
<body>
	<%
	String welcome = "第一次访问";
	String[] info = new String[] { "", "", "" };
	Cookie[] cook = request.getCookies();
	if (cook != null) {
		for (int i = 0; i < cook.length; i++) {
			if (cook[i].getName().endsWith("yhc")) {
		info = cook[i].getValue().split("#");
		welcome = ",欢迎回来!";

			}

		}

	}
	%>
	<%=info[0] + welcome%>
	<form action="request_03_1.jsp" method="post">
		姓名:<input type="text" name="name" value="<%=info[0]%>" /><br />
		出生日期:<input type="text" name="birthday" value="<%=info[1]%>" /><br />
		邮件地址:<input type="text" name="mail" value="<%=info[2]%>" /><br /> <input
			type="submit" value="提交" />


	</form>
</body>
</html>

下面是将数据添加到Cookie

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Cook的提交页面</title>
</head>
<body>
<%
String name=request.getParameter("name");
String birthday=request.getParameter("birthday");
String mail=request.getParameter("mail");
Cookie myCook=new Cookie("yhc",name+"#"+birthday+"#"+mail);
mycook.setMaxAge(60*60*24*365);//设置有效期
response.addCookie(myCook);

%>
<ul>

<li>姓名:<%=name %></li>
<li>出生日期:<%=birthday %></li>
<li>项目地址:<%=mail %></li>
<li><a href="request_03.jsp">返回</a></li>
</ul>
</body>
</html>

2.response对象(客户端)

1.sendRedirect()方法

对客户端发出请求的一个响应
重定向是通过使用sendRedirect()方法,将响应发送到另一个指定的位置进行处理
语法:response.sendRedirect(“url”);

2.setHeader(“refresh”,“时间秒;URL=welcome.jsp”);方法

eg:setHeader(“refresh”,“2;URL=welcome.jsp”)

在这里插入图片描述

3.session对象(服务端)(可以在不同网址下读取)

1.setAttribute(“属性名”,“属性值”)方法:存

2.getAttribute(“属性名”)方法:取

session对象
session是与请求有关的会话对象,是java.servlet.http.HttpSession对象,用于保存和存储页面的请求信息。

session对象的**setAttribute()方法可实现将信息保存在session范围内,而通过getAttribute()**方法可以获取保存在session范围内的信息。

存:
String sessionMessage = “session练习”;
session.setAttribute("message’ ,sessionMessage);
取:
String message = (String)session.getAttribute(“message”);
out.print("保存在session范围内的值为: "+message);

3.removeAttribute(String key);//移除指定的绑定对象

4.session.invalidate();销毁session

4.application对象(保存在服务器里面直到服务器关闭)

application对象可将信息保存在服务器中,直到服务器关闭,
否则application对象中保存的信息会在整个应用中都有效。与
**session对象相比,application对 象的生命周期更长,**类似于系
统的“全局变量”

application对象访问应用程序初始化参数的方法分别介绍如下:
getInitParameter(String name):返回一个已命名的参数值。
getAttributeNames():返回所有已定义的应用程序初始化名称的枚举。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.out对象

1.向客户端输出数据和表达式<%= %>效果一样
out.printf();
out.println();
2.管理响应的缓冲
在这里插入图片描述

6.pageContext对象(获取会话范围的对象)

7.config读取web.xml配置信息

8.page(应答或者请求)

9.exception(获取异常信息)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码浪人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值