JSP Java服务器页面
大家好!好久不见!今日我们开始学习JSP了,一些记录基础性的知识在这里与大家分享。
先说下URL(Uniform Resource Locator 统一资源定位符)。
URL包括传输协议(http://),ip地址,端口(端口如果是80可以省略,其他不能省略),项目资源地址。
再来说下B/S,C/S架构。
B/S(browser/server)是浏览器/服务器;
浏览器和服务器端采用请求/相应模式进行交互;
B/S结构是对C/S结构的一种改进;
当应用成武为B/S结构时,程序部署在应用服务器上,并通过应用服务器同数据库服务器进行通信,在客户机上无需安装任何文件,系统界面是通过浏览器来实现的;
B/S结构建立在Internet的基础上,所以访问范围比C/S大。
C/S(client/server)是客户端/服务器。
从维护和升级角度,B/S更加简单。
再说下Tomcat。Apache Jakarta的开源项目,JSP/servlet容器,web容器。使用Java进行Web编程时,需要发布到Web容器中才能运行。
Tomcat安装后端口默认是8080;
可以向发出请求的浏览器提供文档的程序;
提供网上的信息浏览服务。
Tomcat服务器的目录结构:
/bin目录:存放各种平台下用于启动和停止Tomcat的脚本文件;
/conf目录:存放Tomcat服务器的各种配置文件;
/lib目录:存放Tomcat服务器所需的各种JAR文件;
/logs:存放Tomcat的日志文件;
/temp:Tomcat运行时用于存放临时文件;
/webapps:当发布Web应用时,默认情况下会将Web应用的文件存放于此目录中;
/work:Tomcat把由JSP生成的Servlet防御此目录下。
Web项目的目录结构:
/:Web应用的根目录,该目录下所有文件在客户端都可以访问(JSP、HTML等);
/WEB-INF:存放应用使用的各种资源,该目录及其子目录对客户端都是 不 可以访问;
/WEB-INF/classes:存放Web项目的所有class文件;
/Web-INF/lib:存放Web应用使用的JAR文件。
使用JSP开发web项目时,web.xml文件位于WEB-INF目录下。
手动部署Web应用的步骤:
1.编写Web应用的代码;
2.在webapps目录下创建应用文件目录;
3.将创建的页面复制到应用目录下;
4.启动Tomcat服务并进行访问。
JSP执行过程:
1.翻译阶段:编写好的JSP文件首先被web容器中的JSP引擎转换成Java源码;
2.编译阶段;Java源码会被编译成可执行的字节码;
3.执行阶段。容器接受客户端的请求后,执行编译成字节码的JSP文件。处理完请求后,容器把生成的页面反馈给客户端进行显示。
JSP(Java Server Pages 一种Java语言的服务器端页面技术):在HTML中嵌入Java脚本代码。
JSP的3种注释:
HTML的注释(网页查看源代码时会看到此注释):
<!--html注释-->
JSP注释(网页查看源代码时看不到此注释):
<%--JSP注释--%>
在JSP脚本中注释(网页查看源代码时看不到此注释):
<%//单行注释%>
<%/*多行注释*/%>
JSP页面元素:
静态内容:HTML静态文本;
指令:以"<%@"开始,以"%"结束>
小脚本:<%Java代码%>
表达式:<%=Java表达式%>
声明:<%!方法%>
JSP内置对象是Web容器创建的一组对象,一组类的实例。
常用的JSP内置对象:
out --输出语句
request --处理客户端请求
response --相应客户请求
session --会话对象。一次会话是指一次请求和一次相应。
可以保持每个用户的会话信息,为不同的用户保存自己的数据,存储在客户端。
application --应用程序
实际上JSP就是Servlet,运行在服务端。在后台进行动态编译后最终想客户端输出普通html代码,需要运行在Tomcat类似servlet容器中,在JSP文件中可以嵌入Java代码。
转发与重定向:
转发:转发是在服务器端发挥作用,通过forward方法将提交信息在多个页面间进行传递;
客户端浏览器的地址栏不会显示出转向后的地址。
重定向:重定向实在客户独胆发挥作用,通过请求新的地址实现页面转向;
在地址栏中可以显示转向后的地址。
以上仅个人观点,若有不同,可以提出,共同进步!
JSP Java服务器页面的更多相关文章
- JSP(Java Server Pages,即:Java服务器页面
是一种跨平台的动态网页技术标准,由Sun Microsystems公司倡导.多家公司参与建立. 它在HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(* ...
- Eclipse创建的Java Web项目,如何启用外置浏览器访问jsp或者html页面
当我们用Eclipse创建了一个Java Web项目,想访问一个jsp或者html页面时,通常会在目标页面(以jsp为例)上点击鼠标右键,选择[Run As]——>[Run on Server] ...
- jsp(java server pages):java服务器端的页面
jsp(java server pages):java服务器端的页面 JSP的执行过程1.浏览器输入一个jsp页面2.tomcat会接受*.jsp请求,将该请求发送到org.apache.jasper ...
- 新手详解JAVA+数据库+JSP完成简单页面
本篇以数据库添加为例(本例中数据库名为“xinxi”表单名字为“stud”) 准备---实体层: package entity; public class Student { private Stri ...
- JSP JSP(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术
JSP JSP(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术.从这一点来看,非常类似Microsoft ASP.PHP等技术.借助形式上的内容和外观表现的分 ...
- 转:java服务器安全指南
转: http://drops.wooyun.org/web/16609 JAVA安全之JAVA服务器安全漫谈 z_zz_zzz · 2016/06/08 10:50 0x00 前言 本文主要针对JA ...
- JSP(Java Servlet Page)
一.简介 HTML HTML擅长显示一个静态的网页,但是不能调用Java程序. Servlet Servlet擅长调用Java程序和后台进行交互,但是它不擅长显示一个完整的HTML页面. 我们希望创建 ...
- servlet+jsp+java实现Web 应用
servlet+jsp+java实现Web 应用 用java来构建一个web应用是特别容易的事情,jsp和php很像,可以嵌套在html中.程序的结构很简单,也很清楚,本文主要记录下大概的开发过程和环 ...
- servlet+jsp update修改页面的实现,整整搞了两个小时才搞定
package DAO; public class books { private int bid; private String bname; private int booksl; private ...
随机推荐
- Java中面向对象三大特性之——封装
概述 面向对象编程语言是对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改. 封装可以被认为是一个保护屏障,防止该类的代码和数据被其他类随意访问.要访问该类的数据,必须通 ...
- 洛谷P2296 寻找道路_简单BFS
Code: #include<cstdio> #include<queue> #include<algorithm> using namespace std; co ...
- Python 安装 numpy 以及 matplotlib 的过程
系统:ubuntu 16.04 版本:Python3.5 步骤: 安装 pip sudo apt install python3-pip 查看 pip list 是否有 numpy 以及 matplo ...
- 洛谷P1739 表达式括号匹配
题目描述 假设一个表达式有英文字母(小写).运算符(+,-,*,/)和左右小(圆)括号构成,以"@"作为表达式的结束符.请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返 ...
- [ZOJ]3541 Last Puzzle (区间DP)
ZOJ 3541 题目大意:有n个按钮,第i个按钮在按下ti 时间后回自动弹起,每个开关的位置是di,问什么策略按开关可以使所有的开关同时处于按下状态 Description There is one ...
- weex手机端安全键盘
github地址:weexSafeKeyboard 效果图: 技术依赖:框架:weex+vue 弹出层:weex-ui 图标:iconfont 说明:1.如果不想用到weex-ui,可以把inputk ...
- HDU6010 Daylight Saving Time
/* HDU6010 Daylight Saving Time http://acm.hdu.edu.cn/showproblem.php?pid=6010 模拟 题意:算当前时间是否是夏令时 */ ...
- plsql里面执行正常,java运行报ORA-01722: 无效数字
贴代码: <select id="getInfo" parameterClass="java.util.HashMap" resultClass=&quo ...
- 洛谷——P1802 5倍经验日
https://www.luogu.org/problem/show?pid=1802#sub 题目背景 现在乐斗有活动了!每打一个人可以获得5倍经验!absi2011却无奈的看着那一些比他等级高的好 ...
- HDU 4344
其实不过是大整数分解... 注意两点:注意L 不能==N 但是,N却可以是素数...囧 #include <iostream> #include <cstdio> #inclu ...