JavaWeb概念、应用、服务器

简介: 静态网站是指在服务器上预先准备好的网页内容,用户访问时服务器直接将这些静态页面发送给用户浏览器,没有经过额外的处理或数据库查询。

基本概念


web开发:

web,网页的意思,比如www.baidu.com


静态web:

html,css


静态网站是指在服务器上预先准备好的网页内容,用户访问时服务器直接将这些静态页面发送给用户浏览器,没有经过额外的处理或数据库查询。静态网站通常由HTML、CSS和JavaScript等静态文件组成。相比动态网站,静态网站的优点是加载速度快、安全性高、易于部署和管理,适用于内容不经常变化、不需要交互功能的网站。常见的静态网站生成工具有Jekyll、Hugo等

动态web:

淘宝,几乎是所有的网站;

提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!

技术栈:Servlet/JSP,ASP,PHP

动态网站是指每次用户访问时,服务器会根据用户请求动态生成网页内容并返回给用户浏览器的网站。动态网站通常包含与数据库交互、用户输入验证、内容个性化等功能,可以根据用户的需求和行为实时地生成页面内容。动态网站通常使用服务器端脚本语言(如PHP、Python、Ruby等)或框架(如Django、Ruby on Rails等)来处理用户请求,并与数据库进行交互。

动态网站的优点是能够实现更复杂的功能和交互,内容可以根据用户的需求和行为动态生成,适用于需要频繁更新内容、用户交互较多的网站。然而,相对于静态网站,动态网站通常需要更多的服务器资源和数据库支持,加载速度可能会慢一些。

查看网页的url,url就是当你查看网页时在浏览器搜索栏输入的一行链接,如果你的网站连结尾码为html、.htm、.html、.shtml、.xml,那么这个网页就为静态网页;而动态网站往往会使用ASP或PHP或JSP为尾码,根据这个尾码名你可以判断一个网页是否为动态网页。

在Java中,动态web资源开发的技术被称为JavaWeb

1.2web应用程序

web应用程序:可以提供浏览器访问的程序;

a.html,b.html…多个web资源可以被外界访问,对外界提供服务。

能访问的任何一个页面或者资源,都存在于这个世界每一个角落的计算机上。

URL:统一资源定位符(种子)

这个统一的web资源会被放在同一个文件夹下,web应用程序–>Tomcat:服务器

一个web应用由多部分组成(静态web,动态web)

比如

html,css,js

JSP,servlet

Java程序

jar包

配置文件

web应用程序编写完毕后,若想提供给外界访问:需要服务器统一管理

1.3静态web

。html或者htm这些后缀的文件,如果在服务器存在,那么我们就可以直接读取联络

服务器静态响应

1.3静态web缺点

web页面无法动态更新,所有用户看到的都是同一个页面

轮播图,点击特效

JavaScript

VBScript

他无法和数据库交互

1.4动态web

在动态web中静态资源存储在文件系统中,动态资源在动态服务器

缺点

假如动态web资源出现错误,我们需要重新编写我们的后台程序,重新发布也就是停机维护

优点

可以和数据库交互

2.web服务器

ASP

微软:国内最早流行的

在HTML中嵌入VB脚本,ASP+COM

ASP(Active Server Pages)是由微软开发的一种用于创建动态网页的服务器端脚本技术。ASP允许开发者使用VBScript或JScript等脚本语言在服务器端编写代码,生成动态内容并将其发送到用户的浏览器。

通过ASP,开发者可以在HTML页面中嵌入服务器端脚本代码,实现动态内容生成、数据库访问、用户交互等功能。ASP页面通常具有“.asp”扩展名。

在ASP的基础上,微软推出了ASP.NET,它是一个更强大、更灵活的Web应用程序框架,支持多种编程语言(如C#、Visual

Basic.NET等),提供了更丰富的功能和更好的性能。

虽然ASP在过去曾经非常流行,但随着技术的发展,现在更多的Web开发者已经转向使用其他技术框架和平台来构建动态网站,比如PHP、Python、Ruby

on Rails等。

JSP/Servlet:

B/S:浏览器和服务器

C/S客户端和服务端sun公司主推B/S架构,基于Java语言,可以承载高并发,高可用,高性能。语法像ASP

JSP(JavaServer Pages)和Servlet是Java企业级开发中常用的技术,用于构建动态Web应用程序。

JSP是一种在HTML页面中嵌入Java代码的技术,允许开发者将动态内容和静态内容结合在一起。通过JSP,开发者可以在HTML页面中使用标签和表达式来调用Java代码,实现动态生成内容、数据库交互等功能。JSP页面通常具有“.jsp”扩展名。

Servlet是Java编写的服务器端程序,它接收来自客户端(如浏览器)的请求并生成响应。Servlet通常被用来处理用户请求、执行业务逻辑、与数据库交互等。Servlet可以动态生成HTML内容、接收表单数据、管理会话状态等。

JSP和Servlet经常一起使用,通过Servlet处理业务逻辑和数据操作,然后将结果传递给JSP进行展示。这种模型被称为MVC(Model-View-Controller)模式,能够有效地分离数据处理和界面展示。

IIS

微软的:ASP,windows中自带的

3.Tomcat

Tomcat是一个开源的Java Servlet容器,也是一个Web服务器。它由Apache软件基金会开发和维护,可以运行在跨平台的操作系统上,如Windows、Linux、macOS等。

Tomcat主要用于部署和运行Java Web应用程序,例如Java Servlet、JavaServer Pages(JSP)和Java

WebSocket等。它支持Java EE规范,并且能够在Web服务器中运行Java

Web应用程序。Tomcat是一款轻量级的Web服务器,具有独立的HTTP服务器功能,也可以与其他Web服务器(如Apache HTTP

Server)配合使用。

Tomcat的特点包括易于安装、易于配置、良好的性能、支持多个虚拟主机、可扩展性强等。同时,Tomcat还提供了丰富的管理和监控工具,使得管理员能够方便地管理和监控Tomcat服务器的运行状态。

相关文章
|
1月前
|
存储 缓存 前端开发
如何优化 SSR 应用以减少服务器压力
优化SSR应用以减少服务器压力,可采用代码分割、缓存策略、数据预加载、服务端性能优化、使用CDN、SSR与SSG结合、限制并发请求、SSR与CSR平滑切换、优化前端资源及利用框架特性等策略。这些方法能有效提升性能和稳定性,同时保证用户体验。
|
1月前
|
弹性计算 开发工具 git
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我在部署托管于Github/Gitee的代码到阿里云ECS服务器时,经常遇到繁琐的手动配置问题。近期,阿里云ECS控制台推出了一键构建部署功能,简化了这一过程,支持Gitee和GitHub仓库,自动处理git、docker等安装配置,无需手动登录服务器执行命令,大大提升了部署效率。本文将详细介绍该功能的使用方法和适用场景。
2分钟在阿里云ECS控制台部署个人应用(图文示例)
|
23天前
|
开发框架 .NET PHP
网站应用项目如何选择阿里云服务器实例规格+内存+CPU+带宽+操作系统等配置
对于使用阿里云服务器的搭建网站的用户来说,面对众多可选的实例规格和配置选项,我们应该如何做出最佳选择,以最大化业务效益并控制成本,成为大家比较关注的问题,如果实例、内存、CPU、带宽等配置选择不合适,可能会影响到自己业务在云服务器上的计算性能及后期运营状况,本文将详细解析企业在搭建网站应用项目时选购阿里云服务器应考虑的一些因素,以供参考。
|
1月前
|
安全 开发工具 Swift
Swift 是苹果公司开发的现代编程语言,具备高效、安全、简洁的特点,支持类型推断、闭包、泛型等特性,广泛应用于苹果各平台及服务器端开发
Swift 是苹果公司开发的现代编程语言,具备高效、安全、简洁的特点,支持类型推断、闭包、泛型等特性,广泛应用于苹果各平台及服务器端开发。基础语法涵盖变量、常量、数据类型、运算符、控制流等,高级特性包括函数、闭包、类、结构体、协议和泛型。
30 2
|
1月前
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###
|
SQL 存储 Java
Java 应用与数据库的关系| 学习笔记
快速学习 Java 应用与数据库的关系。
209 0
Java 应用与数据库的关系| 学习笔记
|
SQL 存储 Java
Java 应用与数据库的关系| 学习笔记
快速学习 Java 应用与数据库的关系。
198 0
Java 应用与数据库的关系| 学习笔记
|
SQL 存储 关系型数据库
Java应用与数据库的关系|学习笔记
快速学习Java应用与数据库的关系
Java应用与数据库的关系|学习笔记
|
2天前
|
Java
Java—多线程实现生产消费者
本文介绍了多线程实现生产消费者模式的三个版本。Version1包含四个类:`Producer`(生产者)、`Consumer`(消费者)、`Resource`(公共资源)和`TestMain`(测试类)。通过`synchronized`和`wait/notify`机制控制线程同步,但存在多个生产者或消费者时可能出现多次生产和消费的问题。 Version2将`if`改为`while`,解决了多次生产和消费的问题,但仍可能因`notify()`随机唤醒线程而导致死锁。因此,引入了`notifyAll()`来唤醒所有等待线程,但这会带来性能问题。
Java—多线程实现生产消费者
|
4天前
|
安全 Java Kotlin
Java多线程——synchronized、volatile 保障可见性
Java多线程中,`synchronized` 和 `volatile` 关键字用于保障可见性。`synchronized` 保证原子性、可见性和有序性,通过锁机制确保线程安全;`volatile` 仅保证可见性和有序性,不保证原子性。代码示例展示了如何使用 `synchronized` 和 `volatile` 解决主线程无法感知子线程修改共享变量的问题。总结:`volatile` 确保不同线程对共享变量操作的可见性,使一个线程修改后,其他线程能立即看到最新值。