自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 vue2实现将el-table表格数据导出为长图片

使用canvas的toDataURL方法将画布导出为图片格式(例如PNG)。使用html2canvas库将表格区域转换为画布(canvas)。创建一个图片元素并将其源设置为导出的图片数据。

2024-06-04 17:36:59 435

原创 vue项目中使用websocke即时通讯实现系统公告实时获取并提醒

发布者设置需要发布的公告内容、公告接收用户和发布时间,到达发布时间时及时通知提醒已登录系统用户,使用websocke来实现前端与服务器保持长连接,以便实时过去公告信息。在用户登录成功后建立连接,App.vue中也要建立连接(用户刷新后要重新连接)对应通知页面获取数据并以弹框的形式渲染。

2024-05-10 11:21:04 1539

原创 微信H5下载文件处理:让微信自动弹起跳转外部浏览器窗口

再也不用管微信如何的更新,直接判断如果是在微信中打开,然后弹出一个遮罩提示用户在浏览器中打开下载。并且不加关闭的按钮。效果如下面这样子,这样子用户微信中打开链接,就提示在浏览器中打开,并且可以直接下载应用了。此方法在实际项目中实操过,比较友好。微信上进行的网页宣传、游戏传播、文件下载各类活动很多,因微信内置浏览器限制等因素无法完成下载,这时需要跳转至第三方浏览器完成后续操作。、(个人感觉第一中方法对用户不太友好,操作过于繁琐)、弹出一个遮罩提示用户在新的浏览器窗口打开。

2024-04-19 11:16:41 2780 11

原创 vue项目登录模块滑块拼图验证功能实现(纯前端)

在当今互联网时代,随着技术的不断进步,传统的验证码验证方式已经无法满足对安全性和用户体验的需求。为了应对日益狡猾的机器人和恶意攻击,许多网站和应用程序开始引入图形验证码,其中一种备受欢迎的形式就是图片旋转验证功能。这项技术通过利用用户交互、视觉识别和动态效果,为用户提供了一种全新、有趣且高效的验证方式。本文将深入探讨如何实现这一引人注目的图片旋转验证功能,让您轻松保护网站安全,同时提升用户体验效果展示功能介绍:在vue项目中将此验证弹框封装成一个单独的组件,完整代码如下;此功能中的图是利用ca

2024-03-14 10:59:30 2200

原创 vue项目登录模块图片旋转验证功能实现(纯前端)

在vue项目中将此验证弹框封装成一个单独的组件,完整代码如下;登录之前点击“安全验证”进入验证模块,拖动滑轨调整图片旋转位置,完成验证功能,验证失败会自动刷新再次验证,点击“刷新”也可以收到刷新图案,这是一个由纯前端实现的验证功能;

2024-03-14 09:58:26 837 1

原创 最全前端程序猿面试题汇总

https://blog.poetries.top/browser-working-principle/guide/part5/lesson22.html#javascript-是如何影响-dom-生成的。https://alienzhou.com/projects/fe-performance-journey/#旅途的行程路线。http://www.ayqy.net/blog/nodejs进程间通信/

2023-08-18 17:15:33 100

原创 前端日常总结

定义一个对象 和 一个空数组(用来接收转换后的数据)注意: 给table表格设置一个高度,并绑定。方便后面操作真实DOM;

2023-02-28 13:44:16 93

原创 前端日常问题总结(字符串)

序列化:就是将对象转化成字节序列的过程。反序列化:就是讲字节序列转化成对象的过程。对象序列化成的字节序列会包含对象的类型信息、对象的数据等,说白了就是包含了描述这个对象的所有信息,能根据这些信息“复刻”出一个和原来一模一样的对象。

2023-01-06 13:48:15 510

原创 前端日常问题总结

问题:使用Elementui中Cascader 级联选择器时,后端返回的数组里面最后一级会显示一个空数组,显示不友好,如图所示// 获取地区列表 getAreaList() {//后端返回的地区数据 _this . recursion(_this . areaList);//调用递归方法并传参 } }) . catch((err) => {});} , //利用递归方法删除最后一个空数组 recursion(areaList) {} else {//删除数组 } });

2022-11-18 16:52:26 178

原创 为什么有公司规定所有接口都用Post?

看到这个标题,你肯定觉得离谱。怎么会有公司规定所有接口都用Post,是架构菜还是开发菜。这可不是夸大其词,这样的公司不少。在特定的情况下,规定使用Post可以减少不少的麻烦,一起看看。

2022-10-09 10:03:26 315

转载 Vue问题集合

Vue常见面试题1、Vue优点?(1)轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十kb;(2)简单易学:国人开发,中文文档,不存在语言障碍 ,易于理解和学习;(3)双向数据绑定:保留了angular的特点,在数据操作方面更为简单;(4)视图,数据,结构分离:使数据的更改更为简单,不需要进行逻辑代码的修改,只需要操作数据就能完成相关操作;(5)虚拟DOM:dom操作是非常耗费性能的, 不再使用原生的dom操作节点,极大解放dom操作,但具体操作的还是dom不过是换了另一种方式;

2021-06-24 18:32:39 127

原创 Node.js学习教程01

Node.js简介Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型。Node 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言。发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。Node对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器

2020-11-09 18:13:42 145

原创 Vue.js学习总结04-------Vue+ElementUI

Vue+ElementUI实战操作!上代码1. 创建一个名为 hello-vue 的工程vue init webpack hello-vue2… 安装依赖,我们需要安装 vue-router、element-ui、sass-loader 和node-sass 四个插件# 进入工程目录cd hello-vue# 安装 vue-routernpm install vue-router --save-dev# 安装 element-uinpm i element-ui -S# 安装依赖

2020-10-29 16:18:53 259

原创 Vue.js学习总结03----第一个Vue-cli项目

什么是Vue-clivue-cli官方提供的一个脚手架,用于快速生成一个vue的项目模板;  预先定义好的目录结构及基础代码,就好比咱们在创建Maven项目时可以选择创建一个骨架项目,这个估计项目就是脚手架,我们的开发更加的快速;项目的功能统一的目录结构本地调试热部署单元测试集成打包上线1、需要的坏境1、安装node.jsNode.js:http://nodejs.cn/download/  安装就是无脑的下一步就好,安装在自己的环境目录下2、确认nodejs安装成功

2020-10-27 19:42:46 185

原创 Vue.js学习总结02

Vue双向绑定 v-mdel1. 什么是双向绑定​ Vue.js是一个MVVM框架,即数据双向绑定,即当数据发生变化的时候,视图也就发生变化,当视图发生变化的时候,数据也会跟着同步变化。这也算是Vue.js的精髓之处了。​ 值得注意的是,我们所说的数据双向绑定,一定是对于UI控件来说的,非UI控件不会涉及到数据双向绑定。单向数据绑定是使用状态管理工具的前提。如果我们使用vuex,那么数据流也是单项的,这时就会和双向数据绑定有冲突。2. 为什么要实现数据的双向绑定在Vue.js 中,如果使用vuex

2020-10-26 17:19:46 186

原创 Web前端之HTML+CSS的知识总结

HTML篇认识htmlhtml不是一种编程语言,是一种标记语言。标记语言是由一套标识标签组成的html使用标签来描述网页html结构<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body></html>不成对出现的标签<

2020-10-23 17:26:38 735

原创 Web前端之JavaScript框架学习总结

前端知识体系想要成为真正的“互联网Java全栈工程师”还有很长的一段路要走,其中前端是绕不开的一门必修课。本阶段课程的主要目的就是带领Java后台程序员认识前端、了解前端、掌握前端,为实现成为“互联网Java全栈工程师”再向前迈进一步。前端三要素HTML(结构):超文本标记语言(Hyper Text Markup Language),决定网页的结构和内容CSS(表现):层叠样式表(Cascading Style Sheets),设定网页的表现样式(是一门标记语言,并不是编程语言)。JavaS

2020-10-16 20:34:07 1548

原创 Vue.js学习笔记01

VueVue的核心库只关注视图层,方便与第三方库或已有项目整合。视图:HTML+CSS+JS ------>刷新后台的数据给用户看一、前端核心分析1.Vue概述Vue (读音/vju/, 类似于view)是一套用于构建用户界面的渐进式框架,由开发商由雨溪发布于2014年2月。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库(如: vue-router: 跳转,vue-resource: 通信,vuex:管理)或既有项

2020-10-13 16:43:38 465 2

原创 IDEA常用快捷键与设置

IDEA常用快捷键Alt+Enter 导入包,自动修正Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C 最近更改的代码Ctrl+R 替换文本Ctrl+F 查找文本Ctrl+Shift+Space 自动补全代码Ctrl+空格 代码提示Ctrl+Alt+Space 类名或接口名提示Ctrl+P 方法参数

2020-10-07 14:58:35 324

原创 IDEA新建Maven Java Web项目-详细教程

1、file–>new–>project–>maven2、填写GroupId、ArtifactId,Next,然后Finish。3、新建完成后,点击Enable Auto-Import自动导入包观察新建项目的目录结构没有web目录配置项目编译路径 File -> Project Structure… ->Modules -> + -> web配置web.xml文件目录和web目录位置(默认即可)配置Artifacts点击OK完成配置we

2020-10-05 16:17:53 271 1

原创 MySQL5.7版本64位下载及安装详细教程

MySQL教程简介MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性数据库 ( DataBas

2020-10-04 16:49:28 5089 2

原创 P3:Java多线程全面详解

多线程三大不安全案例案例一:package com.TestThread;/** 不安全的买票* 线程不安全,有负数* 因为每个线程在自己的工作内存交互,内存控制不当会造成数据不一致.假如有三个人同时抢最后一张票* 三个人买的时候看到的都是1,都将1拷贝到自己的内存了,第一个人买了,就变成0了,第二个人再买就变成-1了* 模拟延时是为了放大问题的发生性!* */public class UnsafeBuyticket { public static void main(Strin

2020-07-13 10:26:05 246 1

原创 P2: Java多线程全面详解

静态代理模式代理模式是面向对象编程比较常见的设计模式需要注意的有下面几点:用户只关心接口功能,而不在乎谁提供了功能。上图中接口是 Subject。接口真正实现者是上图的 RealSubject,但是它不与用户直接接触,而是通过代理。代理就是上图中的 Proxy,由于它实现了 Subject 接口,所以它能够直接与用户接触。用户调用 Proxy 的时候,Proxy 内部调用了 RealSubject。所以,Proxy 是中介者,它可以增强 RealSubject 操作。[静态代理实例]p

2020-07-07 16:22:07 141

原创 P1: Java多线程全面详解

概述进程,线程和多线程进程: 是一个正在执行中的程序,每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或者叫一个控制单元;线程: 就是进程中的一个独立控制单元,线程在控制着进程的执行。一个进程中至少有一个线程。多线程: 一个进程中不只有一个线程。多线程优势①、为了更好的利用cpu的资源,如果只有一个线程,则第二个任务必须等到第一个任务结束后才能进行,如果使用多线程则在主线程执行任务的同时 可以执行其他任务,而不需要等待;②、进程之间不能共享数据,线程可以;③、系统创

2020-07-04 16:54:49 167

原创 计算机网络编程详解

计算机网络定义(连接分散的计算机设备以实现信息传递的系统)计算机网络是指将地理位置不同的具有独立功能的多台计算机加粗样式及其外部设备,通过通信线路连接起来,在网络操作系统、网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统组成计算机网络通俗地讲就是由多台计算机(或其它计算机网络设备)通过传输介质和软件物理(或逻辑)连接在一起组成的。总的来说计算机网络的组成基本上包括:计算机、网络操作系统、传输介质(可以是有形的,也可以是无形的,如无线网络的传输介质就是空间)以及相应

2020-07-02 17:19:24 1025

原创 P5:Java之GUI编程

下拉列表框组件下拉框组件(JComboBox):点击箭头可以显示其他信息列表框组件(JList):可以跟列表一样显示信息滚动窗格组件(JScrollPane):与列表框结合使用,可以滚动显示应用场景下拉框 选择地区 或者一些单个选项列表框 展示信息 一般是动态扩容注意事项列表框可以设置显示信息的个数,并与滚动窗格连用。【代码实例】package com.gui;import javax.swing.*;import java.awt.*;/** *

2020-06-23 13:47:13 253

原创 P4:java之GUI编程

SwingSwing 是一个为Java设计的GUI工具包。Swing是JAVA基础类的一部分。Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意面板。轻量级组件的缺

2020-06-14 17:12:36 204

原创 P3:Java之GUI编程

GUIJava 为 GUI 提供的 对象 都存在 java.awt 和 javax.swing 两个包中.Java 图形化界面的 产品: eclipse 这个产品使用 纯Java 语言 编写的. 所以 这个 软件不用安装, 但是至少得有jre(Java 语言程序的 运行环境).1. AWT 和 Swingjava.awt: Abstarct Window ToolKit(抽象窗口工具包), 需要调用本地系统方法 实现功能. 属于 重量级(和系统耦合(嵌入) 紧密) 控件.java

2020-06-09 14:30:35 243 1

原创 Java之GUI编程(事件监听)

监听事件事件监听机制的特点:1.事件源2.事件3.监听器4.事件处理事件源:就是awt包或者swing包中的那些图形用户界面组件。(如:按钮)事件:每一个事件源都有自己特点有的对应事件和共性事件。(如:鼠标单击事件)监听器:将可以触发某一事件的动作(不止一个动作)都已经封装到了监听器中。以上三者,在java中都已经定义好了, 直接获取其对象来用就可以了。我们要做的事情是,就是对产生的动作进行处理。【案例】事件监听package gui.study;import java.aw

2020-06-07 16:20:45 583

原创 学习Java的第N天:Java之GUI(图形界面编程)

GUI概述早期,电脑向用户提供的是单调、枯燥、纯字符状态的“命令行界面(CLI)”。就是到现在,我们还可以依稀看到它们的身影:在Windows中开个DOS窗口,就可看到历史的足迹。后来,Apple公司率先在电脑的操作系统中实现了图形化的用户界面(Graphical User Interface,简称GUI),但由于Apple公司封闭的市场策略,自己完成电脑硬件、操作系统、应用软件一条龙的产品,与其它PC不兼容。这使得Apple公司错过了一次一统全球PC的好机会。 后来,Microsoft公司推出了风

2020-06-04 15:48:45 1561

原创 学习Java的第N天:Java之面向对象编程

面向对象编程(Object-Oriented Programming. OPP)面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据。类的概念类是一组具有相同特征和行为对象的抽象描述。类描述的是抽象概念,用于描述一个群体。类就是现实生活中所说的“类型”对象的概念对象是类的一个具体实现,是客观存在的一个具体事物/实体,具有唯一性和独立性。对象用于描述客观事物的一个实体,由一组特性和行为构成。类是抽象的,表示群体概念。对象是具体的,表示个体概念。先具有的对象,然后抽

2020-05-26 16:25:19 279 1

原创 学习Java的第N天:Java数组

定义数组指的就是一组相关类型的变量集合,并且这些变量可以按照统一的方式进行操作。数组本身属于引用数据类型。其中每一个数据称作为一个数组元素,每个数组元素可以通过一个下标(索引)来访问它们。数组的声明和创建数组声明两种形式(方括号位置前后放变量都可以)int arr[];int[] arr; //常用数组初始化数组初始化也有两种形式(使用new和不使用new)int arr[] = new int[]{1,3,5,7,9}int[] arr = {2,4,6,8,10}【实

2020-05-26 11:11:41 368

原创 学习Java的第N天:Java方法详解

方法的定义在Java的语言中,方法相当于C语言中的函数,但是它与传统的函数也有着明确的不同:在结构化的语言中,函数是一等公民,整个程序是由一个个函数组成的;但是在面向对象的语言里,类是一等公民,整个程序是由一个个类组成的。因此在Java中,方法不能独立存在,它只能属于类或者对象。因此,如果我们要定义一个方法,就必须在类中定义。值得注意的是,如果这个方法添加了修饰符static(这个修饰符后面会详细说明),这个方法就属于这个类,否则的话,这个方法属于这个类的实例。我们调用方法的方式为:类.方法 |

2020-05-19 16:39:23 123

原创 学习Java的第N天:Java基本结构

顺序结构JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。顺序结构是最简单的算法结构。语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。顺序结构在程序流程图中的体现就是用流程线将程序框自上而地连接起来,按顺序执行算法步骤。选择结构if单选择结构if语句对条件表达式进行一次测试,若测试为真,则执行下面的语句,否则跳过该语句。【演示】比如我们来接收一个用户输入,判断输入的是否为H

2020-05-17 16:48:32 209

原创 Java流程控制:用户交互Scanner

用户交互ScannerScanner对象之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。创建Scanner对象的基本语法:Scanner s = new Scanner(System.in);最简单的数据输入有两种,通过Scanner类的next()和nextLine()方法获取输入的字符串,在读取数据之前一

2020-05-16 10:58:34 130

原创 Java数据类型详解

Java基本数据类型Java语言是静态类型的(statical typed),也就是说所有变量和表达式的类型再编译时就已经完全确定。由于是statical typed,导致Java语言也是强类型(Strong typed)的。强类型意味着每个变量都具有一种类型,每个表达式具有一种类型,并且每种类型都是严格定义的,类型限制了变量可以hold哪些值,表达式最终产生什么值。同时限制了这些值可以进行的操作类型以及操作的具体方式。所有的赋值操作,无论是显式的还是在方法调用中通过参数传递,都要进行类型兼容性检查。

2020-05-13 16:22:24 251

原创 Java基础语法

Java中注释方式单行注释 //注释内容多行注释 /* …*/文档注释 /**…*/ ,这种方式和第二种方式相似。这种格式是为了便于javadoc程序自动生成文档。下面介绍一下Javadoc的标记:特别声明:(1)javadoc针对public类生成注释文档(2)javadoc只能在public、protected修饰的方法或者属性之上(3)javadoc注释的格式化:前导*号和HTML标签(4)javadoc注释要仅靠在类、属性、方法之前Java基本概

2020-05-12 16:46:48 114

原创 Java程序运行机制及其运行过程

高级语言的运行机制我们编程都是用的高级语言(写汇编和机器语言的大牛们除外),计算机不能直接理解高级语言,只能理解和运行机器语言,所以必须要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。翻译,其实翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。编译型语言(如C,C++,Objective-C)使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码一次性”翻译“成可被该平台硬件执行的机器码(包括机器指令和操作数),并包装成该平台所能识别的可执行

2020-05-12 11:17:36 418

原创 小白Java面试 JDK,JRE,JVM三者的区别

简单理解JDK包含了JRE,JRE包含了JVM详解JDK: java development kit, java开发工具包,用来开发Java程序的,针对java开发者。JRE: java runtime environment, java运行时环境,针对java用户JVM: java virtual machine,java虚拟机 用来解释执行字节码文件(class文件)的。JVM是什么?JVM:Java Virtual Machine(Java 虚拟机)JVM是JRE的一.

2020-05-11 15:38:16 162

原创 Java的特性和优势

Java八大特性跨平台性/可移植性这是JAVA的一个重要的优势。JAVA代码或者说字节码、二进制码可以跨平台的移植,而不用管具体的操作系统和硬件环境。JAVA本身就是面向网络的,只有在网络环境中才能显示出他的优势,比如:现在我有一个网络环境,要让我的笔记本和手机交互,笔记本环境是windows发出一个让手机定时录音的JAVA代码,手机只有简单Linux内核操作系统,照样可以完美的执行这个代码。“一次编写,随处运行”:“write once, run anywhere”安全性Java适

2020-05-11 14:42:33 339

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除