BiaoChenXuYing 前言 本文讲解的是:做为前端开发人员,对服务器的了解还是小白的我,是如何一步步将 node+mongodb 项目部署在阿里云 centos 7.3 的服务器上,并进行性能优化...域名是分 国际域名与国内域名的,国际域名是不用备案的,但是国内的域名是必须 ICP备案的 阿里云ICP代备案管理系统,不然不能用,如果是国内域名,如何备案域名,请自己上网查找教程。...把 Node.js 项目部署到阿里云服务器(CentOs) 一般在新服务器创建后,建议先升级一下 CentOS: yum -y update 常用的 Linux 命令 cd 进入目录 cd .....返回上一个目录 ls -a 查看当前目录 mkdir abc 创建abc文件夹 mv 移动或重命名 rm 删除一个文件或者目录 3.2 安装 node 升级常用库文件, 安装 node.js 需要通过...基于 node + express + mongodb 的 blog-node 项目文档说明 4. 服务器小白的我,是如何将node+mongodb项目部署在服务器上并进行性能优化的
TypeScript 的学习资料非常多,其中也不乏很多优秀的文章和教程。但是目前为止没有一个我特别满意的。...不过在讲配置项之前,我们先来看下 tsconfig.json 是如何被解析的。 tsconfig 是如何被解析的?...如果你使用 tsc 编译你的项目,并且没有显式地指定配置文件的路径,那么 tsc 则会逐级向上搜索父目录寻找 tsconfig.json ,这个过程类似 node 的模块查找机制。 ?...否则,会从当前目录查找 tsconfig.json 文件, 如果找不到则逐层向上搜索父目录。...如果你使用 tsc 编译你的项目,并且没有显式地指定配置文件的路径,那么 tsc 则会逐级向上搜索父目录寻找 tsconfig.json ,这个过程类似 node 的模块查找机制。
如果不存在这个字段,require()方法会查找宝目录下的index.js、index.node、index.json文件作为默认入口 devDependencies: 一些模块只有在开发的时候需要依赖...,就会创建了太深的依赖关系树,导致 Windows 上很长的目录路径问题 五、模块查找方式(深入浅出Nodejs p16) 1、三个步骤 在node中引入一个模块需要经过三个步骤 路径分析 文件定位 编译执行...模块路径生成规则: 当前目录下的node_modules 父目录下的node_modules 父目录的父目录下node_modules 沿着路径向上逐级递归,直到根目录下的node_modules...(缓存目录) 解压压缩包到当前项目的node_modules目录 运行npm install首先会判断项目文件夹node_modules中有没有对应的模块,没有直接去远程下载,然后保存在缓存中,将缓存中的压缩包解压至对应的项目的...:查看当前过期依赖,其中current显示当前安装版本,latest显示依赖包的最新版本,wanted显示我们可以升级到可以不破坏当前代码的版本 npm search :查找包含该字符串的依赖包
解决二: 类加载器如何实现在项目不重启的情况下,对某个发生变化的类进行热更新呢?...我首先提出几个问题,大家先思考一下,如果都可以想出来,说明对类加载器的掌握程度还算不错: servlet只能访问指定目录下的类,类加载器如何实现这种隔离访问机制的呢?...类加载器如何实现在项目不重启的情况下,对某个发生变化的类进行热更新呢?...,可以看一下我之前写过关于类加载器的文章: JVM第六卷—类加载机制 JVM第八卷—类加载与执行子系统的案例与实战 类加载器如何实现类隔离 ---- 解答一: servlet只能访问指定目录下的类...这里先给出一个解决思路,然后下面我们在来看一下tomcat是如何进行处理的 这里只是给我一个思路方向,这不等于tomcat选择的解决办法 ---- 解决二: 类加载器如何实现在项目不重启的情况下,
1.ClassLoader的类型 在Java虚拟机(一)结构原理与运行时数据区域这篇文章中,我提到过类加载子系统,它的主要作用就是通过多种类加载器(ClassLoader)来查找和加载Class文件到...*等这些系统类,它们默认在$JAVA_HOME/jre/lib目录中,也可以通过启动Java虚拟机时指定-Xbootclasspath选项,来改变Bootstrap ClassLoader的加载目录。...加载D盘的Class文件步骤如下: 自定义类加载器首先从缓存中要查找Class文件是否已经加载,如果已经加载就返回该Class,如果没加载则委托给父加载器也就是App ClassLoader。...App ClassLoade查找Classpath目录下或者-Djava.ext.dirs选项所指定的目录下的jar包和Class文件,如果找到就返回,找不到交给我们自定义的类加载器,如果还找不到则抛出异常...注释1出创建DiskClassLoader并传入要加载类的路径,注释2处加载Class文件,需要注意的是,不要在项目工程中存在名为com.example.Jobs的Java文件,否则就不会使用DiskClassLoader
2.executeBindings() 这个方法就是为xml文件中的view设置我们绑定数据的具体方法了,该方法在父类中是抽象方法,具体实现每一个xml对应的类都是不同的。...最后获取到的contentView是一个FrameLayout,其中有一个LinnearLayout这个View就是用来放置我们xml文件生成的view的。...大家可以去项目下面被编译的文件夹中招,我的目录是D:\AndroidStudio\project\TestRecycleView\app\build\intermediates\classes\debug...13.再加点额外的内容,可能有些同学不清楚如何进入一个方法。快捷键是ctrl-B,然后查找某个方法和字段在那些地方使用过也是这个快捷键。...另外可能有些源码中的方法和字段使用ctrl-B查找不到使用过的地方,这时候就可以用ctrl-alt-F7,在全局查找。
maven Java项目很多都会有子module,一般父项目没有逻辑代码,在父项目pom.xml中注明依赖、version和其他一些公用的东西,子module的pom继承父pom,子pom就不用写依赖的版本了...使用时需要注意,我就是忘了其中一项,没有生效: 父pom需要添加pom 父pom需要用子module名指定父项目,声明依赖时就默认会用父pom中的版本了 dependencyManagement:像上面提到的,一般在父项目中会声明这个元素,和普通依赖用法类似,这个元素并不会真的引入依赖...默认顺序:relativePath > 本地仓库 > 远程仓库 没有relativePath标签等同…/pom.xml, 即默认从当前pom文件的上一级目录找 表示不从relativePath找, 直接从本地仓库找...,找不到再从远程仓库找 经过 maven3.6版本测试,似乎没有relativePath标签时,它没有从当前pom文件的上一级目录找,子模块继承不到父模块中dependencyManagement中包的
都知道,maven项目间依赖是双向绑定的(这个是自己瞎说的词,自己理解起来比较容易),即像树结构一样,一个子模块只能有一个父模块,父下面有多个子。...子模块使用parent标识父,父模块使用module标识子。 自己开始没有认清Maven的一些细节知识,这里做一下笔记算是,方便以后查找。...module里面的值填写的是以当前路径为起始的路径,这里举一个不规范的例子,我的子模块在父模块的上一层,那么,父模块的module里面就写: ...../child 其中child是子模块的文件夹名,有点像Go语言的包引入 xxxxx 子模块标记父模块,默认在子模块目录上一目录下去找,当前场景是找不到的...(父模块所在文件夹),或者写 .
由于 Google出品,我相信Protocol Buffer已经具备足够的吸引力 今天,我将详细介绍Protocol Buffer 的语法 & 如何去构建Protocol Buffer 的消息模型...因此,它不可能在 不破坏现有框架的兼容性上 而 改变压缩格式。 // 在2.3.0之后,这种改变将是安全的,解析器能够接受上述两种格式。...编译器 会在 该目录中 查找需要被导入的 .proto文件 // 如果不提供参数,编译器就在 其调用的目录下 查找 当然,在使用 不同 .proto 文件里的消息类型 时 也会存在想 使用同一个 .proto...,否则会导致数据不一致;可以通过为新项目定义一个可扩展标识号规则来防止该情况的发生 } 要访问 扩展字段 的方法与 访问普通的字段 不同:使用专门的扩展访问函数 实例: // 如何在C++中设置 bar...出品的Protocol Buffer,别只会用Json和XML了 手把手教你如何安装Protocol Buffer 下一篇文章我将对Protocol Buffer 的源码进行详细分析,有兴趣可以继续关注
在~/.m2目录下添加settings.xml文件(Windows用户可以在%USERPROFILE%.m2\settings.xml找到,例如:C:\Users\devilwwj.m2): 父POM是主的Jenkins项目的一部分并且POM版本是Jenkins版本的基准被用于插件。...当你改变Java源文件,在你的IDE编译它们和Jetty会自动重新部署Jenkins去拉取这些变化。这里没有必要运行一直运行mvn命令。...请参阅Developing with JRebel会告诉你如何获得JRebel的OSS项目的许可证去帮助你提高这个方面的经验。...发布一个插件 要创建插件的发布镜像,运行一下的Maven命令: $ mvn package 这个会在target目录下创建一个.hpi的文件,其他用户可以使用Jenkins的Web界面去上传这个插件到Jenkins
通过现成的轮子来提升我们的开发效率,来解决在不同场景应用中遇到的一些问题 通过阅读 awesome-nodejs 库的收录,我抽取其中一些应用场景比较多的分类,通过分类涉及的应用场景跟大家分享工具...Bundleless 模式是利用浏览器能够自主加载的特性,通过跳过打包环节,使得我们在项目启动时可以直接获取到极快的启动速度,而在本地更新时只需要重新编译单个文件 3.缓存 3.1 应用场景1:...anywhere: 随时随地将你的当前目录变成一个静态文件服务器的根目录。 json-server: 在不到30秒的时间内获得具有零编码的完整伪造的REST API。...supervisor: 当脚本崩溃时重新启动脚本,或者当*.js文件更改时重新启动脚本。 6.3 应用场景3: 我如何用Node起一个代理服务?...filesize: 生成人类可读的文件大小字符串。 make-dir: 递归创建文件夹,类似 mkdir -p。 find-up: 通过上级父目录查找文件或目录。
/conf.d/README 注: 查当前目录下的所有普通文件,并在 -exec 选项中使用 ls -l 命令将它们列出 在/logs目录中查找更改时间在5日以前的文件并删除它们: $ find logs...我的意思当然不是使用这种方法来找目录,只不过不明白其中的 -100 意义了 那以此类推,是不是 -010是指权限至少是owner同组可执行的吗?...-size +3000k -exec ls -ld {} ; 如何用find查找某一天更改的文件?...我也试过用awk ,好像也不对,看看大家可不可以给我一些小小的提醒,TKS SO MUCH 问题3、如何改变 I结点 的日期格式 我现在的系统显示的格式是: -rw-r—– 1 msahz01 users...如果父目录的 ctime 改变, 那它下面的文件的 ctime 就会自动都改了吗 ? -ctime 和 -mtime ,-atime 这些信息是存在哪儿呢 ?
Package Explorer(包资源管理器) 显示项目的结构、包、类及资源。 Outline(大纲) 显示某个类的结构,方便查找、识别、修改。...A项目想用B项目的东西(注意:B项目的东西如何实现你看不见,即java文件看不见), 而实际上用的是B项目的多个class文件,所以我要把B项目的所有class文件拿过来。...a:在新建抽象类的子类的时候改变默认的 Superclass 父类选项卡,找到自己写的父类。...b:在新建抽象类的子类的时候改变默认的 Superclass 父类选项卡,先找到自己写的父类,再在 Interface 接口选项卡 Add 添加自己写的接口。 D: @Override 的作用?...C:每天对照我写的项目,自己也创建一个练习项目 举例:我的项目名称 day11_eclipse 你就创建一个项目名称 day11_eclipse_test -------------
2022年面试某公司的一道真题,问如何实现热加载,本人当时一脸懵,当时我是这样回答的 首先热加载是在不重启的应用,使用我们的修改的类 他肯定是比对有没有修改过,如果有修改过,就会重新加载 这样就可以了...面试官说,思路是对的,但是具体是怎么实现的呢,我就不会了,今天我们就说一下这道题应该如何解答,我们要从这几方面回答 双亲委派机制 自定义类加载器 java热加载实现 双亲委派机制 引导类加载器:负责加载位于...下的资源改变后,插件会触发重启 而加入了spring-boot-devtools插件依赖后,我们自己编写的文件的类加载器org.springframework.boot.devtools.restart.classloader.RestartClassLoader...,是这个工具包自定义的类加载器, 项目依赖的jar使用的是JDK中的类加载器(AppClassLoader\ExtClassLoader\引导类加载器) 在插件触发的重启中,只会使用RestartClassLoader...来进行加载(即:只加载我们自己编写的文件部分) 热加载和热部署的区别 热部署是在服务器中重新部署整个web服务,热加载是重新加载变化的class 热部署在生产环境,热加载在开发环境
您可以在没有任何参数的情况下运行 fd ,输出与ls -R命令非常相似。...# fd 在下一个 fd 示例中,我将使用位于/var/www/html/中的默认WordPress安装来搜索不同的文件和文件夹。 在下面的示例中,我仅使用前10个结果来缩短命令输出。...我们可以使用- e标志按文件扩展名进行过滤: # fd -e jpg - e标志可以与这样的模式结合使用: # fd -e php index 上面的命令将查找扩展名为 php 的文件,并在其中包含字符串...index : 如果要排除某些结果,可以使用- E标志,如下所示: # fd -e php index -E rumenz 此命令将查找包含php扩展名的所有文件,其中包含字符串 index ,并将排除...{//}: 发现路径的父目录 (rumenz/uploads)。 {/.}: 只有基名,没有扩展名 (01)。 这是对 fd命令的简要回顾,一些用户可能会发现更容易使用和更快。
您可以在没有任何参数的情况下运行 fd ,输出与ls -R命令非常相似。...# fd 在下一个 fd 示例中,我将使用位于/var/www/html/中的默认WordPress安装来搜索不同的文件和文件夹。 在下面的示例中,我仅使用前10个结果来缩短命令输出。...我们可以使用- e标志按文件扩展名进行过滤: # fd -e jpg - e标志可以与这样的模式结合使用: # fd -e php index 上面的命令将查找扩展名为 php 的文件,并在其中包含字符串...index : 如果要排除某些结果,可以使用- E标志,如下所示: # fd -e php index -E rumenz 此命令将查找包含php扩展名的所有文件,其中包含字符串 index...{//}: 发现路径的父目录 (rumenz/uploads)。 {/.}: 只有基名,没有扩展名 (01)。 这是对 fd命令的简要回顾,一些用户可能会发现更容易使用和更快。
一文搞懂 Python 的模块和包,在实战中的最佳实践 最近公司有个项目,我需要写个小爬虫,将爬取到的数据进行统计分析。...我的项目结构 首先,我并不是一个经验丰富的 Python 开发者,一般像我这样水平的,要么用框架,以其预置的代码结构来管理代码文件和逻辑;要么,就是调包侠,将代码写在同一个或多个 .py 文件中,不用文件目录组织...所以,我搭建了以下的代码结构: 项目入口文件 main.py,负责所有爬虫的调度。...这是因为 Python 脚本在运行时,会默认将脚本所在的当前目录加入 sys.path 中,以便于在其中查找你要导入的模块,而当我用 python spider/realtime/overview.py...既然执行模块脚本时,脚本程序无法以绝对导入的方式,引用父级目录中的模块,那么我用相对导入的方式,是否可以解决? 于是,我将代码调整为相对导入:from .. import config。
原因是我的项目里已经有一个类User1了 我们自定义类加载器的父类是AppClassLoader....如何打破双亲委派机制呢? 我们知道了,双亲委派机制就是类在加载的时候,从自定义类加载器开始查找是否已经加载过这个类,如果没有加载过则加载类,但是不是由自己立刻加载,而是委托上级加载。...到了上级,先查找,找不到在加载,然后也不是自己立刻加载,依次类推。。。。这就是双亲委派机制,要打破双亲委派机制,那么就是不让他委托上级类加载器加载,由自己来加载。那么如何实现呢?...那么, 现在我有两个war包, 分处于不同的文件夹, tomcat如何使用各自的类加载器加载自己包下的class类呢?...我们来举个例子, 比如: 在我的home目录下有两个文件夹, tomcat-test和tomcat-test1. 用这两个文件夹来模拟两个项目.
【 文件夹管理 】 cd 显示当前目录名或改变当前目录。 md 创建目录。 rd 删除一个目录。 dir 显示目录中的文件和子目录列表。 tree 以图形显示驱动器或路径的文件夹结构。...TEMP目录了,如何退出TEMP目录呢?...,回车,我们就可以回到DOS目录了。在DOS中,这个两点就表示当前目录的上一层目录,一个点表示当前目录,有时,我们叫上一级目录为父目录。 再输入CD ..,然后回车,我们就回到了C盘的根目录。 ...这也就是说,如果要执行某个文件前,都要将当前目录转换到它所在的目录,显然这是一件很麻烦的事情(电脑是不是很笨啊,不用怀疑这句话的正确性了,我证明过n遍了,我不说,它什么都不做,呵呵)。 ...讲个例子吧,比如,path=c:\dos;c:\windows;c:\ 这条命令就是说,当我们执行一个文件时,电脑先在当前目录下查找这个文件,找到则执行,如果没有找到,则电脑按照path命令所指定的目录顺序去查找
多Module管理项目的几种方式:创建一个多module项目(idea2019.3.3版本)创建一个父pom项目:创建子模块,引入到父pom里面子父模块的区别:父pom.xml文件内容:子pom.xml...的依赖引入策略最短路径原则:最先声明原则:如何解决依赖冲突的问题锁定版本法什么情况下会出现Jar包冲突问题如何查找和发现jar包冲突?...选择maven项目,同时不选任何的预加载设置 ? 父pom配置如下: ? 删除src 目录 ?...API才有可能导致这样的问题 如何查找和发现jar包冲突?...如何写一个干净依赖关系的POM文件 尽量在父POM中定义,来进行本项目一些依赖版本的管理,这样可以从很大程度上解决一定的冲突 最少依赖jar包原则 使用mvn
领取专属 10元无门槛券
手把手带您无忧上云