- 数据结构与算法——二叉树,多叉树的递归遍历、层序遍历,DFS与BFS
Book_熬夜!
数据结构与算法深度优先宽度优先算法数据结构广度优先
文章目录二叉树1.递归遍历2.层序遍历3.多叉树遍历二叉树【子节点】:每个节点下方相连的节点【父节点】:每个节点上方相连的节点【根节点】:最上方没有父节点的节点【叶子节点】:最下方没有子节点的节点【最大深度】:树的最大层数【高度】:节点数减一,即枝数。【满二叉树(PerfectBinaryTree)】:深度为h,则总节点数:2^h-1FullBinaryTree是指一棵二叉树的所有节点要么没有孩子
- 数据结构——环形数组
Book_熬夜!
数据结构与算法数据结构javascript算法
环形数组start指向第一个有效元素的索引,end指向最后一个有效元素的下一个位置索引。注意:start是闭区间,先左移后赋值,先赋值(null)后右移;end是开区间,先赋值再右移,先左移再赋值(null)。左移减一加size再取模,右移加一再取模。【JS代码实现:】classCycleArray{constructor(size=1){this.size=size;this.arr=newAr
- Java面试系列-ElasticSearch面试题20道,文档,索引,搜索,聚合,分词器,集群管理,索引模版,数据备份和恢复,安全机制,集群扩展,实时搜索,索引生命周期,节点发现,批量操作,基本架构
图苑
java面试elasticsearch
文章目录1.Elasticsearch的基本架构是什么?2.Elasticsearch中的Shard和Replica是如何工作的?3.Elasticsearch中的文档是如何存储的?4.Elasticsearch中的索引是如何创建的?5.Elasticsearch中的搜索是如何工作的?6.Elasticsearch中的聚合是如何工作的?7.Elasticsearch中的分词器是如何工作的?8.El
- 【人工智能基础2】Tramsformer架构、自然语言处理基础、计算机视觉总结
roman_日积跬步-终至千里
人工智能习题人工智能自然语言处理计算机视觉
文章目录七、Transformer架构1.替代LSTM的原因2.Transformer架构:编码器-解码器架构3.Transformer架构原理八、自然语言处理基础1.语言模型基本概念2.向量语义3.预训练语言模型的基本原理与方法4.DeepSeek基本原理九、计算机视觉七、Transformer架构1.替代LSTM的原因处理极长序列时,效率下降:虽然LSTM设计的初衷是解决长期依赖问题,即让模型
- 「C语言指针函数与函数指针:从内存管理到灵活调用的实战指南」
℡残城碎梦
c语言指针函数函数指针函数指针数组
1.指针函数:外卖柜的「生存法则」核心痛点:返回局部变量地址导致崩溃?堆区与栈区傻傻分不清?生活类比:栈区≈临时摊位(函数结束即销毁)堆区≈智能外卖柜(手动申请释放,长期有效)代码对比://错误!返回栈区地址(临时摊位被拆)char*bug_demo(){charbuf[32]="hello";returnbuf;//危险操作!}//正确!返回堆区地址(外卖柜长期存餐)char*correct_d
- go面试必问,什么是中间件?
走,我们去吹风
中间件golang面试服务器后端
中间件用过么?Middleware是Web的重要组成部分,中间件(通常)是一小段代码,它们接受一个请求,对其进行处理,每个中间件只处理一件事情,完成后将其传递给另一个中间件或最终处理程序,这样就做到了程序的解耦。全局中间件所有的请求都要经过此中间件packagemainimport("fmt""time""github.com/gin-gonic/gin")//定义中间funcMiddleWare
- uniapp实现页面左滑右滑切换内容
浮桥
uni-app
uniapp+uview:使用uniapp的swiper和uview的tabs标签组合实现Tabs标签-uview-plus3.0-uni-appUI框架{{item.name}}import{onMounted,onUnmounted,ref,reactive,computed,markRaw,getCurrentInstance,nextTick}from"vue";import{format
- Java代码实现文件上传
啊侠
Java学习java实现文件上传
Java代码实现文件上传在文件上传过程中,文件是以流的形式从浏览器提交到服务端的。一般情况下采用Apache公司的开源文件上传组件common-fileupioad来进行文件的上传。由于common-fileupioad依赖于common-io,所以还要下载common-io这个包。准备工作:下载jar包,建立项目,把包导入lib目录,将lib添加到项目输出目录,配置好Tomcat。我们只编写简单
- 基于ViT+milvus的以图搜图服务
国防科技苏东坡
分类算法pytorchmilvus
以图搜图服务简介服务流程介绍:将图片特征经过vit模型提取特征,保存到milvus库中,并存入对应的唯一id和身份标签,用于相似图片搜索;使用相似图片进行搜索,返回搜索到图片的身份标签和置信度。服务包括图片数据插入和图片相似搜索两部分。ViT(VisionTransformer)模型使用huggingface的ViT模型权重。https://huggingface.co/tttarun/visio
- python colorama_Python colorama 模块 使用 说明
weixin_39682697
pythoncolorama
1Colorama模块说明在上篇博客我们了解了prettytable的使用,如下:https://www.cndba.cn/cndba/dave/article/3564使用prettytable模块之后,输出的内容格式看上去会非常整齐,但如果我们想要对部分内容重点显示,那么可以使用两种方法:1)直接使用Python控制输出颜色2)使用colorama模块Colorama是一个python专门用来
- python colorama模块失效怎么办_python – 由于模块colorama,无法使用aws CLI
金牛远望号
pythoncolorama模块失效怎么办
我已经安装了AWSCLI,并尝试在MacOSSierra上使用它.它抱怨没有模块colorama:$awsTraceback(mostrecentcalllast):File"/usr/local/bin/aws",line19,inimportawscli.clidriverFile"/Library/Python/2.7/site-packages/awscli/clidriver.py",l
- spring-data-jpa 动态条件 分页查询
小小小小小小小小小小码农
springboot
pom.xml配置org.springframework.bootspring-boot-starter-data-jpa数据库连接配置##############################################################数据源配置#############################################################spri
- Spark任务读取hive表数据导入es
小小小小小小小小小小码农
hiveelasticsearchsparkjava
使用elasticsearch-hadoop将hive表数据导入es,超级简单1.引入pomorg.elasticsearchelasticsearch-hadoop9.0.0-SNAPSHOT2.创建sparkconf//spark参数设置SparkConfsparkConf=newSparkConf();//要写入的索引sparkConf.set("es.resource","");//es集
- 怎么做一个AI产品经理?
AI筑梦师
AI产品经理人工智能产品经理
AI产品经理全面进化:在人工智能迅猛发展的时代,产品经理的角色正经历前所未有的转型。从传统的需求捕捉者到技术与商业紧密结合的创新推动者,AI产品经理肩负着将前沿AI技术转化为解决用户痛点的产品的重要任务。随着大数据、云计算和大模型技术的不断成熟,产品经理不仅需要具备敏锐的市场洞察,还必须深刻理解AI技术本质,跨界整合技术、数据与业务优势,从而推动产品的持续创新与落地。本文将全面解析AI产品经理的角
- 数据可视化:python画散点图scatter
西红柿爱吃小番茄
pythonpython数据可视化matplotlib
数据可视化:python画散点图scatter我想遍历一幅图的所有像素的h分量的值,然后用散点图表示出来。观察这幅图的h分量的值得变化范围。scatter函数的原型matplotlib.pyplot.scatter(x,y,s=20,c='b',marker='o',cmap=None,norm=None,vmin=None,vmax=None,linewidths=None,vert=None,
- Go 中间件学习
qq_17280559
golang中间件学习go
文章目录1.设计中间件接口2.创建中间件函数3.使用中间件4.中间件链5.使用第三方框架6.定义自定义中间件7.使用自定义中间件应用到整个路由组应用到单个路由8.访问上下文中的信息9.控制流程总结在Go中,中间件(Middleware)是一种设计模式,常用于在请求处理的各个阶段添加通用功能,如日志记录、身份验证、异常处理等。中间件通常应用于HTTP服务器(如net/http包或第三方框架如Gin)
- Spark sql 中row的用法
闯闯桑
sparksql大数据开发语言
在ApacheSpark中,Row是一个表示一行数据的类。它是SparkSQL中DataFrame或Dataset的基本数据单元。每一行数据都由一个Row对象表示,而Row对象中的每个字段对应数据的一个列。Row的用法Row对象通常用于以下场景:创建数据:当你手动创建数据时,可以使用Row对象来表示每一行数据。访问数据:当你从DataFrame或Dataset中提取数据时,每一行数据都是一个Row
- visio 画 弯曲 箭头 ( 波浪线 曲线)
小牛蛋
office工具visio画图
转自:http://blog.csdn.net/hfyinsdu/article/details/6619012作者:hfyinsdu示意图如下:步骤1.Visio工具栏有个“连接线”工具,下图所示2.用这个工具画个曲线,下图所示3.右键单击连线,选择里面的“曲线连接线”,上面图形将变成下面的图形4.里面有5个点,调节这5个点,即可得到曲线。5.箭头的类型(单、双箭头)和样式,可以通过右键,格式-
- 自动驾驶中间件技术对比
小牛蛋
自动驾驶中间件
转载:自动驾驶中间件技术辨析:ROS、Apex.Grace、DDS、AutoSAR和AutoSARAdaptive-CSDN博客在自动驾驶技术的演进中,中间件作为连接硬件、操作系统与应用软件的核心枢纽,其安全性、实时性和可扩展性至关重要。当前市场上主流的中间件技术包括ROS/ROS2、Apex.Grace(Apex.OS)、DDS、AutoSAR(经典平台CP)和AutoSARAdaptive(自
- Go语言中间件(Middleware)
欣欣子的摸爬滚打
实习记录go中间件
首先,什么是Handler?简单来说,goWeb通过http.HandleFunc()来注册默认路由,将传入URL匹配到相应的Handler。它的函数原型为:http.HandleFunc(patternstring,handlerfunc(ResponseWriter,*Request))其中,Handler是我们处理请求和生成返回信息逻辑处理函数。什么是中间件呢?中间件(MiddleWare)
- 学习threejs,dds格式图片文件贴图
2301_81121233
学习贴图pythontornadoflaskscikit-learnplotly
要在Three.js中使用DDS格式的图片文件作为贴图,你需要加载和解析该文件,并将其应用于你的模型或材质。首先,确保你已经引入了DDSLoader.js文件,它是Three.js的一个扩展插件,用于加载和解析DDS格式的图片文件。然后,创建一个新的DDSLoader实例,并使用它来加载DDS图片文件。varloader=newTHREE.DDSLoader();loader.load('path
- Spark Sql 简单校验的实现
小小小小小小小小小小码农
sparksqljava
在网上参考了很多资料,都是要依赖Sparksession,这个需要spark环境,非常不友好,jdk版本也不好控制。不使用Sparksession获取上下文,利用spark和antlr的静态方法使用java实现简单的sparksql的语法以及内置函数的校验。1.spark版本3.2.0org.apache.sparkspark-sql_2.123.2.0org.antlrantlr4-runtim
- 网络神经架构的概念及其实际应用
2301_81121233
网络爬山算法近邻算法霍夫曼树剪枝哈希算法柔性数组
###网络神经架构的概念**网络神经架构(NeuralNetworkArchitecture)**是指用于构建和组织人工神经网络(ArtificialNeuralNetworks,ANN)的结构和方法。这些架构通常由多个层次的节点(神经元)组成,通过模拟人脑神经元之间的连接和信息传递方式,来处理复杂的数据输入并生成相应的输出。网络神经架构通常由以下几个部分组成:1.**输入层(InputLayer
- LORA 微调大模型:从入门到入土
大模型.
人工智能开发语言gptagi架构大模型
在当今人工智能领域,预训练的大模型已经成为推动技术发展的核心力量。然而,在实际项目中,我们往往会发现这些预训练模型虽然强大,但直接就去应用于一些特定的任务时,往往无法完全满足需求。这时,微调就成为了必不可少的一步。而在众多微调方法中,LORA全名(Low-RankAdaptation)以高效性和实用性,逐渐成为了许多开发者训练模型的首选项。作为一名小有经验的咸鱼开发者,我深知在实际项目中高效的进行
- 苹果审核:2.1性能完整性被拒解决
#摩斯先生
iOSios
Guideline2.1-Performance-AppCompleteness(a)SubmissionstoAppReview,includingappsyoumakeavailableforpre-order,shouldbefinalversionswithallnecessarymetadataandfullyfunctionalURLsincluded;placeholdertext,
- AI人工智能中的概率论与统计学原理与Python实战:Python实现概率模型
AI天才研究院
AI实战AI大模型企业级应用开发实战大数据人工智能语言模型AILLMJavaPython架构设计AgentRPA
1.背景介绍随着人工智能技术的不断发展,概率论与统计学在人工智能领域的应用越来越广泛。概率论与统计学是人工智能中的基础知识之一,它们在机器学习、深度学习、自然语言处理等领域都有着重要的作用。本文将介绍概率论与统计学的核心概念、算法原理、具体操作步骤以及Python实现方法,并通过具体代码实例进行详细解释。2.核心概念与联系2.1概率论与统计学的区别概率论是一门数学学科,它研究随机事件发生的可能性。
- 如何使用 Python 实现生成对抗网络
NoABug
python生成对抗网络tensorflow
如何使用Python实现生成对抗网络生成对抗网络(GenerativeAdversarialNetwork,GAN)是一种能够生成高质量、逼真图像的深度学习模型。GAN模型由两个神经网络组成:一个生成器和一个判别器。生成器的任务是以噪声为输入,生成看似真实的图像;而判别器则需要根据输入的图像,判断该图像是真实的还是由生成器生成的。下面我们将通过Python代码来实现一个简单的GAN模型。首先,我们
- GAN模型的Python应用——生成对抗网络
代码编织匠人
python生成对抗网络开发语言
GAN模型的Python应用——生成对抗网络生成对抗网络(GenerativeAdversarialNetwork,GAN)是深度学习中的一种重要模型,已经被广泛应用于图像、文本生成等领域。GAN模型由两个神经网络组成:生成器(Generator)和判别器(Discriminator)。生成器用于生成假样本,判别器用于评估真实性。两个神经网络相互博弈,通过一次次迭代训练,最终生成器可以生成足以骗过
- nodejs+mysql分页查询
m0_67987829
mysql前端node.js
router:(参数page,size)goodsRouter.get("/getList",getGoodsList)controllerasyncgetGoodsList(ctx,next){const{page,size}=ctx.query;//获取查询参数//将page和size转换为数字类型constparsedPage=parseInt(page);constparsedSize=p
- 二值逻辑、三值逻辑到多值逻辑的变迁(含示例)
搏博
人工智能原理算法人工智能机器学习线性代数图像处理数据分析
二值逻辑、三值逻辑到多值逻辑的变迁是一个逻辑体系不断拓展和深化的过程,反映了人们对复杂现象和不确定性问题认识的逐步深入。前文,我们已经探讨过命题逻辑与谓词逻辑,了解了如何用符号语言从浅入深地刻画现实世界。具体可以看我的CSDN文章:人工智能的数学基础之命题逻辑与谓词逻辑(含示例)-CSDN博客人工智能中用到的逻辑可概括地划分为两大类。第一类是经典命题逻辑和一阶谓词逻辑,第二类是泛指除经典逻辑之外的
- 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