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 ...
随机推荐
- WSDL详解(一)
WSDL文档使用web服务描述语言来定义服务. 文档包括逻辑(抽象)部分和具体部分. 抽象部分用于定义独立于实现的数据类型和消息,具体部分定义一个endpoint如何实现一个可以与外界进行交互的服务. ...
- 终极对决!Dubbo 和 Spring Cloud 微服务架构到底孰优孰劣
标签: 微服务dubbospring架构 前言 微服务架构是互联网很热门的话题,是互联网技术发展的必然结果.它提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为用户提供最终价值.虽然 ...
- parted分区流程操作
parted不同于fdisk(<2T)它比fdiskf更加灵活,fdisk需保持后才能生效,而parted是分区后直接生效! 磁盘分区步骤: 1.parted /dev/sdb #进入磁盘分区 ...
- Jquery学习总结(5)——jQuery选择器
1. #id : 根据给定的ID匹配一个元素 <p id="myId">这是第一个p标签</p> <p id="not">这 ...
- JavaScript(DOM编程补充一)
HTML属性的直接调用: 还可以通过getAttribute方法获取属性的值: setAttribute方法: removeAttribute ---------------------------- ...
- [SharePoint][SharePoint Designer 入门经典]Chapter7 数据源和外部内容类型
本章概要: 1.SharePoint能够使用的数据类型 2.如何从SharePoint列表和库中取得数据并展现出来 3.SharePoint访问远程数据 4.如何把外部数据源作为列表展现在你的SPS站 ...
- Python Study(02)之 Context Manager
上下文管理器(context manager)是Python2.5开始支持的一种语法,用于规定某个对象的使用范围.一旦对象进入或者离开该使用范围,会有特殊操作被调用 (比如为对象分配或者释放内存).它 ...
- oracle 有个xe版本
oracle 有个xe版本 学习了:http://blog.csdn.net/angiexia/article/details/8615771
- [ACM] FZU 1686 神龙的难题 (DLX 反复覆盖)
Problem 1686 神龙的难题 Accept: 444 Submit: 1365 Time Limit: 1000 mSec Memory Limit : 32768 KB Pro ...
- Android - 加入Android的OpenCV依赖库(Android Dependencies) 问题
加入Android的OpenCV依赖库(Android Dependencies) 问题 本文地址: http://blog.csdn.net/caroline_wendy 假设想要加入OpenCV的 ...