2-jsp简介
一。什么是jsp:
1.只能运行在服务器中
2.可以将java代码嵌入html页面中的技术
补充:在eclipse中修改jsp的创建模板
window--preference--web--jsp file--editors--templates--new jsp file(html)--editor
B/S的开发模式:浏览器/服务器
二。语法:
1.指令:
<%@ page %>:是指明当前网页的一些基本要素,比如说字符集
<%@ include %>:是要引入另外一个网页资源
<%@ taglib %>:引入标签
2.java脚本
<% java代码 %>:这个java脚本可以嵌入在html的任何地方
例如:
<%
if(1==2){
%>
<p>你们看的见我吗?</p>
<%
}
%>
3.java的输出表达式
<%=表达式%>
4.注释:
<!-- -->:普通xml注释,客户端可见
<%-- -->:jsp注释,客户端不可见
5.jsp的内置对象:9大内置对象,是在jsp的java代码中直接使用,不需要声明和初始化,也不能作为其他变量名
a.request:请求 通常是用来获取页面表单传递到后台的数据
1.传参方式url:http://127.0.0.1:8080/web06/xxx.jsp?username=username&passowrd=123
注意:如果是中文参数需要转码后才能传递
String username = URLEncoder.encode("管理员","utf-8");//将中文加密成unicode
2.表单传参:可以传字符串还可以文件
注意:表单有两种方式提交数据get和post,区别:get会在url后显示参数和值,post不会,get方式不能提交文件,post可以
中文乱码问题:可以在获取参数之前调用request.setCharacterEncoding("utf-8");
如果是复选框传参,后台获取参数的方法是String strs[] = request.getParameterValues("复选框的名字");
b.response:响应
c.session:会话
d.application:应用全局域
f.pageContxt:当前页面域
实例1:发送与接收参数
send.jsp
<%@page import="java.net.URLEncoder"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html>
<html>
<head>
<base href="<%=basePath%>"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<%
String username = URLEncoder.encode("管理员","utf-8");//将中文加密成unicode
%>
<body>
1.URL传参<br>
<a href="jsp/accept.jsp?username=<%=username %>&password=123456">url传参数</a>
</body>
</html>
accept.jsp
<%@page import="java.net.URLDecoder"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html>
<html>
<head>
<base href="<%=basePath%>"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
System.out.print(username);
String password = request.getParameter("password");
%>
username=<%=username %><br>
passowrd=<%=password %>
</body>
</html>
实例2:表单提交完成注册
register.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html>
<html>
<head>
<base href="<%=basePath%>"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<div align="center">
<h1>注册页面</h1>
<form action="jsp/success.jsp" method="post">
用户名:<input name="username"><br>
性别:男<input type="radio" value="男" name="sex" checked="checked">
女<input type="radio" value="女" name="sex"><br>
爱好:篮球<input type="checkbox" name="hobby" value="篮球">
音乐<input type="checkbox" name="hobby" value="音乐">
美女<input type="checkbox" name="hobby" value="美女">
LOL<input type="checkbox" name="hobby" value="LOL"><br>
职业:<select name="job">
<option>老师</option>
<option>军人</option>
<option>医生</option>
<option>律师</option>
</select><br>
说明:<textarea rows="5" cols="50" name="explain"></textarea><br>
<input type="submit" value="注册">
</form>
</div>
</body>
</html>
success.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html>
<html>
<head>
<base href="<%=basePath%>"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<%
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
String sex = request.getParameter("sex");
String job = request.getParameter("job");
String[] hobbys = request.getParameterValues("hobby");
String hobby="";
if(hobbys!=null)
for(int i=0;i<hobbys.length;i++){
if(i==hobbys.length-1){
hobby += hobbys[i];
}else{
hobby += hobbys[i]+",";
}
}
String explain = request.getParameter("explain");
%>
<body>
<div align="center">
<h1>恭喜注册成功!基本信息如下:</h1>
用户名:<%=username %><br>
性别:<%=sex %><br>
爱好:<%=hobby %><br>
职业:<%=job %><br>
说明:<%=explain %><br>
</div>
</body>
</html>
2-jsp简介的更多相关文章
- JavaWeb学习----JSP简介及入门(含Eclipse for Java EE及Tomcat的配置)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- 1.JSP 简介及工作原理
1.JSP 简介 JSP(Java Server Pages)是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术标准.JSP技术有点类似ASP技术,它是在传统的网页H ...
- 雷林鹏分享:JSP 简介
JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开 ...
- JSP(1) - JSP简介、原理、语法 - 小易Java笔记
1.JSP简介 (1)JSP的全称是Java Server Pages(运行在服务器端的页面),实际就是Servlet(学习JSP的关键就是时刻联想到Servlet) (2)JSP.Servlet各自 ...
- 7.JSP简介
---恢复内容开始--- 1.JSP简介 Java动态网页技术标准(Java Server Pages)是基于Servlet技术以及整个Java体系的Web开发技术是用于动态生成HTML文档的Web页 ...
- JSP-Runoob:JSP简介
ylbtech-JSP-Runoob:JSP简介 1.返回顶部 1. JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它 ...
- [JSP]JSP 简介
1.1 概述 1.1.1 什么是 JSP? JSP 全称是 Java Server Pages,是一种动态网页开发技术. 它与 PHP.ASP.ASP.NET 等语言类似,运行在服务端的语言. JSP ...
- JSP 简介
160901 1. 一句话介绍什么是JSP? 和java相关的技术,可以开发出动态的,高性能的Web应用程序,的一门开发语言 2. 优点即特点,那么jsp的优点有哪些呢? JSP实现的We ...
- JavaWeb学习----JSP简介及入门(JSP结构及JSP处理)
[声明] 欢迎转载,但请保留文章原始出处→_→ 艾水及水:http://www.cnblogs.com/liuhepeng 文章来源:http://www.cnblogs.com/liuhepeng ...
- JSP简介
论坛 博客 微论 问答 游戏厅 天涯客 读书 更多 手机 服务 登录 注册 聚焦 民生 文学 旅游 财经 汽车 IT数码 时尚 情感 娱乐 视频 更多 北京 上海 广东 更多 天涯部落> J ...
随机推荐
- 一些你可能不熟悉的JS知识点总结
js代码暂时性死区 只要块级作用域存在let命令,它所声明的变量就“绑定”这个区域,不再受外部的影响.这么说可能有些抽象,举个例子: ? 1 2 3 4 5 var temp = 123; if(tr ...
- python实现简单的计算器功能
如想实现一个计算器的功能,输入格式为字符串,不能运用python里面的内置方法,出去简单的加减乘除,设计一个相对高级的计算器: a = '1 - 2 * ( ( 6 0 -3 0 +(-40/5) * ...
- 前端整理——css部分
(1)盒模型(普通盒模型.怪异盒模型) 1.元素的content(内容).padding(内边距).border(边框).margin(外边距)构成了CSS盒模型 2.IE盒模型和W3C盒模型 1)I ...
- 2018-07-30 对DLL库中的接口进行中文命名
补注: 此文是在探究在Windows上编写DLL时不能使用中文命名 · Issue #74 · program-in-chinese/overview问题时编写的演示用代码, 代码基于官方文档. 正如 ...
- Nginx 动静分离
Tomcat 能处理静态资源和动态资源,但是处理静态资源效率并不高,处于优化性能,提高访问效率,可以让 Tomcat 处理动态资源,让 Nginx 处理静态资源 1,配置虚拟主机 该配置的意思是:js ...
- Xcode常用的文件路径
1.Provisioning Profile文件在哪找? ~/Library/MobileDevice/Provisioning Profiles 2.master 在那找? ~/.cocoapods
- ArrayList在foreach删除倒数第二个元素不抛并发修改异常的问题
平时我们使用ArrayList比较多,但是我们是否知道ArrayList在进行foreach的时候不能直接通过list的add或者move方法进行删除呢, 原因就是在我们进行foreach遍历的时候, ...
- Python对象相关内置函数
针对一个对象,通过以下几个函数,可以获取到该对象的一些信息. 1.type() ,返回某个值的类型 >>> type() <class 'int'> >>&g ...
- (其他)Thinkpad笔记本装系统
电脑城装一次系统收你40元,不如自己装系统. 虽然百度上装系统的文章泛滥,但是还是自己尝试. 前3个小时thinkpad e570是不是坏掉了,怎么就进不去BIOS,这个时候直接搜索这个型号,问题输入 ...
- AIOps 平台的误解,挑战及建议(下)— AIOps 挑战及建议
本文篇幅较长,分为上,中,下,三个部分进行连载.内容分别为:AIOps 背景/所应具备技术能力分析(上),AIOps 常见的误解(中),挑战及建议(下). 前言 我大概是 5,6 年前开始接触 ITO ...