Java Web 学习之路(1) —— 前端篇

news2024/11/17 3:31:37

文章目录

  • 前言
  • 1. JS
    • 1.1 引入方式
    • 1.2 基础语法
    • 1.3 函数
    • 1.4 对象
    • 1.5 事件监听
  • 2. Vue
  • 3. Ajax
  • 4. Element
  • 5. Nginx

前言

在学习后端前,还需要大致了解下前端的一些知识,所以本篇就先快速把前端的一些知识过一遍。本篇不含过多干货和技术知识,仅仅是一些概念,因为博主的重心还是在后面的后端SSM。

1. JS

1.1 引入方式

  • 内部脚本:定义在HTML中的JS脚本必须位于<script></script>标题之间
  • 外部脚本:只包含JS代码,不包含<script>标签,JS代码写在JS文件中,通过src引用该文件

script标签可以在任何位置出现多次。

1.2 基础语法

关于书写语法,与Java一样。

输出语句
在这里插入图片描述
在这里插入图片描述
变量

js中用var来声明变量。js是一门弱类型语言,变量可以存放不同类型的值。即var a可以变为字母,还可以变成数字等等。

另外,var定义的变量是全局变量,而let定义的变量是局部变量。

数据类型

JS分为原始类型和引用类型。

  • 原始类型包括数字number、string字符串、boolean布尔、null空、undefined未初始化
  • 引用类型:JS中的对象

运算符和流程控制语句

这部分和JAVA一样

1.3 函数

js函数通过function关键字进行定义:

function functionName(参数...) {
	// 要执行的代码
}

1.4 对象

  • Array:定义数组,数组长度是可变的
  • String
  • JSON
  • BOM:浏览器对象模型
    • Window:浏览器窗口对象;其中window可以省略
    • Location:地址栏对象
  • DOM:文档对象模型
    • Document:整个文档对象
    • Element:元素对象
    • Attribute:属性对象
    • Text:文本对象
    • Comment:注释对象

DOM

详细看这一篇博客:JavaScript中的DOM对象

一个小demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div class="cls">你好</div> <br>
    <div class="cls">JehanRio</div> <br>

    <input type="checkbox" name="hobby" id=""> 电影
    <input type="checkbox" name="hobby" id=""> 游戏
    <input type="checkbox" name="hobby" id=""> 旅游

    <script>
        // 将所有div标签后面加入内容
        var divs = document.getElementsByTagName("div");
        for (let index = 0; index < divs.length; index++) {
            const element = divs[index];
            element.innerHTML += "<font color='red'>  very good</font>";
        }
        // 使所有的复选框呈现选中状态
        var ins = document.getElementsByName("hobby");
        for(let i = 0; i < ins.length; ++i) {
            const element = ins[i];
            element.checked = true; // 选中
        }
    </script>
</body>
</html>

在这里插入图片描述

1.5 事件监听

事件包括:按钮被点击、鼠标移动到元素上、按下键盘按键

事件监听就是事件被侦测到时执行代码。

<input type="checkbox" onclick="on()" name="hobby" id=""> 电影
<script>
		function on() {
            alert("我被点击了")
        }
</script>

事件绑定

  • 通过HTML标签中的事件属性进行绑定
  • 通过DOM元素属性绑定

常见事件
在这里插入图片描述

2. Vue

Vue是一套前端框架,基于MVVM思想,实现数据的双向绑定,将编程的关注点放在数据上。

vue的下载要去官网:Vue.js

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- 1. 引入js文件 -->
    <script src="./js/vue.js"></script>
</head>
<body>
    <!-- 编写视图层的展示 -->
    <div id="app">
        <input type="text" v-model="message">
        {{message}}
    </div>
</body>
<script>
    // 定义vue对象
    new Vue ({
        el: "#app",     // vue接管区域
        data: {
            message: "hello, vue"
        }
    })
</script>
</html>

在这里插入图片描述
由于vue的数据双向绑定,他们展现的是同一个数据模型,数据模型的数据变化会影响视图层的展示。

插值表达式

  • 形式:{{表达式}}
  • 内容可以是变量、三元运算符、函数调用、算术运算

常用指令

指令:HTML标签带有v-前缀的特殊属性。
在这里插入图片描述
**比如说v-bind **
在这里插入图片描述
生命周期

是指一个对象从创建到销毁的整个过程。

生命周期的八个阶段:每触发一个生命周期事件,会自动执行一个生命周期方法
在这里插入图片描述
mounted:挂载完成,Vue初始化成功,HTML页面渲染成功。(发送请求到服务端,加载数据)

3. Ajax

  • 概念:异步的JavaScript和XML
  • 作用
    • 数据交换:通过Ajax可以给服务器发送请求,并获取服务器响应的数据
    • 异步交换:可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术,如:搜索联想、用户名是否可用的校验等等

3.1 Axios
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。

Axios对原生的Ajax进行了封装,简化书写,快速开发。

步骤:

  1. 引入Axios的js文件
  2. 使用Axios发送请求,并获取响应结果

一般axios就是用于异步加载数据的。

4. Element

用于美化界面,有了这个,后端程序员也能做出很漂亮的界面。(面向CV编程)

  • 安装ElementUI组件库,在命令行执行指令npm install element-ui@2.15.3
  • 引入ElementUI组件库
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);
  • 访问官网,复制组件代码,调整

5. Nginx

Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件代理服务器,其特点是占有内存少,并发能力强,在各大互联网公司都有非常广泛的应用。

官网:https://nginx.org/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1242752.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

13年测试老鸟,APP性能测试-响应时间与指标总结整理...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、性能指标在性能…

zerotier + rclone 异地同步minio文件

zerotier rclone 异地同步minio文件 场景说明解决方案部署zerotier私有化服务docker部署zerotierzerotier客户端下载加入虚拟网络web控制台设置测试网络连通性 使用rclone同步minio数据解压后文件结构使用cmd配置rclone本地minio配置远程minio配置 查看配置 同步文件 场景说明…

java:CommandLineRunner命令行操作

背景 CommandLineRunner是一个SpringBoot提供的接口&#xff0c;这个接口可以让我们在SpringBoot启动之后&#xff0c;执行一些特定的命令行操作。 实现CommandLineRunner接口后&#xff0c;SpringBoot在启动的时候会自动执行run方法。通常&#xff0c;我们可以在run方法中进…

【计算思维题】少儿编程 蓝桥杯省赛考试计算思维真题 中小学生计算思维真题详细解析第12套

中小学生蓝桥杯计算思维题真题解析第12套 1、机器人可以向上、下、左、右移动,每步移动一个格我们把机器人移动到某一格子的最短步数,叫做格子与机器人的距离。在下图中,与机器人的距离不超过3的所有格子中,一共有多少个“X”标志? A、6 B、7 C、8 D、9 答案:C 考点…

设计高手的秘密武器:5款让平面作品更出彩的软件

平面设计是一种迷人而多样化的艺术形式&#xff0c;它结合了颜色、形状、排版和创造力&#xff0c;通过图像和文本传达信息。市场上有各种各样的平面设计软件&#xff0c;选择合适的设计软件是成为优秀设计师的重要一步。为了降低软件成本&#xff0c;大多数设计师会优先使用免…

Windows如何使用key登录Linux服务器

场景&#xff1a;因为需要回收root管理员权限&#xff0c;禁止root用户远程登录&#xff0c;办公环境只允许普通用户远程登录&#xff0c;且不允许使用密码登录。 一、生成与配置ssh-key 1.使用root管理员权限登录到目标系统。 2.创建一个新的普通用户&#xff0c;和设置密码用…

c++版本opencv计算灰度图像的轮廓点

代码 #include<iostream> #include<opencv.hpp>int main() {std::string imgPath("D:\\prostate_run\\result_US_20230804_141531\\mask\\us\\104.bmp");cv::Mat imgGray cv::imread(imgPath, 0);cv::Mat kernel cv::getStructuringElement(cv::MORPH…

万宾科技智能井盖传感器效果,特点有哪些?

现在城市发展越来越好&#xff0c;对基础设施的改造越来越多&#xff0c;比如修路搭桥、整改生态等都是为民服务的好工程。平时走在路上我们享受着平整的路面&#xff0c;井然有序的交通也为我们带来很大的方便。但是一个又一个的井盖看起来无关紧要&#xff0c;实际上如果路上…

羊大师教你如何科学控制体重,轻松瘦下来

羊大师教你如何科学控制体重&#xff0c;轻松瘦下来 我们都知道&#xff0c;控制体重对于保持健康和美丽至关重要。然而&#xff0c;许多人在减肥的道路上走得波折重重&#xff0c;常常陷入挫败和不知所措的境地。那么&#xff0c;如何科学控制体重&#xff0c;轻松瘦下来呢&a…

Rust语言入门教程(二) - 变量与作用域

变量与作用域 变量的声明与初始化 Rust的基本语法格式如下&#xff1a; fn main(){let bunnies 2; }语句以分号结尾&#xff0c;用花括号包含语句块。 Rust的语法其实借鉴了很多其他的语言&#xff0c;比如C语言和Python&#xff0c; 所以变量定义的格式看起来也跟很多我们…

中期财报解读:内地业务增长失速,维他奶还能做回豆奶一哥吗?

维他奶虽然起源于中国香港&#xff0c;但却是不少内地人的儿时回忆。 这与维他奶的业务布局侧重点有关&#xff0c;中国内地一直是维他奶最重要的市场。11月21日&#xff0c;维他奶公布了截至2023年9月30日止6个月的2024财年中期业绩。财报显示&#xff0c;维他奶业务构成中&a…

基于框架的线性回归

线性回归是机器学习中最简单和最常用的回归方法之一。它建立了自变量和因变量之间的线性关系&#xff0c;并通过拟合一条直线或超平面来预测和分析数据。 基于框架的线性回归是构建线性回归模型的一种常见方法&#xff0c;它利用现有的机器学习框架来实现线性回归模型的建立、…

解决错误0x80071ac3的问题,错误代码0x80071ac3的原因

在使用电脑的过程中可能会出现错误0x80071ac3的代码问题&#xff0c;一旦出现这样的问题解决起来可能会有点麻烦&#xff0c;其实这个错误是和磁盘的问题相关&#xff0c;可以将电脑重启尝试能否解决错误0x80071ac3问题&#xff0c;如果依然不能解决问题的话&#xff0c;那么大…

每日一题:LeetCode-105.从前序遍历与中序遍历构造二叉树

每日一题系列&#xff08;day 02&#xff09; 前言&#xff1a; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f50e…

电动机保护方式

3.3.1、电动机温度保护 温度保护是利用安装在电动机内部的温度继电器或变换器来实现的。当电动机达到一定温度时继电器动作&#xff0c;通过控制电路断开电动机的主电路。对于单相小容量电动机&#xff0c;可以用继电器直接断开动力电路。 根据温度传感器的不同可以分为&…

Transformer ZOOs:transformer在不同领域的应用

Natural Language Processing Transformer:Attention is all you need URL(46589)2017.6 提出Attention机制可以替代卷积框架。引入Position Encoding&#xff0c;用来为序列添加前后文关系。注意力机制中包含了全局信息自注意力机制在建模序列数据中的长期依赖关系方面表现出…

permission is only granted to system apps 权限错误提示处理

permission is only granted to system apps 消除清单文件中的权限Permission is only granted to system apps 错误 在manifest文件中我们注册一些权限&#xff0c;当我们用到某些权限是会有一个错误提示&#xff1a;Permission is only granted to system apps&#xff0c;该…

IDEA的插件市场无法打开,无法连接到https://plugins.jetbrains.com/

1&#xff1a;网上搜到的&#xff1a; 在这里测试https://plugins.jetbrains.com/ 能否连接到&#xff0c;可以的话就成功&#xff0c;但是我一直失败&#xff0c;网络配置与防火墙也没问题。 2&#xff1a;我成功的方法&#xff1a; 把这个勾取消再测试&#xff0c;成功&…

创建文件夹的shell脚本

作者&#xff1a;朱金灿 来源&#xff1a;clever101的专栏 为什么大多数人学不会人工智能编程&#xff1f;>>> 很简单&#xff0c;先判断文件夹是否存在&#xff0c;不存在则创建。具体如下&#xff1a; #!/bin/bash # 判断文件夹是否存在 if [ ! -d "$folder…

nn.linear()的用法

https://blog.csdn.net/zhaohongfei_358/article/details/122797190