首页 > 编程语言 >JavaWeb程序设计基础

JavaWeb程序设计基础

时间:2023-08-20 14:31:55浏览次数:46  
标签:Java JavaWeb 基础 注释 HTML JSP 程序设计 Servlet 页面

基础认识

1、web技术简介

(1)HTML:HTML1.0->HTML5.0(H5),标签是语法

(2)CSS:样式表,让页面美起来

(3)JavaScript:脚本,让页面动起来

(4)DOM:元素的树结

2、动态网页技术

(1HTML是编制静态网页的基本语言

(2)动态网页:可以根据访问者的不同需要,对访问者输入的信息提供不同响应的网页

不同的人、不同的时间、不同的输入访问同一网址会得到不同的页面

例如:

显示当前时间:现在北京时间 在线标准北京时间校对 (beijing-time.org)

②淘宝、拼多多:千人千面

③个别软件“杀熟”事件

(3)常用的动态网页技术

①Servlet技术Java Web开发技术之一,由服务器端调用和执行的Java类,小型的、与平台无关的Java类,被用来扩展服务器的性能

②JSP是Java Server Pages缩写,Java语言编写的服务器端运行的页面,页面由 HTML代码和嵌入其中的Java代码组成,拓展阅读如下:

③CGI( Common Gateway Interface )即通用网关接口,最早用来创建动态网页的一种技术,可以使浏览器与服务器之间产生互动关系

④ASP(Active Server Page)使用很广泛的开发动态网站的技术,通过在页面代码中嵌入VBScript或JavaScript脚本语言来生成动态的内容,ASP存在很多优点,简单易学,并且ASP是与微软的IIS捆绑在一起,在安装Windows的同时安装IIS,就可以运行ASP应用程序了

⑤PHP来自于Personal Home Page一词,但现在的PHP已经不再表示名词的缩写,而是一种开发动态网页技术的名称。PHP语法类似于C,并且混合了Perl、C++和Java的一些特性,是一种开源的Web服务器脚本语言

编程语言流行:TIOBE 指数 - TIOBE

3、JSP的运行原理

JSP文件被JSP引擎编译成Java的class文件,就是Servlet,将产生的Servlet加载到内存执行,Servlet的运行结果以HTML(或XML)形式通过Web服务器返回给客户端的浏览

一、JSP的基本组成

1、JSP原始代码中包含了模板元素和JSP元素

(1)模板元素:JSP引擎不处理的部分,HTML+JavaScript+CSS等

(2)JSP元素:JSP引擎直接处理的部分(注意该部分必须符合JSP语法,否则会导致编译错误)

JSP元素的组成内容有:

①脚本元素:声明、脚本段、表达式

②指令元素:page、include、taglib、tag

③动作元素:"jsp: include"、"jsp: forward"、"jsp: dobody"

④注释:JSP隐藏注释、java注释、HTML注释

2、JSP页面的基本组成例子如下

<!-- JSP中的指令标识 -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.util.Date" %>
<html>
<head>
<title>JSP页面的基本构成</title>
</head>
<body>
	<center>
  <!-- 嵌入的Java代码 -->
  <%String today=new Date().toLocaleString(); %>
  <!-- JSP表达式 -->
  今天是:<%=today%>
  <!-- HTML标记语言 -->
	</center>
</body>
</html>

二、脚本元素

用Java写的脚本代码,以“<%”开始,以“%>”结束

1、脚本段

(1)格式:<%合法的Java代码;%>

(2)声明变量、调用方法和进行表达式运算,每行语句后面要加入分号

(3)脚本程序中定义的变量在当前的整个页面有效,但不会被其他的线程共享

(4)当前用户对变量的操作不会影响到其他的用户

(5)变量所在的页面关闭后,被定义的变量会被注销

<%@ page language="java" import="java.util. * " contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<title>1+2+3...+100</title>
</head>
<body>
<% int sum=0;
	for(int i=1;i<=100;i++){
  sum+=i;
	}
%>
<% out.println("sum="+sum); %>
</body>
</html>

2、表达式

以“<%=”开始,以“%>”结束,注意%与=中间不能有空格

(1)语法:<%=expression%>

(2)执行结果会被自动转换成字符串,显示在JSP页面中

(3)表达式不是完整的Java语句,后面不能加“;”

JSP表达式在页面被传化为Servlet后,转换为out.println()方法,即输出语句<%out.println("sum="+sum);%>的效果相当于sum=<%=sum%>

3、声明

以“<%!”开始,以“%>”结束,可以声明变量、方法和类

(1)语法:<%!声明变量或方法的代码%>

(2)在页面中声明的变量和方法在整个页面内有效,并且会被多个线程即多个用户共享,任何一个线程(用户)对声明的变量或方法的修改都会改变变量、方法原来的状态

(3)其生命周期从创建到服务器关闭后结束

<%@ page language="java" import="java.util. * " contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%!
	int num = 0;        //声明一个计数变量
	synchronized void add(){        //该方法实现访问次数的累加操作,synchronized是同步锁
  num++;
	}
%>
<%add(); %><%-- 该脚本程序调用实现访问次数累加的方法 --%>
<html>
<body>
<center>您是第<%=num %>位访问该页的游客!</center></body>
</html>

4、注释

HTML注释、Java注释、JSP隐藏注释,HTML注释属于显示注释,会输出到客户端浏览器,但不进行显示,其余两种是隐式注释,不会输出到客户端浏览器

(1)HTML注释语法

①<!--这是HTML注释-->

②Java注释:JSP是在HTML中嵌入Java代码,Java本身的注释机制在JSP中照样可以使用,不会受到任何影响

(2)Java注释

①单行注释://Java提供的单行注释,客户端无法查看

②多行注释:/*Java提供的多行注释,客户端无法查看,可以在JSP原始文件以及JSP翻译成的Servlet中看到*/

(3)JSP隐藏注释

①<%--这是隐藏的注释--%>

②不会被JP引擎解释,也不会输出到客户端

标签:Java,JavaWeb,基础,注释,HTML,JSP,程序设计,Servlet,页面
From: https://blog.51cto.com/u_16037524/7161620

相关文章

  • Ansible 基础
    ansible是一个自动化的工具,所以ansible并没有服务需要进行管理;主要来实现企业级的自动化批量部署或下发配置等等,并且ansible还是一个无代理架构,可以通过应用自身的能力来管理应用本身。ansible优势:不需要去做重复的事,配置的下发和应用的部署,以及滚动更新ansible执行任务的方式......
  • XXE漏洞--xml基础知识
    一、XML基础知识可以用于配置文件、交换数据要求:XML文档必须有根元素XML文档必须有关闭标签XML标签对大小写敏感XML元素必须被正确嵌套XML属性必须加引号DTD(DocumentTypeDefinition)文档类型定义自动校验格式内容,元素ELEMENT校验实体ENTITY定义字符或值,相当于全局变......
  • 【Freertos基础入门】深入浅出freertos互斥量
    @TOC前言FreeRTOS是一款开源的实时操作系统,提供了许多基本的内核对象,其中包括互斥锁(Mutex)。互斥锁是一种常用的同步机制,用于确保在同一时间内只有一个任务可以访问共享资源,防止竞态条件等并发问题。本文将介绍FreeRTOS中的互斥锁的使用方法和注意事项。一、互斥量是什么?当多个任务......
  • 基础入门-算法分析&传输加密&数据格式&密文存储&代码混淆&逆向保护
    基础入门-算法分析&传输加密&数据格式&密文存储&代码混淆&逆向保护基础入门-算法分析&传输加密&数据格式&密文存储&代码混淆&逆向保护传输数据-编码型&加密型等传输格式-常规&JSON&XML等密码存储-Web&系统&三方应用代码混淆-源代码加密&逆向保护加密:1.常见加密编码进制等算法解......
  • shell脚本基础
    基础命令示例#!/bin/bash固定格式echo"inputstr"输出字符串到屏幕read变量名读取键盘输入test$first==$second&&echo"dengyv"||echo"notdeng"判断字符串是否相等echo"filename"$0。脚本名称echo"totalparamnum"$#。参数个数echo......
  • 基于hexo和aws云搭建个人博客,0基础0费用(2W字超详细图文教程)
    这是篇概述文章,详细参考Hexo建站专栏 最近几个月一直在整理之前的技术笔记,目前虽在体系上还尚有欠缺,但内容方面整理的七七八八了,这些内容一部分记录在了云笔记中另一部分记录在了博客上。于是决定搭建一个个人的技术博客网站以方便技术体系和相关资料的展示和推广,初步的想法和需求......
  • MySQL中的事务基础
    事务的ACID特性MySQL中的事务指的是在数据库操作中,将一组SQL语句作为一个不可分割的执行单元进行处理的机制。事务具有原子性、一致性、隔离性和持久性的特性(ACID特性)。原子性(Atomicity):事务中的所有操作要么全部成功执行,要么全部失败回滚。如果事务执行过程中发生错误或中断,系统......
  • # yyds干货盘点 # Pandas实战——灵活使用pandas基础知识轻松处理不规则数据
    大家好,我是皮皮。一、前言前几天在Python最强王者群【wen】问了一个pandas数据合并处理的问题,一起来看看吧。他的原始数据如下所示:然后预期的结果如下所示:二、实现过程这里【瑜亮老师】给了一个指导如下:原始数据中包含所有所需的信息,但是因为源系统导出的格式问题,有些数据被分配到......
  • java基础
    变量是指一个包含值的存储地址以及对应的符号名称!!变量的名字和变量的值变量就是存储数据的载体类变量使用static关键字修饰,是静态变量static修饰符告诉编译器,无论类被实例化多少次,类变量始终只有一个变量副本。只要类被加载到内存中,它就会存在实例变量也被称为非静态......
  • 01 简介、基础语法
    一、Python简介1、简介Python由荷兰数学和计算机科学研究学会的吉多范罗苏姆于1990年设计,Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言。2021年10月,语言流行指数的编译......