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 ...
随机推荐
- Mysql Group by 使用解析
使用gruop by 分组 1. 方式一:select name from table1 group by name; 注意:group by 两侧都应该含有name,例如select country ...
- CSS笔记1:属性--定位
相对定位是“相对于”元素在文档中的初始位置,而绝对定位是“相对于”最近的已定位祖先元素,如果不存在已定位的祖先元素,那么“相对于”最初的包含块. 元素定位 属性 版本 继承 描述 position c ...
- es6 语法 (Promise)
{ // 基本定义 let ajax = function(callback) { console.log('执行'); //先输出 1 执行 setTimeout(function() { call ...
- for、for / in循环
1.for循环 循环代码块一定的次数 <!DOCTYPE html> <html lang="en" dir="ltr"> <he ...
- Dynamics 365工作流报错:您无法登陆系统。原因可能是您的用户记录或您所属的业务部门在Microsoft Dynamics 365中已被禁用。
本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复265或者20170926可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong.me ...
- 折半插入排序算法的C++实现
折半插入排序思想和直接插入排序类似. 1)找到插入位置: 2)依次后移正确位置及后面的元素. 区别是查找插入位置的方法不同. 折半插入排序使用的折半查找法在一个已经有序的序列中找到查找位置. 注意,折 ...
- Android开发利器之Data Binding Compiler V2 —— 搭建Android MVVM完全体的基础
原创声明: 该文章为原创文章,未经博主同意严禁转载. 前言: Android常用的架构有:MVC.MVP.MVVM,而MVVM是唯一一个官方提供支持组件的架构,我们可以通过Android lifecy ...
- Linux 进程后台运行的几种方式 screen
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/80580779 本文出自[赵彦军的博客] screen是Linux窗口管理器,用户可 ...
- .net、mono和C#
.net wiki:en chs .net版本 公共语言运行时(CLR) 发布时间 随同分发的Visual Studio 预装于windows系统 支持的windows系统 1.0 1.0 2002 ...
- redis sentinel集群的搭建
背景说明: 这里采用1主2从的redis集群,3个sentinel搭建高可用redis集群. 一,关于搭建redis-sentinel高可用之前,我们必须要了解redis主从搭建redis-senti ...