hexo 搭建博客总结1

hexo框架介绍

基于Node.js的静态博客框架,依赖少易于安装。可以托管在GitHub和coding上,对中文支持友好。

搭建流程

  • hexo的初步搭建及部署
  • 主题配置,双部署实现国内外分流
  • 添加更多功能

hexo的初步搭建及部署

框架的本地安装与运行

安装git

Git是分布式版本控制系统,用于项目版本管理。

学习文档

官方教程
廖雪峰Git教程
官网速度一般比较狗屎,建议第二个,除了广告多点,没有其他缺点。

下载安装

  • windows
  • Linux
sudo apt-get install git
git --version

安装Node.js

下载安装

Node.js
windows:选择Windows Installer 默认安装即可
Linux

sudo apt-get install nodejs
sudo apt-get install npm

检查node安装成功与否

node -v
npm -v

安装Hexo

安装流程

  • 新建blog文件夹
  • cd blog
  • 安装
npm install -g hexo-cli       #安装脚手架
hexo -v                #检查版本
hexo init myblog   #初始化hexo
cd myblog             #进入myblog
npm install            #新建
hexo g         #   
hexo server  #  本地运行

Github创建个人仓库

创建流程

  • 注册账户
  • 新建一个仓库,命名为用户名+github.io,eg: yanyunpo.github.io

生成SSH添加到GitHub

流程

  • 打开git bash
  • 输入命令

命令详解

  • 输入你的GitHub用户名和邮箱
  • 检查是否正确
  • 创建SSH,一路回车
  • 复制复制id_rsa.pub的信息到ssh keys
  • 查看是否成功

GitHub的setting中,ssh keys的设置选项,点击New SSH key,复制id_rsa.pub的信息到里面。

SSH简要:密钥,id_rsa:本机的私人密钥.
id_rsa.pub:公共密钥,将公钥放到GitHub上,当连接GitHub账户时,根据公钥去匹配本机私钥,匹配上则说明正确,然后即可通过git上传文件到GitHub。

git config --global user.name "yourname"
git config --global user.email "youremail"
git config user.name
git config user.email
ssh-keygen -t rsa -C "youremail"
ssh -T [email protected]

部署到GitHub和coding

GitHub

打开站点配置文件_config.yml
释义:类型,仓库链接,分支

deploy:
    type: git
    repo: https://github.com/YourgithubName/YourgithubName.github.io.git
    branch: master

部署命令详解

  • 安装deploy-git【部署】
  • 清除
  • 生成静态文章
npm install hexo-deployer-git --save
hexo clean
hexo generate
hexo deploy

缩写命令
hexo c && g && d

coding

部署有些问题,以后更新。

设置个人域名

因为没钱,暂时不考虑。

框架基本结构和打包文件概览

指定文件夹目录下有下列文件夹

  • node_modules: 依赖包
  • public:存放生成的页面
  • scaffolds:生成文章的一些模板
  • source:用来存放你的文章
  • themes:主题
  • _config.yml: 博客的配置文件

butterfly主题安装和配置

根据官方文档配置,在此不赘述。

  • hexo官方指导博客
  • butterfly官方指导博客
    注:Hexo 在合并主题配置时,Hexo 配置文件中的 theme_config 的优先级最高,其次是 _config.[theme].yml 文件,最后是位于主题目录下的 _config.yml 文件。

hexo基本配置

本小节主要是一些注意点,并非详细教程【详情请参考hexo和butterfly官方博客】。

分类和标签

分类下面的子类有顺序,标签没有。
eg:

  categories:
    - Diary
    - PP
  tags:
    - PS3
    - Games

categories中Diary、PP和PP、Diary是不同的,而在tags中PS3、Games和Games、PS3是相同的

布局

当你每一次使用代码 hexo new paper
它其实默认使用的是post这个布局,也就是在source文件夹下的_post里面。
Hexo 有三种默认布局:post、page 和 draft,它们分别对应不同的路径,而您自定义的其他布局和 post 相同,都将储存到 source/_posts 文件夹。
而new这个命令其实是:hexo new [layout] </code><br> 只不过这个layout默认是post罢了。</p> <h3>page</h3> <p>如果你想另起一页,那么可以使用<br> hexo new page board<br> 系统会自动给你在source文件夹下创建一个board文件夹,以及此文件夹下的index.md,这样你访问的board对应的链接就是http://xxx.xxx/board</p> <h3>draft【草稿】</h3> <p>draft是草稿的意思,也就是你如果想写文章,又不希望被看到,那么可以<br> hexo new draft newpage。<br> 这样会在source/_draft中新建一个newpage.md文件,如果你的草稿文件写的过程中,想要预览一下,那么可以使用<br> hexo server --draft,<br> 在本地端口中开启服务预览。<br> 如果你的草稿文件写完了,想要发表到post中,<br> hexo publish draft newpage ,<br> 就会自动把newpage.md发送到post中。</p> <h2>更换喜欢的主题</h2> <p>GitHub上下载喜欢的主题,放置到theme的文件夹下,_config.xml中的theme换成主题文件夹的名字。<br> 根据主题的文档进行配置修改即可。</p> <h2>多终端工作</h2> <h3>原理</h3> <p>1.master没有源文件,只有.deploy_git中的内容,source和配置文件等都没有,因此只能在本地工作,换了电脑就无法操作了。<br> 2.因此将源文件上传到GitHub的另一个分支,当需要工作时,从远端克隆到本地。</p> <h3>操作</h3> <p>1.GitHub新建分支hexo<br> 2.更改默认分支为hexo分支<br> 3.多端工作</p> <ul> <li>随意进入一个文件,右键git bash,clone 文件<br> git clone git@github.com:yanyunpo/yanyunpo.github.io.git</li> <li>进入yanyunpo.github.io文件夹,删除除.git以外的文件,将源文件除了.deploy_git的文件都复制过去,.gitignore忽略一些不需要的文件,在主题中,如果有.git文件也都删除,然后上传即可。</li> <li>远端电脑登陆git,克隆,拉取</li> </ul> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1638162280849924096"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(hexo,hexo,node.js)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1943969574231797760.htm" title="npm 切换 node 版本 和npm的源" target="_blank">npm 切换 node 版本 和npm的源</a> <span class="text-muted">爱敲代码的小冰</span> <a class="tag" taget="_blank" href="/search/npm/1.htm">npm</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a> <div>在开发过程中,不同项目可能需要不同版本的Node.js,同时于由XX原因,我们需要切换npm的源。这时如果需要切换node版本或者npm的源,我们可以使用以下方法。使用nvm切换Node版本1、安装npminstallnvm-g2、使用#列出所有可用版本nvmlist-remote#安装指定版本nvminstall16.15.1#使用指定版本nvmuse16.15.1#查看当前使用的版本nvmcu</div> </li> <li><a href="/article/1943930629099941888.htm" title="Ubuntu基础(Python虚拟环境和Vue)" target="_blank">Ubuntu基础(Python虚拟环境和Vue)</a> <span class="text-muted">aaiier</span> <a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>Python虚拟环境sudoaptinstallpython3python3-venv进入项目目录cdXXX创建虚拟环境python3-mvenvvenv激活虚拟环境sourcevenv/bin/activate退出虚拟环境deactivateVue安装Node.js和npm#安装Node.js和npm(Ubuntu默认仓库可能版本较旧,适合入门)sudoaptinstallnodejsnpm#验</div> </li> <li><a href="/article/1943772645237518336.htm" title="NodeJS VM2沙箱逃逸漏洞分析【CVE-2023-29199】" target="_blank">NodeJS VM2沙箱逃逸漏洞分析【CVE-2023-29199】</a> <span class="text-muted">R3s3arcm</span> <a class="tag" taget="_blank" href="/search/NodeJS%E6%BC%8F%E6%B4%9E%E5%88%86%E6%9E%90/1.htm">NodeJS漏洞分析</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8%E5%A8%81%E8%83%81%E5%88%86%E6%9E%90/1.htm">安全威胁分析</a> <div>NodeJSVM2沙箱逃逸漏洞分析【CVE-2023-29199】简介Node.js是一个基于V8引擎的开源、跨平台的JavaScript运行环境,它可以在多个操作系统上运行,包括Windows、macOS和Linux等。Node.js提供了一个运行在服务器端的JavaScript环境,使得开发者可以编写并发的、高效的服务器端应用程序。Node.js使用事件驱动、非阻塞I/O模型来支持并发运行。它</div> </li> <li><a href="/article/1943747053817491456.htm" title="mac系统升级node版本" target="_blank">mac系统升级node版本</a> <span class="text-muted">晨枫阳</span> <a class="tag" taget="_blank" href="/search/npm/1.htm">npm</a><a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a> <div>1、sudonpmcacheclean-f清除node.js的cache2、sudonpminstall-gn使用npm安装n模块3、npmviewnodeversions查看node所有版本4、sudonlatest升级到最新版本5、sudonstable升级到稳定版本6、sudon22.3.0升级到指定的版本号,这里是示例,该命令代表升级到版本22.3.07、node-v查看当前安装的版本号8</div> </li> <li><a href="/article/1943715035524165632.htm" title="web 系统对接飞书三方登录完整步骤实战使用示例" target="_blank">web 系统对接飞书三方登录完整步骤实战使用示例</a> <span class="text-muted">慧一居士</span> <a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84%E6%80%BB%E7%BB%93/1.htm">架构总结</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84/1.htm">系统架构</a> <div>下面我将详细说明Web系统对接飞书三方登录的完整步骤,并提供实战示例(基于Node.js/Express):一、完整对接流程注册飞书开放平台应用登录飞书开放平台创建企业自建应用→获取AppID和AppSecret配置安全域名和重定向URL(如https://yourdomain.com/auth/feishu/callback)OAuth2.0授权流程sequenceDiagram用户->>你的应</div> </li> <li><a href="/article/1943642561545564160.htm" title="node.js、npm是什么?服务器脚本语言有哪些?" target="_blank">node.js、npm是什么?服务器脚本语言有哪些?</a> <span class="text-muted"></span> <div>文章目录1.node和nodejs有区别吗:2.Node.js是什么3.NPM4.安装Node.js和npm5.使用appium之前为什么安装node.js?6.Vue.js一定要安装node.js吗?7.开发环境:1.node和nodejs有区别吗:node和nodejs之间没有区别,node全称就是nodejs。nodejs是一个基于ChromeV8引擎的JavaScript运行环境,一个让J</div> </li> <li><a href="/article/1943599818983141376.htm" title="CentOS7安装nvm与node" target="_blank">CentOS7安装nvm与node</a> <span class="text-muted"></span> <div>在我们的日常开发中经常会遇到这种情况:手上有好几个项目,每个项目的需求不同,进而不同项目必须依赖不同版的NodeJS运行环境。如果没有一个合适的工具,这个问题将非常棘手。由此nvm应运而生。nvm是一个node管理工具。使用nvmNode版本管理器安装Node.JS。nvm允许您在同一台计算机上安装多个Node.JS版本。并且自由切换node版本。1.安装安装指令,这个是一键式的,这个如果执行成功</div> </li> <li><a href="/article/1943595780887605248.htm" title="Node.js安装及环境配置完全指南(手把手保姆级教程)" target="_blank">Node.js安装及环境配置完全指南(手把手保姆级教程)</a> <span class="text-muted">Cyb3rMagnet</span> <a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a><a class="tag" taget="_blank" href="/search/%E5%85%B6%E4%BB%96/1.htm">其他</a> <div>文章目录一、为什么你的开发环境总出问题?二、安装包去哪下才靠谱?1.Windows用户看这里2.Mac用户专属通道3.Linux用户命令行秘籍三、环境配置防坑指南1.PATH变量自查(重要!)2.Windows环境变量手动配置3.Mac/Linux用户看这里四、npm加速大法1.换国内镜像源(速度提升10倍!)2.安装cnpm(可选)五、版本管理神器nvm1.安装nvm2.常用命令六、常见报错急救</div> </li> <li><a href="/article/1943445000511614976.htm" title="PM2: 一个强大的Node.js进程管理器" target="_blank">PM2: 一个强大的Node.js进程管理器</a> <span class="text-muted">静安的尾巴</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E5%9F%BA%E7%A1%80%E7%AF%87/1.htm">前端基础篇</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a><a class="tag" taget="_blank" href="/search/npm/1.htm">npm</a> <div>PM2简介PM2是一个强大的Node.js进程管理器,它可以帮助开发者管理和保持应用程序在线。PM2提供了自动重启、负载均衡和进程监控等功能,适用于开发和生产环境,简化了Node.js应用程序的管理和维护。PM2主要特性内建负载均衡:使用Nodecluster集群模块,可以使用服务器上的所有CPU。后台运行:Nodeapp.js这种命令是直接在前台运行的,不稳定,很容易断。0秒停机重载:应该是上线</div> </li> <li><a href="/article/1943441345926459392.htm" title="node.js历史版本" target="_blank">node.js历史版本</a> <span class="text-muted">白负一</span> <a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a> <div>有时候下载node.js某个版本后不能正常使用,可以在下面地址找到对应版本的文件进行覆盖使用!地址:添加链接描述</div> </li> <li><a href="/article/1943438574204547072.htm" title="Node.js版本管理工具nvm使用教程" target="_blank">Node.js版本管理工具nvm使用教程</a> <span class="text-muted">licy__</span> <a class="tag" taget="_blank" href="/search/vim/1.htm">vim</a><a class="tag" taget="_blank" href="/search/arcgis/1.htm">arcgis</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E8%BE%91%E5%99%A8/1.htm">编辑器</a> <div>目录Node.js版本管理工具nvm使用教程引言1.常用命令及示例1.1列出所有可用的Node.js版本1.2安装特定版本的Node.js1.3列出已安装的Node.js版本1.4使用特定版本的Node.js1.5设置默认Node.js版本1.6卸载特定版本的Node.js1.7查看当前使用的Node.js版本1.8安装最新LTS版本的Node.js1.9安装最新稳定版的Node.js1.10切换</div> </li> <li><a href="/article/1943437944060702720.htm" title="【亲测免费】 如何构建适用于Android的Node.js:从零到实践" target="_blank">【亲测免费】 如何构建适用于Android的Node.js:从零到实践</a> <span class="text-muted">陈宜旎Dean</span> <div>如何构建适用于Android的Node.js:从零到实践build-nodejs-for-androidBuildnodejsforandroid(arm,arm64,x86,x64,mipsel)perfectlyandprovideprebuiltbinaries,andadockerimageasworkbench.项目地址:https://gitcode.com/gh_mirrors/bu</div> </li> <li><a href="/article/1943437817237532672.htm" title="Node最佳实践:为什么生产环境必须使用Node.js LTS版本" target="_blank">Node最佳实践:为什么生产环境必须使用Node.js LTS版本</a> <span class="text-muted">娄佳淑Floyd</span> <div>Node最佳实践:为什么生产环境必须使用Node.jsLTS版本nodebestpractices:white_check_mark:TheNode.jsbestpracticeslist(December2023)项目地址:https://gitcode.com/gh_mirrors/no/nodebestpractices什么是Node.jsLTS版本Node.js的LTS(LongTermS</div> </li> <li><a href="/article/1943437690980593664.htm" title="android nodejs" target="_blank">android nodejs</a> <span class="text-muted">cike110120</span> <div>本文参照了http://www.blogjava.net/jelver/articles/143082.html,http://www.blogjava.net/athrunwang/archive/2011/09/28/359680.html,《androidSDK开发范例大全(第2版)》上次做了一个demo,试验如何用node.js响应getpost请求,http请求使用的浏览器。我现在正在学</div> </li> <li><a href="/article/1943437564677517312.htm" title="【亲测免费】 在Android上运行Node.js:Node on Android" target="_blank">【亲测免费】 在Android上运行Node.js:Node on Android</a> <span class="text-muted">咎旗盼Jewel</span> <div>在Android上运行Node.js:NodeonAndroid项目地址:https://gitcode.com/gh_mirrors/no/node-on-android在这个数字化的时代,移动开发已经成为不可或缺的一部分。使用Node.js构建应用程序因其高效和灵活性而备受开发者喜爱。现在,借助开源项目NodeonAndroid,你可以在Android设备上无缝地运行Node.js应用,无需复</div> </li> <li><a href="/article/1943436052677062656.htm" title="「史上最通俗」Express 框架入门到实战:前端也能轻松学会的 Node.js 后端神器!" target="_blank">「史上最通俗」Express 框架入门到实战:前端也能轻松学会的 Node.js 后端神器!</a> <span class="text-muted"></span> <div>三年前,我作为一名纯前端开发者,被迫临时接手一个Node.js后端项目,那个绝望的下午我几乎崩溃。六小时后,我却笑着对同事说:“原来后端这么简单?”。这不是魔法,而是因为遇见了Express——一个让前端开发者也能轻松驾驭的后端框架。据StackOverflow2022年调查,87%的Node.js开发者都在使用它,这不是没有原因的。为什么你必须掌握Express?想象一下,如果React是前端的</div> </li> <li><a href="/article/1943434036017950720.htm" title="如何升级Node.js版本:详细指南" target="_blank">如何升级Node.js版本:详细指南</a> <span class="text-muted">川星弦</span> <a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a> <div>Node.js作为JavaScript运行时环境,广泛应用于服务器端开发。随着Node.js的不断更新,及时升级到最新版本可以带来新特性、性能提升以及安全漏洞的修复。本文将详细介绍几种常见的Node.js升级方法,帮助你轻松完成版本更新。方法一:使用Node.js官方安装程序访问Node.js官方网站:打开Node.js官网,下载适合你操作系统的最新版本安装程序。运行安装程序:双击下载的安装程序,</div> </li> <li><a href="/article/1943352611277172736.htm" title="Node.js是什么?应用场景分析 编程" target="_blank">Node.js是什么?应用场景分析 编程</a> <span class="text-muted">静谧星光</span> <a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a> <div>Node.js是一个基于ChromeV8JavaScript引擎构建的开源、跨平台的运行时环境。它允许开发者使用JavaScript语言进行服务器端编程,实现高效的网络应用程序。Node.js采用事件驱动、非阻塞I/O模型,使得它能够处理大量并发请求,适用于构建高性能、可扩展的网络应用。Node.js的应用场景非常广泛,以下是一些常见的使用场景:服务器端应用程序开发:Node.js提供了一种高效的</div> </li> <li><a href="/article/1943349204575383552.htm" title="Node.js 是什么?" target="_blank">Node.js 是什么?</a> <span class="text-muted">yuanlnet</span> <a class="tag" taget="_blank" href="/search/nods.js/1.htm">nods.js</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a> <div>Node.js是什么?简单的说Node.js就是运行在服务端的JavaScript。Node.js是一个基于ChromeJavaScript运行时建立的一个平台,用于方便地搭建响应速度快、易于扩展的网络应用。Node.js使用事件驱动,非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google</div> </li> <li><a href="/article/1943346429594497024.htm" title="Node.js是什么? 能做什么?" target="_blank">Node.js是什么? 能做什么?</a> <span class="text-muted"></span> <div>‌Node.js是一个基于ChromeV8引擎的JavaScript运行环境,它使用事件驱动、非阻塞式I/O模型,使得JavaScript能够在服务器端运行。Node.js允许JavaScript脱离浏览器,直接在服务器和计算机上使用,极大地扩展了JavaScript的应用范围。‌Node.js由RyanDahl开发,最初发布于2009年5月,现已成为与PHP、Python、Perl、Ruby等服</div> </li> <li><a href="/article/1943161498243231744.htm" title="JSZip 使用详解" target="_blank">JSZip 使用详解</a> <span class="text-muted">啃火龙果的兔子</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91DEMO/1.htm">开发DEMO</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>JSZip使用详解JSZip是一个用于创建、读取和编辑ZIP文件的JavaScript库,完全在浏览器中运行,也支持Node.js环境。安装浏览器环境Node.js环境npminstalljszip#或yarnaddjszip基本使用1.创建一个ZIP文件constJSZip=require("jszip");//Node.js中需要constzip=newJSZip();//添加文本文件zip.</div> </li> <li><a href="/article/1943161498759131136.htm" title="Mammoth.js 使用详解" target="_blank">Mammoth.js 使用详解</a> <span class="text-muted">啃火龙果的兔子</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91DEMO/1.htm">开发DEMO</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>Mammoth.js使用详解Mammoth.js是一个用于将Word文档(.docx)转换为HTML或Markdown的JavaScript库,支持浏览器和Node.js环境。安装浏览器环境Node.js环境npminstallmammoth#或yarnaddmammoth基本使用1.将DOCX转换为HTML//浏览器中使用input[type=file]获取文件document.getEleme</div> </li> <li><a href="/article/1943071999949598720.htm" title="快速启动静态网络服务器的Run工具使用指南" target="_blank">快速启动静态网络服务器的Run工具使用指南</a> <span class="text-muted">闫泽华</span> <div>本文还有配套的精品资源,点击获取简介:本文介绍了如何使用run工具,一个通过npm全局安装的Node.js包,来启动一个简单的静态文件服务器。介绍了npm的作用,以及如何全局安装run。随后,文章解释了run工具的用途,包括从任何目录快速启动静态网站服务器的能力,并讨论了它在开发、测试和演示中的应用。还涉及了使用run工具时涉及的一些基本任务,如处理HTTP请求和返回静态资源,以及提供了源代码文件</div> </li> <li><a href="/article/1943036074615959552.htm" title="浏览器渲染引擎和JS引擎分类" target="_blank">浏览器渲染引擎和JS引擎分类</a> <span class="text-muted"></span> <div>渲染引擎:Firefox:Gecko引擎Safari:WebKit引擎Chrome:Blink引擎IE:Trident引擎Edge:EdgeHTML引擎JS引擎:SpiderMonkey(Firefox),火狐Nitro/JavaScriptCore(Safari),苹果IOS浏览器V8(Chrome,Chromium),Node.js也是V8Chakra(MicrosoftInternetExp</div> </li> <li><a href="/article/1943000650254184448.htm" title="250706-在局域网中搭建 SvelteKit 项目并允许其他设备访问" target="_blank">250706-在局域网中搭建 SvelteKit 项目并允许其他设备访问</a> <span class="text-muted">GuokLiu</span> <a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/Linux/1.htm">Linux</a><a class="tag" taget="_blank" href="/search/NPM/1.htm">NPM</a><a class="tag" taget="_blank" href="/search/Svelte/1.htm">Svelte</a> <div>本文记录了如何从零开始创建一个SvelteKit项目,并配置使得局域网内的其它设备可以访问开发服务器(如用于移动设备调试)。一、准备开发环境1.安装Node.js和npmSvelte项目依赖Node.js(建议版本≥16)。#macOS安装方式brewinstallnode#或者官网下载:https://nodejs.org/验证是否安装成功:node-vnpm-v二、创建SvelteKit项目S</div> </li> <li><a href="/article/1942911410610696192.htm" title="Node.js特训专栏-实战进阶:14.JWT令牌认证原理与实现" target="_blank">Node.js特训专栏-实战进阶:14.JWT令牌认证原理与实现</a> <span class="text-muted">爱分享的程序员</span> <a class="tag" taget="_blank" href="/search/Node.js/1.htm">Node.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>欢迎来到Node.js实战专栏!在这里,每一行代码都是解锁高性能应用的钥匙,让我们一起开启Node.js的奇妙开发之旅!Node.js特训专栏主页专栏内容规划详情Node.jsJWT令牌认证原理与实现:从理论到实战的深度解析一、JWT认证概述1.1什么是JWT?JSONWebToken(JWT)是一种开放标准(RFC7519),用于在网络应用间安全地传输信息。它以JSON对象的形式包含声明&#x</div> </li> <li><a href="/article/1942909267510095872.htm" title="使用 Node.js 调用 DeepSeek API:一个简单示例" target="_blank">使用 Node.js 调用 DeepSeek API:一个简单示例</a> <span class="text-muted">CDOG程序狗</span> <a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a> <div>好的!以下是一篇简洁的文章,介绍如何使用前端JavaScript(以Node.js为例)调用DeepSeekAI框架,并提供一个具体的代码示例。文章面向初学者,涵盖基本步骤和注意事项。使用Node.js调用DeepSeekAPI:一个简单示例DeepSeek是一个强大的AI平台,提供类似OpenAI的API接口,开发者可以通过JavaScript轻松集成其语言模型,实现智能问答、文本生成等功能。本</div> </li> <li><a href="/article/1942869056646344704.htm" title="JavaScript 性能优化秘籍:从代码压缩到懒加载的技巧" target="_blank">JavaScript 性能优化秘籍:从代码压缩到懒加载的技巧</a> <span class="text-muted">数字魔方操控师</span> <a class="tag" taget="_blank" href="/search/%E3%80%8AJavaScript/1.htm">《JavaScript</a><a class="tag" taget="_blank" href="/search/%E9%80%9A%E5%85%B3%E6%8C%87%E5%8D%97%EF%BC%9A%E4%BB%8E%E6%96%B0%E6%89%8B%E5%88%B0%E9%AB%98%E6%89%8B%E7%9A%84%E8%9C%95%E5%8F%98%E3%80%8B/1.htm">通关指南:从新手到高手的蜕变》</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>引言在当今的Web开发领域,JavaScript无疑是最核心的技术之一。从简单的网页交互到复杂的单页应用(SPA),从前端界面渲染到后端服务器逻辑处理(如Node.js应用),JavaScript无处不在。然而,随着应用程序的功能日益丰富,代码规模不断膨胀,性能问题逐渐凸显。性能不佳的JavaScript代码会导致网页加载缓慢、交互卡顿,严重影响用户体验,甚至可能导致用户流失。因此,掌握JavaS</div> </li> <li><a href="/article/1942786106470756352.htm" title="Nuxt.js 静态生成中的跨域问题解决方案" target="_blank">Nuxt.js 静态生成中的跨域问题解决方案</a> <span class="text-muted">m0_73882020</span> <a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a> <div>当您运行npmrungenerate生成静态页面时,Vite的代理服务器确实无法使用,因为生成阶段是在Node.js环境中执行的构建过程。但别担心,我将为您提供一套完整的解决方案来处理构建阶段的跨域问题。核心解决方案1.构建阶段:使用服务端中转API(推荐)在构建阶段通过Nuxt的server路由中转请求,避开跨域限制://server/api/products.tsexportdefaultde</div> </li> <li><a href="/article/1942736431319412736.htm" title="yarn、npm和cnpm区别差异和使用场景、详解配置" target="_blank">yarn、npm和cnpm区别差异和使用场景、详解配置</a> <span class="text-muted">夲奋亻Jay</span> <a class="tag" taget="_blank" href="/search/vue2.0/1.htm">vue2.0</a><a class="tag" taget="_blank" href="/search/vue3/1.htm">vue3</a><a class="tag" taget="_blank" href="/search/react/1.htm">react</a><a class="tag" taget="_blank" href="/search/npm/1.htm">npm</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a> <div>yarn、npm和cnpm是Node.js应用程序的包管理器,它们用于安装和管理项目依赖。以下是它们的区别、差异和使用场景的详解:npm(NodePackageManager)官网:https://www.npmjs.com/默认:Node.js默认的包管理器。速度:直接连接到npm官方源,速度可能因地区而异。功能:提供了丰富的包生态和插件支持。使用场景:适用于大多数Node.js项目,特别是当需</div> </li> <li><a href="/article/104.htm" title="springmvc 下 freemarker页面枚举的遍历输出" target="_blank">springmvc 下 freemarker页面枚举的遍历输出</a> <span class="text-muted">杨白白</span> <a class="tag" taget="_blank" href="/search/enum/1.htm">enum</a><a class="tag" taget="_blank" href="/search/freemarker/1.htm">freemarker</a> <div>spring mvc freemarker 中遍历枚举 1枚举类型有一个本地方法叫values(),这个方法可以直接返回枚举数组。所以可以利用这个遍历。 enum public enum BooleanEnum { TRUE(Boolean.TRUE, "是"), FALSE(Boolean.FALSE, "否"); </div> </li> <li><a href="/article/231.htm" title="实习简要总结" target="_blank">实习简要总结</a> <span class="text-muted">byalias</span> <a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a> <div>来白虹不知不觉中已经一个多月了,因为项目还在需求分析及项目架构阶段,自己在这段 时间都是在学习相关技术知识,现在对这段时间的工作及学习情况做一个总结: (1)工作技能方面 大体分为两个阶段,Java Web 基础阶段和Java EE阶段 1)Java Web阶段 在这个阶段,自己主要着重学习了 JSP, Servlet, JDBC, MySQL,这些知识的核心点都过 了一遍,也</div> </li> <li><a href="/article/358.htm" title="Quartz——DateIntervalTrigger触发器" target="_blank">Quartz——DateIntervalTrigger触发器</a> <span class="text-muted">eksliang</span> <a class="tag" taget="_blank" href="/search/quartz/1.htm">quartz</a> <div>转载请出自出处:http://eksliang.iteye.com/blog/2208559 一.概述 simpleTrigger 内部实现机制是通过计算间隔时间来计算下次的执行时间,这就导致他有不适合调度的定时任务。例如我们想每天的 1:00AM 执行任务,如果使用 SimpleTrigger,间隔时间就是一天。注意这里就会有一个问题,即当有 misfired 的任务并且恢复执行时,该执行时间</div> </li> <li><a href="/article/485.htm" title="Unix快捷键" target="_blank">Unix快捷键</a> <span class="text-muted">18289753290</span> <a class="tag" taget="_blank" href="/search/unix/1.htm">unix</a><a class="tag" taget="_blank" href="/search/Unix%EF%BC%9B%E5%BF%AB%E6%8D%B7%E9%94%AE%3B/1.htm">Unix;快捷键;</a> <div>复制,删除,粘贴: dd:删除光标所在的行                             &nbs</div> </li> <li><a href="/article/612.htm" title="获取Android设备屏幕的相关参数" target="_blank">获取Android设备屏幕的相关参数</a> <span class="text-muted">酷的飞上天空</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>包含屏幕的分辨率  以及 屏幕宽度的最大dp 高度最大dp   TextView text = (TextView)findViewById(R.id.text); DisplayMetrics dm = new DisplayMetrics(); text.append("getResources().ge</div> </li> <li><a href="/article/739.htm" title="要做物联网?先保护好你的数据" target="_blank">要做物联网?先保护好你的数据</a> <span class="text-muted">蓝儿唯美</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE/1.htm">数据</a> <div>根据Beecham Research的说法,那些在行业中希望利用物联网的关键领域需要提供更好的安全性。 在Beecham的物联网安全威胁图谱上,展示了那些可能产生内外部攻击并且需要通过快速发展的物联网行业加以解决的关键领域。 Beecham Research的技术主管Jon Howes说:“之所以我们目前还没有看到与物联网相关的严重安全事件,是因为目前还没有在大型客户和企业应用中进行部署,也就</div> </li> <li><a href="/article/866.htm" title="Java取模(求余)运算" target="_blank">Java取模(求余)运算</a> <span class="text-muted">随便小屋</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>        整数之间的取模求余运算很好求,但几乎没有遇到过对负数进行取模求余,直接看下面代码: /** * * @author Logic * */ public class Test { public static void main(String[] args) { // TODO A</div> </li> <li><a href="/article/993.htm" title="SQL注入介绍" target="_blank">SQL注入介绍</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/sql%E6%B3%A8%E5%85%A5/1.htm">sql注入</a> <div>二、SQL注入范例 这里我们根据用户登录页面 <form action="" > 用户名:<input type="text" name="username"><br/> 密 码:<input type="password" name="passwor</div> </li> <li><a href="/article/1120.htm" title="优雅代码风格" target="_blank">优雅代码风格</a> <span class="text-muted">aoyouzi</span> <a class="tag" taget="_blank" href="/search/%E4%BB%A3%E7%A0%81/1.htm">代码</a> <div>总结了几点关于优雅代码风格的描述: 代码简单:不隐藏设计者的意图,抽象干净利落,控制语句直截了当。 接口清晰:类型接口表现力直白,字面表达含义,API 相互呼应以增强可测试性。 依赖项少:依赖关系越少越好,依赖少证明内聚程度高,低耦合利于自动测试,便于重构。 没有重复:重复代码意味着某些概念或想法没有在代码中良好的体现,及时重构消除重复。 战术分层:代码分层清晰,隔离明确,</div> </li> <li><a href="/article/1247.htm" title="布尔数组" target="_blank">布尔数组</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%B8%83%E5%B0%94%E6%95%B0%E7%BB%84/1.htm">布尔数组</a> <div>  androi中提到了布尔数组;   布尔数组默认的是false,  并且只会打印false或者是true   布尔数组的例子;  根据字符数组创建布尔数组 char[] c = {'p','u','b','l','i','c'}; //根据字符数组的长度创建布尔数组的个数 boolean[] b = new bool</div> </li> <li><a href="/article/1374.htm" title="web.xml之welcome-file-list、error-page" target="_blank">web.xml之welcome-file-list、error-page</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/web.xml/1.htm">web.xml</a><a class="tag" taget="_blank" href="/search/servlet/1.htm">servlet</a><a class="tag" taget="_blank" href="/search/error-page/1.htm">error-page</a> <div>welcome-file-list 1.定义: <welcome-file-list> <welcome-file>login.jsp</welcome> </welcome-file-list>  2.作用:用来指定WEB应用首页名称。   error-page1.定义: <error-page&g</div> </li> <li><a href="/article/1501.htm" title="richfaces 4 fileUpload组件删除上传的文件" target="_blank">richfaces 4 fileUpload组件删除上传的文件</a> <span class="text-muted">sunjing</span> <a class="tag" taget="_blank" href="/search/clear/1.htm">clear</a><a class="tag" taget="_blank" href="/search/Richfaces+4/1.htm">Richfaces 4</a><a class="tag" taget="_blank" href="/search/fileupload/1.htm">fileupload</a> <div> 页面代码               <h:form id="fileForm">            <rich:</div> </li> <li><a href="/article/1628.htm" title="技术文章备忘" target="_blank">技术文章备忘</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/%E6%8A%80%E6%9C%AF%E6%96%87%E7%AB%A0/1.htm">技术文章</a> <div>Zookeeper http://wenku.baidu.com/view/bab171ffaef8941ea76e05b8.html http://wenku.baidu.com/link?url=8thAIwFTnPh2KL2b0p1V7XSgmF9ZEFgw4V_MkIpA9j8BX2rDQMPgK5l3wcs9oBTxeekOnm5P3BK8c6K2DWynq9nfUCkRlTt9uV</div> </li> <li><a href="/article/1755.htm" title="org.hibernate.hql.ast.QuerySyntaxException: unexpected token: on near line 1解决方案" target="_blank">org.hibernate.hql.ast.QuerySyntaxException: unexpected token: on near line 1解决方案</a> <span class="text-muted">白糖_</span> <a class="tag" taget="_blank" href="/search/Hibernate/1.htm">Hibernate</a> <div>文章摘自:http://blog.csdn.net/yangwawa19870921/article/details/7553181   在编写HQL时,可能会出现这种代码: select a.name,b.age from TableA a left join TableB b on a.id=b.id  如果这是HQL,那么这段代码就是错误的,因为HQL不支持</div> </li> <li><a href="/article/1882.htm" title="sqlserver按照字段内容进行排序" target="_blank">sqlserver按照字段内容进行排序</a> <span class="text-muted">bozch</span> <a class="tag" taget="_blank" href="/search/%E6%8C%89%E7%85%A7%E5%86%85%E5%AE%B9%E6%8E%92%E5%BA%8F/1.htm">按照内容排序</a> <div>在做项目的时候,遇到了这样的一个需求:           从数据库中取出的数据集,首先要将某个数据或者多个数据按照地段内容放到前面显示,例如:从学生表中取出姓李的放到数据集的前面;          select * fro</div> </li> <li><a href="/article/2009.htm" title="编程珠玑-第一章-位图排序" target="_blank">编程珠玑-第一章-位图排序</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B%E7%8F%A0%E7%8E%91/1.htm">编程珠玑</a> <div> import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.Writer; import java.util.Random; public class BitMapSearch { </div> </li> <li><a href="/article/2136.htm" title="Java关于==和equals" target="_blank">Java关于==和equals</a> <span class="text-muted">chenbowen00</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>关于==和equals概念其实很简单,一个是比较内存地址是否相同,一个比较的是值内容是否相同。虽然理解上不难,但是有时存在一些理解误区,如下情况: 1、 String a = "aaa"; a=="aaa"; ==> true 2、 new String("aaa")==new String("aaa</div> </li> <li><a href="/article/2263.htm" title="[IT与资本]软件行业需对外界投资热情保持警惕" target="_blank">[IT与资本]软件行业需对外界投资热情保持警惕</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/it/1.htm">it</a> <div>       我还是那个看法,软件行业需要增强内生动力,尽量依靠自有资金和营业收入来进行经营,避免在资本市场上经受各种不同类型的风险,为企业自主研发核心技术和产品提供稳定,温和的外部环境...       如果我们在自己尚未掌握核心技术之前,企图依靠上市来筹集资金,然后使劲往某个领域砸钱,然</div> </li> <li><a href="/article/2390.htm" title="oracle 数据块结构" target="_blank">oracle 数据块结构</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/%E5%9D%97/1.htm">块</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%9D%97/1.htm">数据块</a><a class="tag" taget="_blank" href="/search/%E5%9D%97%E7%BB%93%E6%9E%84/1.htm">块结构</a><a class="tag" taget="_blank" href="/search/%E8%A1%8C%E7%9B%AE%E5%BD%95/1.htm">行目录</a> <div>oracle 数据块是数据库存储的最小单位,一般为操作系统块的N倍。其结构为: 块头--〉空行--〉数据,其实际为纵行结构。 块的标准大小由初始化参数DB_BLOCK_SIZE指定。具有标准大小的块称为标准块(Standard Block)。块的大小和标准块的大小不同的块叫非标准块(Nonstandard Block)。同一数据库中,Oracle9i及以上版本支持同一数据库中同时使用标</div> </li> <li><a href="/article/2517.htm" title="github上一些觉得对自己工作有用的项目收集" target="_blank">github上一些觉得对自己工作有用的项目收集</a> <span class="text-muted">dengkane</span> <a class="tag" taget="_blank" href="/search/github/1.htm">github</a> <div>github上一些觉得对自己工作有用的项目收集 技能类 markdown语法中文说明 回到顶部 全文检索 elasticsearch bigdesk elasticsearch管理插件 回到顶部 nosql mapdb 支持亿级别map, list, 支持事务. 可考虑做为缓存使用 C</div> </li> <li><a href="/article/2644.htm" title="初二上学期难记单词二" target="_blank">初二上学期难记单词二</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/english/1.htm">english</a><a class="tag" taget="_blank" href="/search/word/1.htm">word</a> <div>dangerous 危险的 panda 熊猫 lion 狮子 elephant 象 monkey 猴子 tiger 老虎 deer 鹿 snake 蛇 rabbit 兔子 duck 鸭 horse 马 forest 森林 fall 跌倒;落下 climb 爬;攀登 finish 完成;结束 cinema 电影院;电影 seafood 海鲜;海产食品 bank 银行</div> </li> <li><a href="/article/2771.htm" title="8、mysql外键(FOREIGN KEY)的简单使用" target="_blank">8、mysql外键(FOREIGN KEY)的简单使用</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div>一、基本概念 1、MySQL中“键”和“索引”的定义相同,所以外键和主键一样也是索引的一种。不同的是MySQL会自动为所有表的主键进行索引,但是外键字段必须由用户进行明确的索引。用于外键关系的字段必须在所有的参照表中进行明确地索引,InnoDB不能自动地创建索引。 2、外键可以是一对一的,一个表的记录只能与另一个表的一条记录连接,或者是一对多的,一个表的记录与另一个表的多条记录连接。 3、如</div> </li> <li><a href="/article/2898.htm" title="java循环标签 Foreach" target="_blank">java循环标签 Foreach</a> <span class="text-muted">shuizhaosi888</span> <a class="tag" taget="_blank" href="/search/%E6%A0%87%E7%AD%BE/1.htm">标签</a><a class="tag" taget="_blank" href="/search/java%E5%BE%AA%E7%8E%AF/1.htm">java循环</a><a class="tag" taget="_blank" href="/search/foreach/1.htm">foreach</a> <div>1. 简单的for循环 public static void main(String[] args) { for (int i = 1, y = i + 10; i < 5 && y < 12; i++, y = i * 2) { System.err.println("i=" + i + " y=" </div> </li> <li><a href="/article/3025.htm" title="Spring Security(05)——异常信息本地化" target="_blank">Spring Security(05)——异常信息本地化</a> <span class="text-muted">234390216</span> <a class="tag" taget="_blank" href="/search/exception/1.htm">exception</a><a class="tag" taget="_blank" href="/search/Spring+Security/1.htm">Spring Security</a><a class="tag" taget="_blank" href="/search/%E5%BC%82%E5%B8%B8%E4%BF%A1%E6%81%AF/1.htm">异常信息</a><a class="tag" taget="_blank" href="/search/%E6%9C%AC%E5%9C%B0%E5%8C%96/1.htm">本地化</a> <div>异常信息本地化          Spring Security支持将展现给终端用户看的异常信息本地化,这些信息包括认证失败、访问被拒绝等。而对于展现给开发者看的异常信息和日志信息(如配置错误)则是不能够进行本地化的,它们是以英文硬编码在Spring Security的代码中的。在Spring-Security-core-x</div> </li> <li><a href="/article/3152.htm" title="DUBBO架构服务端告警Failed to send message Response" target="_blank">DUBBO架构服务端告警Failed to send message Response</a> <span class="text-muted">javamingtingzhao</span> <a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/DUBBO/1.htm">DUBBO</a> <div> 废话不多说,警告日志如下,不知道有哪位遇到过,此异常在服务端抛出(服务器启动第一次运行会有这个警告),后续运行没问题,找了好久真心不知道哪里错了。    WARN 2015-07-18 22:31:15,272 com.alibaba.dubbo.remoting.transport.dispatcher.ChannelEventRunnable.run(84)</div> </li> <li><a href="/article/3279.htm" title="JS中Date对象中几个用法" target="_blank">JS中Date对象中几个用法</a> <span class="text-muted">leeqq</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/Date/1.htm">Date</a><a class="tag" taget="_blank" href="/search/%E6%9C%80%E5%90%8E%E4%B8%80%E5%A4%A9/1.htm">最后一天</a> <div>近来工作中遇到这样的两个需求 1. 给个Date对象,找出该时间所在月的第一天和最后一天 2. 给个Date对象,找出该时间所在周的第一天和最后一天   需求1中的找月第一天很简单,我记得api中有setDate方法可以使用 使用setDate方法前,先看看getDate var date = new Date(); console.log(date); // Sat J</div> </li> <li><a href="/article/3406.htm" title="MFC中使用ado技术操作数据库" target="_blank">MFC中使用ado技术操作数据库</a> <span class="text-muted">你不认识的休道人</span> <a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/mfc/1.htm">mfc</a> <div>1.在stdafx.h中导入ado动态链接库 #import"C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","end")2.在CTestApp文件的InitInstance()函数中domodal之前写::CoIniti</div> </li> <li><a href="/article/3533.htm" title="Android Studio加速" target="_blank">Android Studio加速</a> <span class="text-muted">rensanning</span> <a class="tag" taget="_blank" href="/search/android+studio/1.htm">android studio</a> <div>Android Studio慢、吃内存!启动时后会立即通过Gradle来sync & build工程。 (1)设置Android Studio a) 禁用插件 File -> Settings...  Plugins 去掉一些没有用的插件。 比如:Git Integration、GitHub、Google Cloud Testing、Google Cloud</div> </li> <li><a href="/article/3660.htm" title="各数据库的批量Update操作" target="_blank">各数据库的批量Update操作</a> <span class="text-muted">tomcat_oracle</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a> <div>MyBatis的update元素的用法与insert元素基本相同,因此本篇不打算重复了。本篇仅记录批量update操作的 sql语句,懂得SQL语句,那么MyBatis部分的操作就简单了。   注意:下列批量更新语句都是作为一个事务整体执行,要不全部成功,要不全部回滚。 MSSQL的SQL语句  WITH R AS(   SELECT 'John' as name, 18 as</div> </li> <li><a href="/article/3787.htm" title="html禁止清除input文本输入缓存" target="_blank">html禁止清除input文本输入缓存</a> <span class="text-muted">xp9802</span> <a class="tag" taget="_blank" href="/search/input/1.htm">input</a> <div>多数浏览器默认会缓存input的值,只有使用ctl+F5强制刷新的才可以清除缓存记录。如果不想让浏览器缓存input的值,有2种方法: 方法一: 在不想使用缓存的input中添加 autocomplete="off"; eg: <input type="text" autocomplete="off" name</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html><script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>