一、HTTP协议中的响应代码

  响应代码从1xx--5xx一共有41中。常见的

404:表示访问的页面不存在。这表示一个浏览器的错误,就是服务端没有提供这个服务,你却去访问。这个锅要算在浏览器头上,而不能算在服务器头上。

  当然,有的时候因为服务器没有配置这个路径,所以浏览器访问不到对应的资源。比如在web.xml中没有指定要访问页面的路径,就会得到404错误。

500:表示服务端的错误。比如要增加新的英雄的时候,血量是一个数字,但是你提交的数据是123a,而在服务端使用的是Float.parseFloat(),视图把它转换为数字的时候,就会抛出异常。这就是服务端的问题。

二、JSP

1. <%@page contentType="text/html;carset=UTF-8" pageEncoding="UTF-8" import="java.util.*"%>

JSP的page指令:<%@page

contentType=“text/html;charset=UTF-8”,告诉浏览器以UTF-8进行中文解码

pageEncoding="UTF-8"如果jsp文件中出现了中文,这些中文使用UTF-8进行编码

import=“java.util.*”导入其他类,如果导入多个类,彼此用逗号隔开,import="java.util.*,java.sql.*"

2.为什么JSP可以在html中运行java代码

JSP被转译成了Servlet

执行过程:

1. 把 hello.jsp转译为hello_jsp.java
2. hello_jsp.java 位于
d:\tomcat\work\Catalina\localhost\_\org\apache\jsp
3. hello_jsp.java是一个servlet
4. 把hello_jsp.java 编译为hello_jsp.class
5. 执行hello_jsp,生成html
6. 通过http协议把html 响应返回给浏览器

我们说HelloServlet是一个Servlet,并不是因为他的类名里面有一个Servlet单词,而是因为它继承了HttpServlet。

打开转译hello.jsp后得到的hello_jsp.java。可以发现它继承了类org.apache.jasper.runtime.HttpJspBase。而HttpJspBase继承了HttpServlet

所以hello_jsp.java是一个Servlet。

3.页面元素

3.1、静态内容:由HTML,CSS,JS等内容

3.2、指令:以<%@ %>,比如<%@page import="java.util.*"%>

3.3、表达式<%=java表达式%>:用于输出一段html

3.4、Scriptlet:<%JAVA代码%>,之间可以写任何java代码

3.5、声明:<%!字段方法%>

3.6、动作:<jsp:include page="Index">在jsp页面中包含另一个页面。

3.7、注释:<%-- --%>

4、Cookie

  Cookie是一种浏览器和服务器交互数据的方式。Cookie是由服务器端创建,但不村保存在服务器上。创建好之后,发送给浏览器,浏览器保存在用户本地。下一次访问网站的时候,就会把该cookie发送给服务器。

  有的网站登录的时候,会出现一个选项,问你时候一周内,或者是否记住密码,如果选了,那么一周之内,都不需要再输入账号密码,这个功能就是靠cookie实现的

5、Session

  翻译为会话。指的是用户打开浏览器访问一个网站开始,无论在这个网站中访问了多少页面,点了多少链接,都属于同一个会话。知道该用户关闭浏览器为止,都属于同一个会话。

一、J2EE的更多相关文章

  1. J2EE 项目读写分离

    先回答下 1.为啥要读写分离? 大家都知道最初开始,一个项目对应一个数据库,基本是一对一的,但是由于后来用户及数据还有访问的急剧增多, 系统在数据的读写上出现了瓶颈,为了让提高效率,想读和写不相互影响 ...

  2. J2EE 邮件发送那些事儿

    距离自己写的关于java邮件发送的第一篇博客已经有很长一段时间了,现在回过头看看.虽然代码质量方面有待提高,整体结构也不怎样,但是基本思路和过程还是比较纯的.现在有空写写J2EE中邮件发送的开发,实际 ...

  3. 配置eclipse J2EE环境

    早已习惯使用eclipse做Java相关的开发,因为之前安装的是RCP版本,今天发现对于J2EE的开发,在perference中居然没有Axis2的支持,需要添加J2EE的支持插件,特在此说明安装方式 ...

  4. J2EE或MyEclipse简单配置以及第一个web页面

    首先打开你下载安装好的MyEclipse,配置你开发需要的环境. 大致分为3步:①配置编码:Window-->preferences-->General-->Workspace--& ...

  5. 滑动验证的设计与实现J2EE

    滑动验证的设计与实现J2EE 注:本博文为博主原创,转载请注明出处. 项目源码地址:https://github.com/zhangxy1035/Verify 本篇博文的主要目录如下: 一.项目简介二 ...

  6. (转)J2EE的13种核心技术

    一.JDBC(Java Database Connectivity)  JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDBC对数据 ...

  7. Java基本概念(2)J2EE里面的2是什么意思

    J2EE里面的2是什么意思 J2SE,J2SE,J2ME中2的含义要追溯要1998年.1998年Java 1.2版本发布,1999年发布Java 1.2的标准版,企业版,微型版三个版本,为了区分这三个 ...

  8. J2EE的13种核心技术

    一.JDBC(Java Database Connectivity) JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDBC对数据库 ...

  9. 【超全整理】J2EE集成开发环境MyEclipse使用心得汇总

    一.首先我们为什么需要MyEclipse? 下面允许我做一些简要的介绍: 应该大家都知道另一个MyEclipse的近亲——Eclipse的优点:免费.程序代码排版功能.有中文汉化包.可增设许多功能强大 ...

  10. J2EE基础之Web服务简介

    J2EE基础之Web服务简介 1.什么是Web服务? 在人们的日常生活中,经常会查询网页上某城市的天气信息,这些信息都是动态的.实时的,它是专业的气象站提供的一种服务.例如,在网上购物时,通常采用网上 ...

随机推荐

  1. BZOJ 1070: [SCOI2007]修车(费用流)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1070 题意: 思路: 神奇的构图. 因为排在后面的人需要等待前面的车修好,这里将每个技术人员拆成n个 ...

  2. android获取屏幕宽度和高度

    1. WindowManager wm = (WindowManager) getContext() .getSystemService(Context.WINDOW_SERVICE); int wi ...

  3. gulp常用方法

    var gulp = require('gulp'); var concat = require('gulp-concat'); //使用gulp-concat合并文件,减少网络请求(静态资源数量): ...

  4. hdu 3094 A tree game 树上sg

    A tree game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Prob ...

  5. Python缩进与if语句 空格的魅力

    缩进 Python最具特色的是用缩进来标明成块的代码.我下面以if选择结构来举例.if后面跟随条件,如果条件成立,则执行归属于if的一个代码块. 先看C语言的表达方式(注意,这是C,不是Python! ...

  6. ajax操作json的三种方式

    一. 什么是json? 1. JSON是一种轻量级的数据交换格式 2. JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻松地传递这个字符串,并在 ...

  7. ABP的配置 请求类型

    1.ServerRootAddress 项目运行的根地址   需要跟启动项目配置的地址相同 2.CorsOrigins 允许哪些地址访问 不会出现跨域 启动项目配置的地址

  8. 力扣 报错 runtime error: load of null pointer of type 'const int'

    runtime error: load of null pointer of type 'const int' 要求返回的是int* 解决方案 1.指针使用malloc分配空间 用 int * p = ...

  9. python静态方法、类方法

    常规: class Dog(object): def __init__(self,name): self.name=name def eat(self): print('%s is eating'%s ...

  10. 《剑指offer》第五十三题(数组中数值和下标相等的元素)

    // 面试题53(三):数组中数值和下标相等的元素 // 题目:假设一个单调递增的数组里的每个元素都是整数并且是唯一的.请编程实 // 现一个函数找出数组中任意一个数值等于其下标的元素.例如,在数组{ ...