- 知识分享之Golang——Bleve中的Token filters各种标记过滤器
caihuayuan4
面试题汇总与解析springsqljava大数据课程设计
知识分享之Golang——Bleve中的Tokenfilters各种标记过滤器背景知识分享之Golang篇是我在日常使用Golang时学习到的各种各样的知识的记录,将其整理出来以文章的形式分享给大家,来进行共同学习。欢迎大家进行持续关注。知识分享系列目前包含Java、Golang、Linux、Docker等等。开发环境系统:windows10语言:Golang组件库:Blevegolang版本:1
- Zookeeper - Docker安装,单机安装,单机三节点安装
瑾析编程
zookeeper3.5.5docker一台服务器三个节点
该博客所有的文章都是自己的学习记录,方便后续复习,达到快速回顾知识点的作用。文章目录这篇文章主要记录Zookeeper的3.5.5版本下载,安装,启动。Docker-单机启动Linux(CentOS7.7)-单机启动Linux(CentOS7.7)-一台机器三节点启动Docker-单机启动下载dockerpullzookeeper:3.5.5注意事项image的版本对docker的版本也是有要求的
- 保姆级教程手把手教你如何快速部署一个属于你自己的微信AI机器人-支持群聊
阿木木AEcru
Docker容器化部署系列微信人工智能机器人
个人主页:阿木木AEcru(更多精彩内容可进入主页观看)系列专栏:《Docker容器化部署系列》《Java每日面筋》每一次技术突破,都是对自我能力的挑战和超越。目录一、前言二、部署方式选择三、申请讯飞星火大模型(免费)四、Docker部署机器人4.1获取部署文件4.2修改部署文件4.3启动脚本4.4绑定作为机器人的微信4.5测试五、结尾一、前言自从AI火了之后,相信大家也在不断的关注AI,从20
- Ubuntu Docker 安装
Mr_One_Zhang
学习Dockerubuntudockerlinux
DockerEngine-Community支持以下的Ubuntu版本:Xenial16.04(LTS)Bionic18.04(LTS)Cosmic18.10Disco19.04其他更新的版本……DockerEngine-Community支持上x86_64(或amd64)armhf,arm64,s390x(IBMZ),和ppc64le(IBM的Power)架构。使用官方安装脚本自动安装安装命令如
- DeepSeek架构革命:动态异构计算
伏羲栈
人工智能架构
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
- 模块一:Docker基础入门(一)
GODLIKENESS
Dockerdocker容器深度学习运维
Docker革命:为什么容器化是云时代的基石?被依赖地狱折磨的开发者们“在我机器上是好的啊!”——这句开发者的经典辩解,背后暴露的是环境差异带来的致命问题。想象这样的场景:运维人员部署Python应用时发现,测试环境的requests2.25.1在生产环境变成了requests3.0.0团队新人花一整天配置RubyonRails环境,却因macOS与Linux的文件系统差异导致bundleinst
- minikube 的 Kubernetes 入门教程--Dify
NightReader
minikubekubernetes容器云原生
Dify是一款开源的大语言模型(LLM)应用开发平台。它融合了后端即服务(BackendasService)和LLMOps的理念,使开发者可以快速搭建生产级的生成式AI应用。即使你是非技术人员,也能参与到AI应用的定义和数据运营过程中。为什么使用Dify?你或许可以把LangChain这类的开发库(Library)想象为有着锤子、钉子的工具箱。与之相比,Dify提供了更接近生产需要的完整方案,Di
- 在 MacBook 上设置 DeepSeek R1 (8B) 的 3 个步骤
知识大胖
NVIDIAGPU和大语言模型开发教程deepseekollamaopenwebui
简介DeepSeek最近发布了R1模型,该模型在本地AI推理方面表现出色。如果您希望在MacBook上运行它,Ollama提供了一种无缝的方式来下载和管理模型。此外,使用Docker,您可以设置WebUI以方便地与其交互。本指南将引导您逐步完成启动和运行所有操作的过程。推荐文章《24GBGPU中的DeepSeekR1:UnslothAI针对671B参数模型进行动态量化》权重1,DeepSeek类《
- 【随笔笔记】将mysql数据迁移到群晖NAS
QTEASY量化交易
随笔笔记笔记mysql数据库
将mysql数据迁移到群晖NAS情况和问题前提条件方法1,使用管道方式传递数据方法2,导出数据为文件,复制到NAS上再导入情况和问题原本大量的金融数据保存在电脑本地硬盘的mysql数据库中,随着数据量越来越大,电脑的硬盘吃紧,正好把我的群晖NAS升级到了DS923+并且增加了4T的存储空间,可以使用Docker安装mysql并且存储空间不再是个问题,因此打算将电脑中的数据全部迁移到群晖NAS中。这
- 2024年linux——环境基础开发工具使用_gcc test file(4),2024年最新程序设计+Linux运维+Web+数据库+框架+分布式
2401_83740189
程序员运维linux前端
最全的Linux教程,Linux从入门到精通======================linux从入门到精通(第2版)Linux系统移植Linux驱动开发入门与实战LINUX系统移植第2版Linux开源网络全栈详解从DPDK到OpenFlow第一份《Linux从入门到精通》466页====================内容简介====本书是获得了很多读者好评的Linux经典畅销书**《Linu
- 在 Windows 上安装 Docker
雄哥007
docker容器运维windows
1前言要开始使用Docker,您首先需要在开发计算机上安装它。安装类型取决于您的操作系统。Windows10计算机上的安装与WindowsServer计算机上的安装不同。最低系统要求为进行了周年纪念更新的Windows10专业版或企业版(版本1607)、WindowsServer2016或WindowsServer2019。Docker上的Windows容器可以在两种不同的运行时隔离模式下运行:(
- windows环境下,使用docker搭建redis集群
一醉千秋
shelldockerWebGISwebdockerredis容器
参考:https://blog.csdn.net/weixin_46594796/article/details/137864842https://www.cnblogs.com/niceyoo/p/14118146.html史上最详细Docker搭建RedisCluster集群环境值得收藏每步都有图,不用担心学不会-腾讯云开发者社区-腾讯云一、基础环境描述宿主机:192.168.8.209red
- k8s面试题总结(七)
a_j58
kubernetes容器云原生
1.K8s中镜像下载策略有哪几种?Always,Never,IfNotPresent2.K8s中pod故障重启策略有哪几种?Always,Never,OnFailure3.什么是HeadlessService?HeadlessService是通过在Service的定义中设置clusterIP:None来实现的。它的核心特性是:没有ClusterIP:普通Service会分配一个虚拟的Cluster
- k8s面试题总结(六)
a_j58
Kubernetes知识点汇总kubernetesjava容器
1.说明一下kubernetes和docker的关系Docker的作用容器镜像管理:Docker可以将应用程序及其依赖打包成一个轻量级的、可移植的容器镜像。容器运行时:Docker提供了一个运行时环境,用于在主机上运行容器。Kubernetes的作用kubernetes是一个容器编排平台,主要用于管理大规模的容器化应用程序。Kubernetes和Docker的关系Docker负责容器的底层运行时:
- 在 Ubuntu20.04 上安装 Docker 并部署 Dify
奕997
ubuntudockerlinux
1.安装Docker1.1更新系统软件包列表在终端执行以下命令更新软件包列表:sudoaptupdate1.2安装必要的依赖包为了能够通过HTTPS安装Docker,我们需要先安装一些必备包:sudoaptinstallapt-transport-httpsca-certificatescurlsoftware-properties-common1.3添加Docker官方GPG密钥执行以下命令,将
- MinIO上传
蹦跑的蜗牛
java
MinIO上传docker搭建minioxml配置文件yml配置文件获取yml配置参数minio配置上传服务类docker搭建minioversion:'3'services:minio:image:minio/minio:RELEASE.2023-04-13T03-08-07Zcontainer_name:minioports:#api端口-"9000:9000"#控制台端口-"9001:900
- 快速上手 Unstructured:安装、Docker部署及PDF文档解析示例
大F的智能小课
大模型理论和实战dockerpdf容器
1.核心概念1.1Unstructured简介Unstructured是一个强大的Python库,专注于从非结构化数据中提取和预处理文本信息,广泛应用于PDF、Word文档、HTML等多种格式的文件处理。其核心功能包括分区、清理、暂存和分块,能够将复杂的非结构化文档转换为结构化输出,为后续的自然语言处理任务提供高质量的数据支持。分区功能:Unstructured能够将原始文档分解为标准的结构化元素
- Flask在docker中运行
jackson_hou03
flaskdockerpython
Flask在docker中运行FROMpython:3.11ADD./code/codeWORKDIR/codeRUNpipinstall-rrequirements.txt-ihttps://pypi.tuna.tsinghua.edu.cn/simple/CMD["python","/code/main.py"]dockerbuild-texecutor:1.0.0.
- 软件测试丨Docker容器网络模式详解
霍格沃兹测试开发学社测试人社区
docker网络容器软件测试测试开发
在Docker中,bridge、host和container是三种常见的网络模式,用于定义容器与主机及其他容器之间的网络通信方式。以下是它们的详细说明:1.Bridge模式Bridge模式是Docker默认的网络模式。在这种模式下,Docker会为每个容器创建一个虚拟网络接口,并将其连接到一个名为docker0的虚拟网桥上。容器通过这个网桥与主机和其他容器通信。特点:隔离性:每个容器都有自己的网络
- kubernetes源码之kubelet初始化
buppt
kubernetes源码学习kubernetesdockergogolang云原生
从这篇开始阅读一下kubernetes的源码,kubernetes是使用cobra构建的,如果对cobra还不了解的,可以查看我的上篇文章。零基础入门Cobra---kubernetes源码学习必备kubernetes的源码先从kubelet开始看起。kubelet的启动文件在cmd/kubelet/kubelet.go,入口通过app.NewKubeletCommand()初始化了kubelet
- 【go】以Kubernetes中的 kubelet 为引思考go语言中共享状态的选择
还没入门的大菜狗
kubernetes
由于kubelet因为有很多共享状态,所以彻底按照单一职责进行拆分。于是现在总结一下kubelet中关于共享状态的类型、并且选择的原因。KubernetesKubelet共享状态模式的选择策略从您提供的Kubelet代码中,可以看到Kubernetes使用了多种共享状态管理模式。以下是这些模式的选择策略和适用场景:共享状态模式及其选择标准1.集中式管理器模式适用场景:特定领域的复杂状态管理(如Po
- redis 快速入门
栀夏613
数据库redis数据库缓存
目录数据库的分类NoSQL非结构化认识redis特征安装redis单机安装Docker安装redis的基本配置启动redis关闭redisredis开机自启redis客户端redis数据结构介绍基本类型String的基础操作List基本操作Set基本操作SortedSet基本操作Hash基本操作redis通用命令key的层级格式数据库的分类关系型数据库结构化数据表中存储的数据格式是一样的数据与数据
- 4.Docker容器命令
钗头风
Dockerdocker容器运维
Docker镜像与容器的理解在学习docker入门过程中有些时候容易把容器和镜像这两个概念记混淆;下面说下我自己的理解不对望指正!有镜像才能创建容器这是根本前提!IMAGE镜像就好比我们的Java实体工程代码;在服务器上这套Java实体代码可以运行启动多份工程。依靠Java实体代码启动的一个个工程就相当于是容器;准备工作:使用dockerpullubuntu命令拉取一个最新的ubuntu镜像;使用
- The connection to the server localhost:8080 was refused
tianluke9
错误谨记kubernetes
最近在学习安装Kubernetes集群的时候,安装完执行sudokubectlgetnodes命令出现这个报错:下面是解决方法。Master节点出现这个报错首先需要检查Master安装完Kubernetes后是否执行了下面命令。需要注意到是:如果整个过程都是在普通用户下使用sudo安装,则仍然需要在普通用户下执行了下面命令;如果整个过程都在root用户下安装,则还在root用户下执行了下面命令。m
- CIDR转IP段:原理&Java实现
伏羲栈
Javatcp/ipjava网络协议
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
- 23道 K8S 面试题
奋斗喝咖啡
dockerkubernetes容器
1、k8s是什么?请说出你的了解?答:Kubernetes是一个针对容器应用,进行自动部署,弹性伸缩和管理的开源系统。主要功能是生产环境中的容器编排。K8S是Google公司推出的,它来源于由Google公司内部使用了15年的Borg系统,集结了Borg的精华。2、K8s架构的组成是什么?答:和大多数分布式系统一样,K8S集群至少需要一个主节点(Master)和多个计算节点(Node)。主节点主要
- 【go语言规范】Kubernetes 中kubelet关于接口的反模式、并且违背单一职责原则
还没入门的大菜狗
kubelet
Go接口设计与KubernetesKubelet接口实现分析Go语言的接口理念是"在使用侧定义接口"(interfacesegregationprinciple),而不是让实现者提供接口。但在Kubelet代码中看到的情况确实有些特殊。//SyncHandlerisaninterfaceimplementedbyKubelet,fortestabilitytypeSyncHandlerinterf
- 【Kubernetes】 Scheduler 的逻辑:从 Predicates/Priorities 到 Filter/Score
还没入门的大菜狗
kubernetes
Kubernetes调度框架的演进:从Predicates/Priorities到Filter/ScoreKubernetes调度框架从传统的Predicates(预选)和Priorities(优选)转变为现代的Filter和Score扩展点是在Kubernetes1.15到1.18这个时期逐步完成的。演进时间线Kubernetes1.15(2019年6月发布)首次引入调度框架(Schedulin
- Kubernetes-v1.26.3(kubeadm)部署
wxwopt
kubelet
1.k8s基础系统环境配置1.1.环境准备CentOSLinuxrelease7.9.2009(Core)IPHOSTNAME操作系统192.168.10.131k8s-master01CentOS7.9192.168.10.132k8s-master02CentOS7.9192.168.10.133k8s-node01CentOS7.9注意:集群安装时会涉及到三个网段:宿主机网段:就是安装k8s
- k8s面试题总结(五)
a_j58
Kubernetes知识点汇总kubernetes容器云原生
1.考虑一种情况,即公司希望通过维持最低成本来提高其效率和技术运营速度。您认为公司将如何实现这一目标?公司可以通过构建CI/CD管道来实现DevOps方法,但是这里可能出现的一个问题是配置可能需要一段时间才能启动并运行。因此,在实施CI/CD管道之后,公司的下一步应该是在云环境中工作。一旦他们开始处理云环境,他们就可以在集群上安排容器,并可以在Kubernetes的帮助下进行协调。这种方法将有助于
- 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