为什么学习B/S技术?

客户端   服务器   C(Client)/S(Server)有局限性,必须安装客户端

浏览器   服务器   B(Browser)/S(Server)无需安装客户端软件,也无需更新

B/S与C/S的比较:

B/S架构

C/S架构

软件安装

浏览器

在响应速度和安全性上需要花费更多设计成本

升级维护

客户端零维护

客户端需要单独维护和升级

平台相关

与操作系统平台的关系最小化

对客户端操作系统一般有限制

性能安全

在响应速度和安全性上需要花费更多设计成本

能充分发挥客户端处理能力,客户端响应快

什么是B/S技术:

B/S架构(浏览器/服务器):程序完全部署在服务器上

B/S技术的工作原理:

B/S架构采用请求/响应模式进行交互

URL(Uniform Resource Locator统一资源定位符):

URL的组成

http :// localhost:8080 / news/index.html

http:协议部分

localhost:8080:主机IP地址:端口号

news/index.html:项目资源地址

服务器:

图片服务器

文件服务器

数据库服务器

缓存服务器

应用服务器

Java Web  --->  Web服务器

Web服务器:

是可以向发出请求的浏览器提供文档的程序

提供网上的信息浏览服务

常用的Web服务器:

Microsoft:IIS

Apache: Tomcat

(Tomcat是开源的,小型的免费的)

Oracle:WebLogic

IBM:WebSphere

(前两个商用的,安全级别更高)

Nginx

(稳定性高,占用内存小,并发能力强)

Tomcat服务器:

Apache Jakarta的开源项目

轻量级应用服务器

开源、稳定、资源占用小

JSP/Servlet容器

Tomcat的目录结构:

目录

说明

/bin

存放各种平台下用于启动和停止Tomcat的脚本文件

/conf

存放Tomcat服务器的各种配置文件

/lib

存放Tomcat服务器所需的各种JAR文件

/logs

存放Tomcat的日志文件

/temp

Tomcat运行时用于存放临时文件

/webapps

当发布Web应用时,默认情况下会将Web应用的文件存放于此目录中

/work

Tomcat把由JSP生成的Servlet放于此目录下

操作Tomcat注意事项:

1. startup.bat启动后,不许关闭,一定是最小化

2. 如果Tomcat启动时,窗口一闪而过

找到jdk   D:\大数据\Java\Java jdk

环境变量path   D:\大数据\Java\Java jdk\bin;

建立环境变量JAVA_HOME:D:\大数据\Java\Java jdk

CTRL+C:快速停止服务器

3. http://localhost:8080   端口号:8080   页面进入到Tomcat启动成功界面

4. 端口号修改:conf/server.xml

示例:

5. 如何在Tomcat中部署静态网站

将网页复制到webapps文件夹中去,然后startup.bat启动后,再网页中输入http://localhost:8080/news/index.html

使用集成开发工具创建Web项目:

  1. 在MyEclipse中创建Web项目:File -> New -> Web Project
  2. 为项目命名并调整相关设置
  3. 查看项目目录结构

部署Web项目方法一:

1. 配置Tomcat

a. Window -> Preferences -> MyEclipse -> Servers -> Tomcat

b. 选择Tomcat版本及安装路径

c. 设置为可用状态(Enable)

d. 指定Tomcat运行Java的运行环境

2. 部署Web项目

a. 单击MyEclipse菜单栏上的部署图标

b. 选择需要部署的项目

c. 选择Tomcat服务器并确认

部署Web项目方法二:

部署应用程序到Tomcat的webapps目录:生成War包

部署Web项目方法三:

修改server.xml

<Context path="”  docBase="”/>

提示:路径中最好不要包含中文

JSP(Java Server Pages)概述:

  1. 运行在服务器端的Java页面
  2. 使用HTML嵌套Java代码实现

工作原理:

JSP中的page指令:

通过设置内部的多个属性定义整个页面的属性

语法:

<%@ page 属性1="属性值" 属性2="属性值1,属性值2"…属性n="属性值n"%>

常用属性:

属性

描述

默认值

language

指定JSP页面使用的脚本语言

java

import

通过该属性来引用脚本语言中使用到的类文件

contentType

用来指定JSP页面所采用的编码方式

text/html, ISO-8859-1

JSP中的声明:

语法:

<%! Java代码%>

示例:JSP页面中定义方法对日期进行格式化

<%@ page language="java" import="java.util.*,java.text.*" contentType="text/html; charset=utf-8"%>

<html>

<%!

String formatDate(Date d){

SimpleDateFormat formater =

new SimpleDateFormat("yyyy年MM月dd日");

return formater.format(d);

}

%>你好,今天是

<%=formatDate(new Date()) %>

</body>

</html>

注:

方法声明后可在页面中多处调用

JSP中的out对象:

  1. out对象是JSP的内置对象:无需实例化即可使用
  2. 实现数据的输出显示
  3. out对象的方法

属性

说明

Print

向页面输出显示

printIn

向页面输出显示,在结尾处添加换行

但是在实际页面中print和println没有区别,因为在页面中不会解析出println的换行;想要换行必须加<br/>

JSP中的注释:

  1. HTML的注释:<!-- html注释-->
  2. JSP注释:<%-- JSP注释--%>
  3. 在JSP脚本中注释:<%//单行注释%>;<%/*多行注释*/%>

网页输出文本:

1. 用Java语言输出文本:

<% out.println("<h1>课工场Java Web高能充电</h1>"); %>

2. 直接用HTML输出文本:

<h1>课工场Java Web高能充电</h1>

3. 使用<% out,print(); %>或<% out.printIn(); %>实现显示页面全部内容,这样做的弊端:

①JAVA代码与HTML标签混在一起,可读性不好,不利于修改

②显示数据来自于数据库,数据库里的数据不能写死,要用变量来读取写在数据库的内容

③因为不方便所以这种方法用的比较少

4. 用变量的方法输出文本:

<% String title="课工场Java Web高能充电"; %>

<h1> <%=title%></h1>

好处:直接在数据库里读的时候直接调用后台方法。

注:变量声明的时候要在最后加一个分号(;),在调用的时候前面要写(<%=),但是最后不能写分号(;)

特殊字符转义:

在JSP中特殊字符如:“”;<>;等。要用转义字符(\)来转义从而使用

<%String title="课工场\"Java Web\"高能充电";%>

<h1> <%=title%></h1>

示例解析:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%@ page%>:这是一个配置指令会说明三个指令

language:说明编程语言,这里用的是Java语言

import:代表页面里导入的一个包,这里导入的是java.util.*包

pageEncoding:指的是页面的编码格式,这里用的是UTF-8语言

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<%......%>:要在这里写Java代码,叫做Java的小脚本

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

<!--<link rel="stylesheet" type="text/css" href="styles.css">-->

</head>

<body>

This is my JSP page. <br>

</body>

</html>

剩下的都是普通的html标签

JSP页面元素:

Web容器处理JSP文件请求:

第一次处理需要经过3个阶段:

  1. 翻译阶段
  2. 编译阶段
  3. 执行阶段

第一次请求之后,Web容器可以重用已经编译好的字节码文件:

如果对JSP文件进行了修改,Web容器会重新对JSP文件进行翻译和编译。

JSP声明全局变量和方法:

<%//jsp中的局部变量和全局变量

int i = 9; %>

<h1><%=i++%></h1>

<%! int j = 9; %>

<h1><%=j++%></h1>

每次刷新i的值不会改变,j的值会每次加1

其中i是局部变量(JSP里设定局部变量的方法:<%......%>),j是全局变量(JSP里设定全局变量的方法:<%!......%>)

全局变量在源文件的位置:

要是设定一个方法用的符号是<%!......%>

如:

<%!  public int add(){

return 8+9;   }   %>

方法在源文件的位置:

在页面里写方法的做法不常见,后台方法一般都写在src里

Web程序调试和排错:

1. 404错误---找不到访问的页面或资源

①运行时,URL输入错误

排错方法:检查URL

排除错误:使用正确的URL

②将页面放在WEB-INF下

排错方法:检查文件的存放位置(META-INF,WEB-INF文件夹下的内容无法对外发布)

排除错误:把index.html文件拖至WebRoot文件夹下

③外部启动Tomcat,未部署Web应用

排错方法:检查Web应用是否正确部署

排除错误:部署Web应用

2. 500错误---JSP页面代码有误

JSP页面代码有错误

排错方法:检查myeclipse里的报错信息

排除错误:直接修改

3. 页面无法显示

未启动Tomcat

排错方法:检查Tomcat服务能否正确运行

排除错误:

  1. 启动Tomcat服务
  2. 如果控制台上显示Tomcat服务已启动,观察端口号是否与预期端口号一致,按照实际端口号重新运行

总结:

Java Web中动态网页开发基础重点总结相关推荐

  1. 第四本书第1章 动态网页开发基础、

    一.动态网页开发基础 1.动态网页:能跟用户进行交互的网页,能够处理用户请求的网页 2.B/S架构:浏览器:客户端零维护:与操作系统平台的关系最小化:在响应速度和安全性上需要花费更多设计成本 C/S架 ...

  2. 动态网页开发基础(Web)

    B/S与C/S的比较 B/S框架         C/S框架 软件安装 浏览器 需要专门的客户端应用 升级维护 客户端0维修 客户端需要单独维护和升级 平台相关 与操作系统平台的关系最小化       ...

  3. jsp 动态添加一行数据_大数据从入门到深入:JavaEE 之 动态网页开发基础 JSP的数据交互(3)...

    1.7 JSP实战 1.7.1 需求说明 : 采用model 1模式开发数据库表的增删改查业务 假设 数据库有一张表叫person表,完成person表的页面级别的 查询全部 添加 修改 删除 功能 ...

  4. [置顶]动态网页开发基础【笔记】

    一.C/S结构和B/S结构    1.C/S(Client/Server):客户端服务程序,控制台程序,window应用    2.B/S(Browser/Server):浏览器服务程序[java:j ...

  5. 动态网页开发基础【笔记】

    一.C/S结构和B/S结构 1.C/S(Client/Server):客户端服务程序,控制台程序,window应用 2.B/S(Browser/Server):浏览器服务程序[java:jsp应用:C ...

  6. JSP动态网页开发技术

    一.学习目标 1.JSP概述 2.JSP指令 3. JSP 隐式对象 二.重点知识 1.JSP概述:JSP是什么? 1)JSP全称Java Server Pages,是一种动态网页开发技术.它使用JS ...

  7. Java Web中的jsp技术

    在动态网页开发中,经常需要动态生成html内容,如果使用servlet来实现html页面数据的改变会导致程序十分臃肿.为了克服这些缺点,Oracle(Sun)公司推出了jsp技术. JSP全名是Jav ...

  8. 【渝粤题库】陕西师范大学164111 Java及JSP动态网页编程与应用 作业 (高起专)

    <JAVA与JSP动态网页编程与应用>作业 一.单选题 1.以下哪项都是关键字( ) A.package privati protect throw B. false final fina ...

  9. 动态网页开发技术(三):jsp

    Jsp概述 java server pages-java服务器页面,是一种动态网页技术标准,在传统的网页HTML中插入Java程序段(Scriptlet和JSP标记tag),从而形成JSP文件.JSP ...

最新文章

  1. 改善深度学习训练的trick总结 | CSDN博文精选
  2. VMware虚拟机中调用本机摄像头详解
  3. 458. 可怜的小猪
  4. win10+vscode部署java开发环境
  5. jupyter notebook代码自动完成功能
  6. SAP License:SAP实施项目中顾问与客户的有效沟通
  7. encapsulation
  8. 【一天一个C++小知识】007.C++中的struct、enum和union以及内存对齐与大小端问题
  9. python笔试和面试题汇总(免费下载)
  10. mac m1 安装svn/subversion
  11. PreferenceScreen的应用
  12. span标签之间的空隙如何解决
  13. 一位IT博士的大学十年
  14. Java反射05 : 修饰符Modifier静态方法学习示例
  15. 两群羊和一只狼,两只狮子
  16. 风吹过,云散了,影子淡了
  17. Windows程序内存泄漏(Memory Leak)分析之UMDH
  18. 你真的了解分类模型评估指标都有哪些吗?【附Python代码实现】
  19. 电商领域用户的留存分析
  20. 高清会议录播系统是什么,跟普通会议录播系统有什么区别?

热门文章

  1. Kali学习之从入门到入狱(三)
  2. 盘点六大程序员接单网站,务必收藏!
  3. 使用 Hexo 搭建个人博客
  4. listview的动态加载数据问题
  5. 腾讯网移动端H5页面设计实战分享
  6. 服务器向用户返回的状态码和提示信息
  7. 国庆福利“CSS定位大礼包”
  8. 小旋风泛目录站群V3.1源码 (目录群控)mip+反向代理+ASCII+干扰码
  9. MySQL 与 mysql-connection-java 版本不对应导致出现 SQLException: Could not retrieve transation read-onl status
  10. 全球及中国铁路运输行业建设形势分析与发展趋势预测报告2022版