一。什么是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简介的更多相关文章

  1. JavaWeb学习----JSP简介及入门(含Eclipse for Java EE及Tomcat的配置)

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  2. 1.JSP 简介及工作原理

    1.JSP 简介 JSP(Java Server Pages)是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术标准.JSP技术有点类似ASP技术,它是在传统的网页H ...

  3. 雷林鹏分享:JSP 简介

    JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开 ...

  4. JSP(1) - JSP简介、原理、语法 - 小易Java笔记

    1.JSP简介 (1)JSP的全称是Java Server Pages(运行在服务器端的页面),实际就是Servlet(学习JSP的关键就是时刻联想到Servlet) (2)JSP.Servlet各自 ...

  5. 7.JSP简介

    ---恢复内容开始--- 1.JSP简介 Java动态网页技术标准(Java Server Pages)是基于Servlet技术以及整个Java体系的Web开发技术是用于动态生成HTML文档的Web页 ...

  6. JSP-Runoob:JSP简介

    ylbtech-JSP-Runoob:JSP简介 1.返回顶部 1. JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它 ...

  7. [JSP]JSP 简介

    1.1 概述 1.1.1 什么是 JSP? JSP 全称是 Java Server Pages,是一种动态网页开发技术. 它与 PHP.ASP.ASP.NET 等语言类似,运行在服务端的语言. JSP ...

  8. JSP 简介

      160901   1. 一句话介绍什么是JSP? 和java相关的技术,可以开发出动态的,高性能的Web应用程序,的一门开发语言   2. 优点即特点,那么jsp的优点有哪些呢? JSP实现的We ...

  9. JavaWeb学习----JSP简介及入门(JSP结构及JSP处理)

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 艾水及水:http://www.cnblogs.com/liuhepeng 文章来源:http://www.cnblogs.com/liuhepeng ...

  10. JSP简介

    论坛 博客 微论 问答 游戏厅 天涯客 读书 更多 手机 服务 登录 注册   聚焦 民生 文学 旅游 财经 汽车 IT数码 时尚 情感 娱乐 视频 更多 北京 上海 广东 更多 天涯部落> J ...

随机推荐

  1. 4:Python的while循环

    while循环: while count<10: print(count) #count=100 count=count+1 print(123) while循环break:终止所有循环 cou ...

  2. 微信小程序 JS 获取View 和 屏幕相关属性(高度、宽度等等)

    wx.getSystemInfo({success: function (res) {thisWidth = res.windowWidth;}}); that.setData({view_Width ...

  3. Git命令使用小结

    一.上传你的代码的基本方式 0.在github网站上登录你的账户cynthiawupore,然后新建一个仓库demo 1.初始化 $ git init 2.添加文件夹下所有文件到仓库 $ git ad ...

  4. BZOJ2946 [Poi2000]公共串(后缀自动机)

    Description          给出几个由小写字母构成的单词,求它们最长的公共子串的长度. 任务: l        读入单词 l        计算最长公共子串的长度 l        输 ...

  5. Linux内核线程的思考与总结

    1.内核线程,只是一个称呼,实际上就是一个进程,有自己独立的TCB,参与内核调度,也参与内核抢占. 这个进程的特别之处有两点,第一.该进程没有前台.第二.永远在内核态中运行. 2.创建内核线程有两种方 ...

  6. 浅谈Kotlin(二):基本类型、基本语法、代码风格

    浅谈Kotlin(一):简介及Android Studio中配置 浅谈Kotlin(二):基本类型.基本语法.代码风格 浅谈Kotlin(三):类 浅谈Kotlin(四):控制流 通过上面的文章,在A ...

  7. Android 自定义AlertDialog的实现

    Android默认的AlertDialog太单调,我们可以通过继承原生的Dialog来实现自定义的Dialog. 本文的自定义Dialog和原生的AlertDialog的创建方式类似,通过一个静态Bu ...

  8. leetcode-69.x的平方根

    leetcode-69.x的平方根 Points 二分查找 牛顿迭代 题意 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保 ...

  9. Maven和Solr简单总结

    一.1.Maven介绍 Maven是一个项目管理工具,Maven通过POM项目对象模型,对象项目进行管理,通过一个配置文件(xml文件)进行项目的管理.对象项目的声明周期中每个阶段进行管理(清理,编译 ...

  10. Python GUI编程实例

    import os from time import sleep from tkinter import * from tkinter.messagebox import showinfo class ...