Jsp与serverlet

目录架构图如下所示:

1.jsp指令

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

page:位于jsp顶端同一个页面可以有多个

<%@page 属性1="属性值" 属性2=“属性值" ....%>

属性名:language,import,contentType,pageEncoding

include:将一个外部文件嵌入jsp页面中,并解析

taglib:使用标签库定义的新的自定义标签

2.jsp注释

html:<!-- 注释-->   //客户端可见

jsp:<%-- 注释 --%>  //客户端不可见

jsp脚本注释://单行注释      /*  多行注释  */

3.jsp脚本

示例:

<%!

int a=1,b=2;//声明一个字符串变量

int add(int a,int c){ //声明函数

return a+c;

%>

<P><%=a%>+<%=b%>的结果是<%=add(1,2)%></P>

脚本片段:<%  %>

声明语法:<%!   %>

表达式语法:<%=%>

4.jsp内置对象

web容器创建的一组对象,不需要new关键字创建它

九大内置对象:

(常用)out、request、response、session、application

(不常用)Page、pageContext、exception、config

Web程序请求响应模式

request:用户发送请求

response:服务器响应请求

out:JSPWright类的实例,向客户端输出内容的常用对象

方法:void println()  ,void clear(),void flush(),........

5.提交方式

get与post区别:

get:以明文的方式通过URL提交数据,数据可以再URL中看到,提交数据不超过2kb,安全性低于post但效率高。

适合提交数据量不大,安全性不高的工作,如搜索,查询等功能

post:与get相反,它将将用户信息封装在html header中。适合提交数据量大且隐蔽的工作,如注册、修改等

6.form表单提交至serverlet方法(IDEA)

示例:

request.setCharacterEncoding("UTF-8");

String name = request.getParameter("username");

String password = request.getParameter("password");

response.setContentType("text/html;charset=utf-8");

response.setHeader("Cache-Control", "no-cache");

PrintWriter out = response.getWriter();

out.write("<script>");

out.write("alert(\"登陆成功!\")");

out.write("</script>");

System.out.println(name);

response.setHeader("refresh","1;url='/jsp/home.jsp'");

具体方法:

根目录地址:http//localhost:8080

请求发送给jsp文件示例:

<form id=form1 name="form1" action="/home.jsp" method="post" >

(1)表单动作及提交方式

action中字段值为src下serverlet文件的位置

<form id=form1 name="form1" action="/serverlet/index" method="post" >

(2)创建serverlet文件

在src新建serverler包,里面新建serverlet文件

(3)配置web.xml文件

<servlet-mapping>

<servlet-name>likui</servlet-name>         //注册名,与servlet-name一致,可随意命名

<url-pattern>/serverlet/index</url-pattern>      //url路径,为你的serverlet文件url路径

</servlet-mapping>

<servlet>

<servlet-name>likui</servlet-name>     //serverlet注册名,

<servlet-class>serverlet.index</servlet-class>   //对应的serverlet类文件路径

</servlet>

7. request

获取请求的页面参数,封装在request中,方法如下

String getParameter(String name):返回name 指定参数值

void setCharacterEncoding(String name): 设置字符编码

void setHeader(arg1,arg2): 跳转界面

void setAttribute(String key,String value): 设置参数值

String getAtrribute(String key):获取值

String getServerName():获取服务器主机名

8.reponse

响应客户请求的相关信息。

String getCharacterEncoding:返回响应的何种字符编码

PrintWriter getWriter:返回可以向客户端输出字符的一个对象

void sendRedirect():重定向请求,对象不保存

.....

JavaWeb学习之路——jsp与serverlet(一)相关推荐

  1. JavaWeb学习之路——SSM框架之Spring(五)

    前情提要请看JavaWeb学习之路--SSM框架之Spring(四)                                         整合Spring和Mybatis框架 1.在项目的 ...

  2. JavaWeb学习之路——SSM框架之Mybatis(三)

    数据库配置和相关类创建看上篇:JavaWeb学习之路--SSM框架之Mybatis(二) https://blog.csdn.net/kuishao1314aa/article/details/832 ...

  3. JavaWeb学习之路——SSM框架之SpringMVC(八)

    SpringMVC参数传递:把内容写到方法(HandlerMethod)参数中,SpringMVC只要有这个内容,则会注入,在这里使用注解的方式来传递参数 前提使用springmvc注解功能,相应配置 ...

  4. Javaweb学习笔记(JSP标准标签库)

    Javaweb学习笔记(JSP标准标签库) JSTL入门 安装和测试JSTL JSTL中的Core标签库 < c:out>标签 标签 标签 < c:catch>标签 标签 标签 ...

  5. JavaWeb学习总结(十七)——JSP中的九个内置对象

    一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...

  6. JavaWeb学习之路——SpringBoot搭建项目框架(一)

    1.使用maven创建Spring Boot项目 1)在pom.xml中修改jdk版本 <!--jdk版本--> <properties> <java.version&g ...

  7. JavaWeb学习之路——SSM框架之SpringMVC(九)

    SpringMVC跳转.视图解析器和@ResponseBody的用法 1.跳转方式 (1)默认方式字符串内容来转发 (2)设置返回值内容转发 添加redirect:资源路径·  重定向 添加forwa ...

  8. JavaWeb学习之路——SSM框架之SpringMVC(七)

    Spring MVC: 简介:SpringMVC是一种基于Java,实现了Web MVC设计模式,请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将Web层进行职责解耦.基于请求驱动指的 ...

  9. JavaWeb学习之路——SSM框架之Spring(四)

    SSM框架学习-Spring01 1,.Spring介绍 Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的.框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同 ...

最新文章

  1. 无盘服务器游戏盘尺寸,网吧无盘游戏服务器 案例五
  2. DCMTK:压缩DICOM文件
  3. 判断字符为空_49. 把字符串转换成整数(剑指offer)
  4. 知乎高赞:本科生如何才能进入腾讯、阿里等一流互联网大厂?
  5. linux shell 上传,下载ftp文件
  6. Zygo读取保存dat文件(光学领域知道Zygo的一定要看)
  7. 打开Lampix推出的台灯,即可在任何平面实现AR交互
  8. DDL操作提示了一个DML操作才会抛的ORA错误?
  9. 怎么开启搜狗高速浏览器的手动升级?
  10. Nginx不停机升级
  11. 06.输入系统:第10课第20节_输入系统_多点触摸_电容屏驱动程序
  12. c语言 计算平均分
  13. 阿里巴巴国际站产品标题的组合和优化方法一览
  14. 宠物经济:吃、用、病、葬都是生意
  15. Nvidia Tesla A100 驱动安装方法
  16. java 环境变量 locale_locale的设定及其LANG、LC_ALL、LANGUAGE环境变量的区别
  17. C++实现基于vector的矩阵乘法
  18. 移动应用Kony Solutions并购Sky Technologies
  19. Linux下安装mldonkey及配置
  20. DAGM2007数据集扩增(COCO格式以及VOC格式的灰度图数据集都可用)

热门文章

  1. java paint 怎么用_java如何使用paint方法画图
  2. html偷拍代码,一段植入木马的html代码
  3. 七十五、Python | Leetcode哈希表系列
  4. Map和hashmap
  5. mysql数据库简单介绍_数据库的简单介绍
  6. 自监督和语言监督我全都要?Facebook多模态预训练模型SLIP给你答案!
  7. 如何使用PyTorch的量化功能?
  8. 基于深度学习的多目标跟踪:从UMA Tracker出发谈谈SOT类MOT算法
  9. 半监督学习之数据加载
  10. POJ1185 炮兵阵地 状压DP