- npm 搭建 Vite 项目
渺小的虫子
viter前端javascript开发语言
兼容性注意Vite需要Node.js版本>=12.0.0。1、使用npm安装Viter$npminitvite@latest使用npm初始化项目#npm6.xnpminitvite@latestmy-vue-app--templatevue#npm7+,需要额外的双横线:npminitvite@latestmy-vue-app----templatevue2、配置路由:npminstallvue-
- docker怎么端口映射
Lance_mu
docker容器运维
1、默认固定的端口#Web服务器:WebApache或Nginx通常使用80端口HTTP:80HTTPS:443#数据库服务器MySQL:3306PostgreSQL:5432MongoDB:27017Redis:6379#邮件服务器SMTP:25POP3:110IMAP:143#其他服务SSH:22FTP:21DNS(域名解析):53代理服务器Squid:3128版本控制系统Git:9418(S
- macOS安装mongoDB(homebrew)
lx741602698
macosmongodb数据库
使用HomebrewHomebrew是macOS的一个包管理器,可以非常方便地安装MongoDB和其他软件。如果你还没有安装Homebrew,可以从它的官网上找到安装指令。已安装Homebrew的话,先更新一下homebrewbrewupdate你可以使用下面的命令来安装MongoDB的社区版:brewtapmongodb/brewbrewinstallmongodb-community安装完成后
- MongoDB聚合运算符:$indexOfArray
原子星
mongodbmongodb数据库
文章目录语法使用举例$indexOfArray聚合运算符返回指定值在数组中第一次出现的索引位置,数组的索引从0开始。语法{$indexOfArray:[,,,]}$indexOfArray参数说明:,字符串,可以是任何能够解析为数组的表达式,如果表达式解析为null或引用的字段不存在,$indexOfArray返回null。如果表达式不能解析为数组或null且引用的字段都存在,$indexOfAr
- npm 常用命令详解
马卫斌 前端工程师
npm
npm(NodePackageManager)是Node.js的包管理器,它允许用户方便地安装、共享和管理Node.js项目中的依赖。以下是一些npm常用命令的详解:1.查看npm版本npm-v这个命令用于查看本地已安装的npm版本。2.初始化项目npminit运行这个命令会引导你创建一个package.json文件,该文件包含了项目的元数据,如名称、版本、描述、作者等信息以及项目的依赖配置。若要
- npm 包管理工具:常用命令详解与使用指南
LXHYouth
node.jsnpmnode.js
npm常用命令的更详细解释和使用场景:npminit详细说明:此命令用于初始化一个新的Node.js项目。它会创建一个package.json文件,其中包含项目的基本信息,如名称、版本、描述、入口点(mainfile)、测试命令、git仓库地址等。这个文件是项目的心脏,记录了项目的元数据和依赖关系。使用示例:在命令行中输入npminit,然后根据提示填写项目信息。如果你想要快速生成一个默认的pac
- mac 安装 mongoDB的若干坑 --原mac bash环境中和(item2 + oh-my-zsh 环境中)安装mongo
Kurtice
mac安装mongoDB的若干坑--原macbash环境中和(item2+oh-my-zsh环境中)安装mongo本文链接:https://blog.csdn.net/weixin_38080573/article/details/88817869imageMongoDBmac安装mongoDB有挺多种方式,操作的过程中有一些坑,记录下来,供参考。这里采用的是curl的方式来安装。1、安装先打开m
- 如何快速上手Vue框架?
山间漫步人生路
vue.js前端框架vue.js
要快速上手Vue框架,可以按照以下步骤进行:一、准备工作了解Vue:Vue是一个构建用户界面的渐进式框架,核心库只关注视图层。环境准备:安装Node.js和npm,这是Vue开发的基础环境。二、安装Vue全局安装VueCLI:使用npm全局安装VueCLI,它是一个基于Vue.js进行快速开发的完整系统。npminstall-g@vue/cli三、创建Vue项目使用VueCLI创建新项目:vuec
- Vue项目使用process.env关键字及Vue.config.js配置解决前端跨域问题
百思不得小李
JS实战记录vue2实战记录javascript前端vue.js
1.process.env是Node.js中的一个环境1.打开命令行查看环境:2.process.env与VueCLI项目VueCli有以下三种运行模式development模式用于vue-cli-serviceservetest模式用于vue-cli-servicetest:unitproduction模式用于vue-cli-servicebuild和vue-cli-servicetest:e2
- MongoDB聚合运算符:$indexOfBytes
原子星
mongodbmongodb数据库
文章目录语法使用举例$聚合运算符在字符串中搜索子字符串的出现位置并返回第一次出现的UTF-8字节索引(从零开始)。如果未找到子字符串,则返回-1。语法{$indexOfBytes:[,,,]}参数说明:参数说明字符串表达式,如果表达式的值为null或应用的字段缺失,则返回null;如果表达式的值不为字符串、null、或字段缺失,则报错要搜索的字符串,可以是任何可解析为字符串的表达式可选参数,可解析
- 随笔:一件尴尬的小事
Doubt_Fact
今天下午,朋友找我帮忙,想让我帮忙写一个随机点名的程序,我满口答应了下来,不过我不怎么会写窗口应用,就问他可不可以以网页代替,他同意了。我便写了一个html文件,除了中间遇到一个小插曲,一个缺少的英文“,”被漏掉了,到最后一直无法正常显示……在完成后,我到网页上看到了一种把网页制作成程序的方法,只需利用程序nativefier来操作,这个程序最后基于Node.js。我又很快在我的windows机器
- Vue后台管理系统笔记-01
菜-卷
Vuevue.js笔记前端
npm(NodePackageManager)和yarn是两个常用的包管理工具,用于在Node.js项目中安装、管理和更新依赖项。它们有以下几个区别:性能和速度:在包的安装和下载方面,yarn通常比npm更快速。yarn使用了并行下载和缓存等优化策略,可以提供更快的安装速度。缓存机制:yarn具有更强大的缓存机制,能够更好地利用缓存,减少重复下载。这对于团队协作和构建机器上的重复构建是有益的,可以
- 2019 MongoDB 中国用户大会超级早鸟特惠票倒计时3天!
MongoDBChina
2019MongoDB中国用户大会2019MongoDB中国用户大会即将走进上海!我们诚邀您参加此次MongoDB年度盛会,与构建MongoDB数据库、助力众多用户成功部署MongoDB的官方团队,共同探讨学习最热门的MongoDB技能,以及最前沿的app设计和性能管理等高阶技术。MongoDB全球及中国技术专家将携手行业典型客户、MongoDB技术大牛和专业的合作伙伴倾情为您打造一场数据的盛宴。
- 深入解析:在 Node.js 中删除文件的正确姿势
咖啡加剁椒⑥
软件测试node.js功能测试软件测试自动化测试程序人生职场和发展
引言在Node.js中处理文件尤其是移除文件,对于维护高效应用程序至关重要。储存和秩序当道的今天,删除不必要或冗余的文件能力显得尤为关键。本文深入探讨你会想要使用这个强大功能的时刻和原因,并通过各种案例展示了这个概念,同时提供了技术机制的见解。Node.js文件删除的常见场景定期清理临时文件:应用程序经常生成临时数据,如缓存或日志文件。这些文件一旦完成它们的使命,便需定期清除以保持系统整洁。处理文
- mongo 哪些指令条件需要包含分片键
笨死de猪
mongo数据库mongodb
一、mongo分片原理在MongoDB中,数据根据一个称为分片键(SharedKey)的字段进行分片。根据指定字段按照指定分片方式(哈希分片、范围分片)将数据拆分到mongo集群里的不同服务器中分片键的选择非常关键,它应该能够确保数据均匀分布,避免热点问题。分片键通常是在文档中的一个字段,MongoDB根据这个字段的值来决定将文档存储在哪个分片上二、分片作用1、MongoDB分片的主要优势在于它允
- MongoDB聚合运算符:$documentNumber
原子星
mongodbmongodb数据库
文章目录语法用法举例每个州的文档编号重复值、空值和缺失值的文档编号$documentNumber聚合运算符返回$setWindowFields聚合阶段文档在分区中的位置。从版本5.0开始支持。语法{$documentNumber:{}}$documentNumber聚合运算符没有参数。用法$setWindowFields阶段的sortBy字段决定了文档的编号。$documentNumber返回文档
- Node.js 自带的 http 模块来实现一个简单的本地服务器
鸿是江边鸟,曾是心上人
node.jshttp服务器
1.创建一个server.js文件:consthttp=require('http');constfs=require('fs');constpath=require('path');constserver=http.createServer((req,res)=>{//获取请求的文件路径constfilePath=path.join(__dirname,'dist',req.url);//读取文
- 基于Node.js 和 FFmpeg构建自动化脚本用来转码视频
接着奏乐接着舞。
工作经验总结node.jsffmpeg自动化
这个脚本将监控一个特定的目录,自动转码新添加的视频文件,并将转码后的视频保存到指定目录。准备环境安装Node.js:访问Node.js官网,下载并安装适合你操作系统的Node.js版本。安装FFmpeg(不清楚的可以看我的上篇博客里有详细的安装步骤):对于Windows用户,可以从FFmpeg官方网站下载预编译的二进制文件,解压,并将bin目录添加到系统的环境变量中。macOS用户可以使用Home
- MongoDB聚合运算符:$eq
原子星
mongodbmongodb数据库
文章目录语法举例$eq聚合运算符用于比较两个值并返回是否相等,如果相等返回true,否则返回false语法{$eq:[,]}$eq可以用来比较任何类型的值,针对不同的类型使用特定的BSON比较顺序。举例inventory集合有下列文档:{"_id":1,"item":"abc1","description":"product1","qty":300}{"_id":2,"item":"abc2","
- TypeScript基本类型和语法
卷心菜007
TypeScripttypescriptjavascript前端
TypeScript安装环境搭建1.下载node.js(下载LTS稳定版、Current最近版不稳定)2.安装node.js3.使用npm全局安装TypeScript:npmi-gtypescript4.创建一个ts文件5.使用tsc对ts文件进行编译:cmd/终端到当前ts文件所在目录执行命令tscts文件名.tsTypeScript基本类型类型声明jsjs是动态类型的语言,变量是没有类型的概念
- Node.js 中的 HTTP 模块教程
猿小白klp
nodenode.jshttp网络协议前端后端
在Node.js中,HTTP模块是一个核心模块,用于处理网络请求和响应。通过HTTP模块,我们可以创建HTTP服务器和客户端,实现网络通信和数据交互。本教程将介绍如何使用Node.js的HTTP模块来创建一个简单的HTTP服务器。1.创建HTTP服务器首先,我们需要引入Node.js的HTTP模块:consthttp=require('http');然后,我们可以使用http.createServ
- MongoDB聚合运算符:$dayOfMonth
原子星
杂谈mongodb数据库
MongoDB聚合运算符:$dayOfMonth$dayOfMonth返回日期中“日”的部分,值的范围1~31。$dayOfMonth可以用于以下场景:提取日期字段的"日"部分:当需要从日期字段中提取出具体的天数时,可以使用$dayOfMonth。例如,有一个包含日期的集合,可以使用$dayOfMonth来获取每个日期的天数。按天进行分组和统计:当结合$group操作符使用时,$dayOfMont
- MongoDB聚合运算符:$dateFromParts
原子星
mongodbmongodb数据库
文章目录语法使用值域值大于范围值小于范围时区举例$dateFromParts聚合运算符可根据构成日期的属性,构造并返回Date对象。语法{$dateFromParts:{'year':,'month':,'day':,'hour':,'minute':,'second':,'millisecond':,'timezone':}}也可以用以下格式指定组成日期字段ISO周日期格式指定日期字段:{$da
- harmony 鸿蒙使用N-API开发Native模块
carlshen8
鸿蒙开发harmonyos华为
harmony鸿蒙使用N-API开发Native模块,其实就是Node.js官网中已经给出N-API接口基础能力,同时,方舟ArkTS运行时提供的N-API接口,封装了方舟引擎的能力,在功能上与Node.js社区保持一致。N-API是Node.jsAddonProgrammingInterface的缩写,是Node.js提供的一组C++API,封装了V8引擎的能力,用于编写Node.js的Nati
- API接口技术开发商品详情接口采集宝贝详情页数据、宝贝ID、宝贝标题、价格、掌柜昵称、品牌名称等数据可支持高并发接入演示
APItesterCris
分享API接口数据挖掘数据分析数据挖掘开发语言数据库前端
为了开发一个API接口来采集商品详情页(接入请求API)的数据,如宝贝详情、宝贝ID、宝贝标题、价格、掌柜昵称、品牌名称等,你需要遵循以下步骤:一、需求分析:确定需要采集的数据字段。确认数据来源,例如是某个电商平台的网页。分析平台是否有公开的API接口可以直接利用。二、选择技术栈:后端语言(如Python,Node.js,Java等)网络请求库(如requests,axios等)数据库(如果需要存
- Node.js基础---使用Express写接口
爱健身的小刘同学
node.jsnode.jsexpress
1.创建基本的服务器2.创建API路由模块//aoiRouter.js路由模块constexpress=require('express')constapiRouter=express.Router()module.exports=apiRouter//------------------------------------------//app.js导入并注册路由模块constapiRouter
- Node.js概述与安装运行浅记
dami_king
随笔node.js前端html5开发语言
Node.js概述Node.js是一个开源、跨平台的JavaScript运行环境,用于在服务器端执行JavaScript代码。它不是一门新的编程语言,而是基于Google的V8JavaScript引擎构建的一个平台,允许开发者使用JavaScript编写服务器端应用。Node.js采用了异步非阻塞I/O模型,非常适合开发高性能、可扩展的网络应用,尤其是数据密集型实时应用(如聊天室、游戏后台服务、实
- 管理npm源:如何使用nrm工具提升你的开发效率
迎风斯黄
前端开发工程师npm前端node.js
在JavaScript和Node.js的开发过程中,npm(NodePackageManager)扮演着至关重要的角色,它是管理项目依赖的主要工具。然而,由于网络环境的差异,特别是在中国大陆,直接使用npm官方源可能会遇到速度慢甚至无法访问的问题。幸运的是,有一些工具和技巧可以帮助开发者优化这一环节,其中nrm(npmregistrymanager)是一个非常高效的解决方案。什么是nrm?nrm是
- 【Node.js从基础到高级运用】五、NPM包管理
Vip_wk
node.jsnpm前端
NPM包管理NodePackageManager(NPM)是Node.js的包管理器,它允许你安装、共享和管理依赖的库和工具。NPM不仅是一个命令行工具,还是一个庞大的软件包注册表,提供了数以万计的代码包。本节将介绍如何使用NPM安装和管理依赖,以及package.json文件的结构和作用。安装和使用NPMNPM随Node.js一起安装,因此当你安装了Node.js,你也就拥有了NPM。你可以通过
- 【Node.js从基础到高级运用】一、了解Node.js基础概念
Vip_wk
node.jsjavascript
Node.js入门:基础概念解析欢迎来到Node.js的世界!如果你是一名开发者,不论是初出茅庐还是有着丰富的前端经验,了解Node.js都是一个令人兴奋的旅程。在这篇博客文章中,我们将深入探讨Node.js的基础概念,帮助你建立起对这个强大平台的初步理解。什么是Node.js?Node.js是一个开源、跨平台的JavaScript运行环境,它允许开发者使用JavaScript来编写服务器端代码。
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include