lombok
安装lombok 引入jar包 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.18</version> <scope>provided</scope> </dependency> 启用lombok File => Settings => Build, Execution, Deployment => Compiler => Annotation Processors勾选 Enable annotation processing 安装lombok插件 File => Settings => Plugins, 搜索lombok下载 代码编写构造函数相关:@AllArgsConstructo...
springboot2
springboot集成redis下载redis的windows安装包并安装 下载地址:https://github.com/MicrosoftArchive/redis/releases 安装就一路next,然后找到安装redis的目录,新建start.bat,并写入:redis-server.exe redis.windows.conf 点击start.bat启动(退出redis命令:Ctrl+c) 安装redis客户端Redis Desktop Manager 下载地址: https://pan.baidu.com/s/1Jvr9MbgFn4UJh4M1AMo3gA 提取码:3i9b 安装就一路next,然后先启动redis,然后,打开客户端 代码编写 新建StudentController类,并写入:package com.dj.app.springboot.web;import com.dj.app.springboot.service.StudentService;import org.springframework.beans.factory.annotati...
springboot
springboot学习所遇问题springboot项目中,右侧没有mavenproject 输入命令:shift + ctrl + A, 在输入Maven,选择ADD 设置maven镜像 在settings -> Build,Execution,Deployment -> Maven, 找到Maven home directory,打开该目录 找到conf/settings.xml, 在mirrors下写入以下内容:<mirrors> <mirror> <id>nexus-aliyun</id> <mirrorOf>*</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror></mirrors> 更新jar包的最新版本 ...
vue3开发总结
开发环境搭建安装插件 对于Vue 3,您应该使用Vue CLI v4.5(可从上npm获得)@vue/cli。要升级,您需要在@vue/cli全球范围内重新安装最新版本:yarn global add @vue/cli# ORnpm install -g @vue/cli 创建项目vue create vue3-typescript 安装设置 1. Please pick a preset: Manually select features2. (*) Choose Vue version (*) Babel (*) TypeScript ( ) Progressive Web App (PWA) Support (*) Router (*) Vuex (*) CSS Pre-processors (*) Linter / Formatter ( ) Unit Testing ( ) E2E Testing3. ? Choose a version of Vue.js that you want ...
面试——node篇
node模块化原理 Node 异步单线程原理?(Nodejs如何实现高并发的) Node.js 实现异步的核心是事件,也就是说,它把每一个任务都当成 事件 来处理,然后通过 Event Loop 模拟了异步的效果 每个Node.js进程只有一个主线程在执行程序代码,形成一个执行栈(execution context stack) 主线程之外,还维护了一个”事件队列”(Event queue)。当用户的网络请求或者其它的异步操作到来时,node都会把它放到Event Queue之中,此时并不会立即执行它,代码也不会被阻塞,继续往下走,直到主线程代码执行完毕。 主线程代码执行完毕完成后,然后通过Event Loop,也就是事件循环机制,开始到Event Queue的开头取出第一个事件,从线程池中分配一个线程去执行这个事件,接下来继续取出第二个事件,再从线程池中分配一个线程去执行,然后第三个,第四个。主线程不断的检查事件队列中是否有未执行的事件,直到事件队列中所有事件都执行完了,此后每当有新的事件加入到事件队列中,都会通知主线程按顺序取出交EventLoop处理。当有事件执行完毕后,会...
面试——笔试篇
手写函数防抖和节流 防抖://防抖debounce代码:function debounce(fn,delay) { var timeout = null; // 创建一个标记用来存放定时器的返回值 return function (e) { // 每当用户输入的时候把前一个 setTimeout clear 掉 clearTimeout(timeout); // 然后又创建一个新的 setTimeout, 这样就能保证interval 间隔内如果时间持续触发,就不会执行 fn 函数 timeout = setTimeout(() => { fn.apply(this, arguments); }, delay); };}// 处理函数function handle() { console.log('防抖:', Math.random());} /...
面试——css篇
css 优先级 答:important > 内联 > ID选择器 > 类选择器 > 标签选择器 避免 css 全局污染。 通过在css文件的选择器上使用:local* 例如::local(.className) { background: red; } 在vue项目中使用deep* 例如::deep(.el-carousel__arrow–right) { right: 120px; } 在react项目中使用:global* 例如: <RangePicker className={styles.rangePick} showTime format="YYYY-MM-DD HH:mm:ss" /><br>.rangePick{ :global { .ant-picker-input { color:red } }} 页面导入样式时,使用link和@import有什么区别? link属于XHTML标签,...
面试——webpack篇
webpack与grunt、gulp的不同? 三者都是前端构建工具,grunt和gulp在早期比较流行,现在webpack相对来说比较主流,不过一些轻量化的任务还是会用gulp来处理,比如单独打包CSS文件等。 grunt和gulp是基于任务和流(Task、Stream)的。类似jQuery,找到一个(或一类)文件,对其做一系列链式操作,更新流上的数据, 整条链式操作构成了一个任务,多个任务就构成了整个web的构建流程。 webpack是基于入口的。webpack会自动地递归解析入口所需要加载的所有资源文件,然后用不同的Loader来处理不同的文件,用Plugin来扩展webpack功能。 所以总结一下:gulp和grunt需要开发者将整个前端构建过程拆分成多个Task,并合理控制所有Task的调用关系 webpack需要开发者找到入口,并需要清楚对于不同的资源应该使用什么Loader做何种解析和加工 Grunt与Gulp的区别 书写方式:- grunt 运用配置的思想来写打包脚本,一切皆配置,所以会出现比较多的配置项,诸如option,src,dest等等。而且不同...
面试——typescript篇
interface 和 type 的区别 type可以声明 基本类型,联合类型,元组 的别名,interface不行 type 语句中可以使用 typeof 获取类型实例 type 支持类型映射,interface不支持 interface能够声明合并,type不能 typescript中对抽象类和interface的理解 ts如何对早期库比如jquery如何补充类型 ts中的可选和必选 动态runtime注入的类型怎样做才能静态不报错 说说Typescript的优缺点? 优点. 快速简单,易于学习。 编译时提供错误检查, 在代码运行前就会进行错误提示。 支持所有的JS库。 支持ES6,提供了ES6所有优点和更高的生产力。 使用继承提供可重用性。 有助于代码结构。 通过定义模块来定义命名空间。 缺点: 需要长时间的来编译代码。 在使用第三方库时,需要有三方库的定义文件,并不是所有三方库都提供了定义文件,提供的定义文件是否准确也值得商榷。 如何理解Typescript中的类?并说说它有什么特性? Typescript是一种面向对象的Javascript语言,和其他...
面试——其他篇
询问工作经历,在项目中如何做性能优化的? content方面* 减少HTTP请求:合并文件、CSS精灵、inline Image* 减少DNS查询:DNS查询完成之前浏览器不能从这个主机下载任何任何文件。方法:DNS缓存、将资源分布到恰当数量的主机名,平衡并行下载和DNS查询* 避免重定向:多余的中间访问* 使Ajax可缓存* 非必须组件延迟加载* 未来所需组件预加载* 减少DOM元素数量* 将资源放到不同的域下:浏览器同时从一个域下载资源的数目有限,增加域可以提高并行下载量* 减少iframe数量* 不要404 Server方面* 使用CDN* 添加Expires或者Cache-Control响应头* 对组件使用Gzip压缩* 配置ETag* Flush Buffer Early* Ajax使用GET进行请求* 避免空src的img标签 Cookie方面* 减小cookie大小* 引入资源的域名不要包含cookie css方面* 将样式表放到页面顶部* 不使用CSS表达式* 使用不使用@import* 不使用IE的Filter Javascript方面* 将脚本放到页面...











