- 【Linux】权限详解 权限本质、权限属性、su、sudo提权、chmod\chown\chgrp、文件类别
文章目录一、权限的认识二、linux的权限本质三、linux的用户su指令sudo提权四、linux角色五、文件权限属性六、修改权限的指令操作chmod指令(权限只会验证一次)chown/chgrp指令修改文件权限的八进制方案七、文件类别详解一、权限的认识什么是权限?生活中处处都有权限,本质就是你要做一件事能还是不能的问题,有权限就能做,没权限就算你想做也不能做为什么linux要有权限?首先lin
- 【旅行故事】人际关系@稀土永磁Amy@20220723@上海
稀土永磁Amy
德鲁克谈正确的人际关系:良好的组织精神真正的考验不在于大家能否“和睦相处”;是绩效,而不是一致。“良好的人际关系”如果不是根植于良好的工作绩效所带来的满足感与和谐合理的工作关系,那么其实只是脆弱的人际关系。互相沟通、团队合作、自我发展、培养他人。人和人之间的关系是一场双向奔赴。致敬遇见的那些人和那些事~
- LNMP的安装记录
Jay_MIng
linuxphp运维nginxmysql
Linux可以使用虚拟机挂载使用Centos、Debian、Ubunto等的一些镜像,有条件的话可以使用阿里云的系统,本文使用的就是阿里云的x86_64x86_64x86_64GNU/Linux系统,虚拟机安装不做详解,可以自行搜索,或者有疑问可以提出一起探讨安装PHP1、下载解压wgethttp://cn2.php.net/distributions/php-7.2.8.tar.gztar-xz
- 双检锁(Double-Checked Locking)单例模式
在项目中使用双检锁(Double-CheckedLocking)单例模式来管理JSON格式化处理对象(如`ObjectMapper`在Jackson库中,或`JsonParser`在Gson库中)是一种常见的做法。这种模式确保了对象只被创建一次,同时在多线程环境下也能保证线程安全。下面详细介绍这种模式的实现和优势。###双检锁单例模式的实现双检锁单例模式的核心思想是在创建对象时使用两次检查(“检锁
- CSS面试题及详细答案140道之(101-120)
还是大剑师兰特
前后端面试题css大剑师CSS面试题
《前后端面试题》专栏集合了前后端各个知识模块的面试题,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs,nodejs,mangoDB,MySQL,Linux…。前后端面试题-专栏总目录文章目录一、本文面试题目录101.解释`text-indent`属性的作用。102.如何在CSS中实现响应
- 报错解决:/usr/bin/python^M: bad interpreter: No such file or directory
KimmyDs
linux运维服务器
报错问题分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh.py文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。一般是因为windows行结尾和linux行结尾标识不同造成的。问题解决:1)在windows下转换:利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->
- Filebeat + Logstash + ES进行Nginx日志采集
一个只会喊666的菜比
简易架构图service.png架构图比较简单,日志收集大同小异,这次不添加任何中间服务比如:rediskafka后端只是存储进ES使用的版本jdk-8u161-linux-x64.rpmelasticsearch-6.7.2.rpmlogstash-6.7.2.rpmfilebeat-6.7.2-x86_64.rpm安装比较简单,只用进行rpm-ivh即可,接下来直接贴配置文件:Elastics
- 日更教会我的那些事| 写作里程碑:完成365日更
徐小仙爱修炼
齐帆齐微课打卡第267篇2383字,累计391315字西塞罗在《论老年》中有一段话说的特别漂亮:“晚年的最佳保护铠甲是一段在它之前被悉心度过的生活。一段被用于追求有益的知识、光荣的功绩和高尚举止的生活。过着这种生活的人从青年时代就致力于提升自己,而且将会在晚年收获它们产生的最幸福的果实。”当我读到这段文字的时候直呼这完全契合我内心的价值观。昨天晚上发完文章后,就给我发来了365天日更徽章。没有特别
- 头歌实践JAVA项目开发实战入门--第10阶段【Linux操作系统】
开始更新头歌了!!!有需要的小伙伴自取吧;有什么好的建议也可以评论区留言,大家一起共勉!Linux操作系统一、Linux初体验#!/bin/bash#在以下部分写出完成任务的命令#*********begin*********#cd/ls-a#*********end*********#二、Linux常用命令#!/bin/bash#在以下部分写出完成任务的命令#*********begin****
- docker 安装Home Assistant
铭keny
HomeAssistantdocker容器运维
一、安装docker1、先切换到root用户,先安装一些基本环境:yuminstall-yyum-utilsdevice-mapper-persistent-datalvm22、添加阿里云软件源yum-config-manager--add-repohttp://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3、然后安装Docker
- Windows 11 上的 Android 应用程序的工作方式
QWERTY_18fb
微软的Windows11公告令我们惊讶的是,即将推出的操作系统将在Windows应用程序旁边运行Android应用程序。不幸的是,主题演讲在细节上很简单。这些应用程序会使用仿真吗?是否会涉及Windows现有的Linux支持?我们在主题演讲后不久就得到了答案,这要归功于后续的开发人员谈话,其中详细介绍了一些细节。该功能正式称为“适用于Android的Windows子系统”,它应该会告诉您很多有关其
- 【CMake】使用 CMake 构建 C/C++ 项目的标准流程详解
目录️使用CMake构建C/C++项目的标准流程详解目录1️⃣项目结构约定2️⃣跨平台构建环境准备3️⃣标准构建流程4️⃣构建后目录结构示例Linux/macOSWindows+MinGW5️⃣常用构建操作命令6️⃣跨平台命令对照表7️⃣注意事项与最佳实践8️⃣总结相关文章:️使用CMake构建C/C++项目的标准流程详解目录项目结构约定跨平台构建环境准备标准构建流程构建后目录结构示例常用构建操作
- 【实时Linux实战系列】实时任务与信号处理
望获linux
实时Linux实战系列chromelinux前端开发语言数据库操作系统嵌入式软件
在实时系统中,信号处理是任务间通信和同步的重要机制之一。信号是一种软件中断,用于在任务之间传递异步事件。实时任务需要能够快速响应信号,以确保系统的实时性和可靠性。掌握信号处理技能对于开发者来说至关重要,它可以帮助开发者设计出更加高效和可靠的实时系统。本文将通过实际案例,详细介绍如何在实时Linux中处理信号,包括信号的基本概念、信号处理机制以及如何在实时任务中有效地使用信号。我们将从基本的信号处理
- 机器视觉通用平台之点点距离算法工具类
usingCvBase;usingCWindowTool;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingHalconDotNet;usingNewtonsoft.Json;usingSystem.IO;namespaceCv
- 【HarmonyOS Next之旅】DevEco Studio使用指南(四十二) -> 动态修改编译配置
目录1->通过hook以及插件上下文实现动态配置2->在hvigorfile.ts中通过overrides关键字导出动态配置3->通过hook以及插件上下文动态配置构建配置3.1->修改每个hvigorNode中的build-profile.json53.2->修改module.json5中的配置信息3.3->修改app.json5中的配置信息3.4->修改oh-package.json5中的依赖
- Linux 网络管理命令大全:网卡、端口、路由全掌握
Linux网络管理命令大全:网卡、端口、路由全掌握一.网卡管理(NetworkInterfaces)1.1查看网卡信息1.2启用和禁用网卡1.3配置静态IP二.端口管理2.1查看当前监听的端口2.2检查端口是否被占用2.3开放端口(防火墙配置)三.路由管理3.1查看路由表3.2添加路由四.网络连接诊断4.1测试网络连通性4.2测试某个端口是否开放4.3直接获取网页内容前言肝文不易,点个免费的赞和关
- Linux下如何高效回退到特定层级目录?
EchoPython
Linux下如果我们进入到了一个比较长的路径,比如:/home/alvin/projects/blogdemos/linux-system-programming/thread/home/alvin/projects/blogdemos/diff/home/harry/study/亚洲文化/日本文化/中日交流/影视业/动作片如果我们想要回退到一个特定的父目录,那么我们通常的做法是这样敲:#cd..
- 微信小程序网络数据请求
難釋懷
微信小程序网络小程序
一、前言在网络应用中,获取远程数据是小程序开发中最常见的任务之一。微信小程序提供了强大的网络请求接口——wx.request(),它支持发送HTTP请求,并能处理JSON、文本等多种格式的数据。本文将带你全面了解小程序中网络请求的使用方式,包括:✅wx.request()的基本结构与参数说明✅如何发起GET和POST请求✅设置请求头、传递请求参数✅处理成功和失败回调✅域名白名单配置与HTTPS要求
- 一文掌握oracle19c之离线情况下命令行安装和建库(上)
运维家
声明:本文乃“运维家”原创,转载请注明出处,更多内容请关注公众号“运维家”。主旨oracle作为主流数据库之一,身为IT人员,怎么能不会搭建呢?我不允许哈,下来看看如何一步一步的搭建起来吧。建议收藏,不然一会儿就找不见了,哈哈哈。环境linux环境oracle软件根目录下磁盘空间最少4G软件下载官网下载太慢,而且需要注册,这里直接从公众号“运维家”后台回复“oracle”即可获取软件包,即取即用。
- 运维技术干货 — 不仅是 Linux 运维最佳实践
python算法小白
Linux
附Java/C/C++/机器学习/算法与数据结构/前端/安卓/Python/程序员必读书籍书单大全:书单导航页(点击右侧极客侠栈即可打开个人博客):极客侠栈①【Java】学习之路吐血整理技术书从入门到进阶最全50+本(珍藏版)②【算法数据结构+acm】从入门到进阶吐血整理书单50+本(珍藏版)③【数据库】从入门到进阶必读18本技术书籍网盘吐血整理网盘(珍藏版)④【Web前端】从HTML到JS到AJ
- 医疗AI与融合数据库的整合:挑战、架构与未来展望(下)
Allen_Lyb
数智化教程(第二期)人工智能数据库架构
解决方案:引入融合数据库(Multi-modalDataFusionDB)医院引入一款支持图、向量、表、流的融合数据库(如OracleADW、Milvus+PostgreSQL、或某国产平台),完成了以下集成:数据类型来源系统格式/模型示例内容基因组数据NGS平台VCF/JSON/图EGFR突变、ALK融合等医学影像特征CT影像AI平台向量肿瘤体积、位置、边界清晰度等临床病历HIS/EMR结构化表
- Day17: Spring响应变形记:透视返回值处理的魔法工厂 —— 从POJO到JSON响应的高阶转换术
zhysunny
Springjavaspring
目录一、核心变形车间:HandlerMethodReturnValueHandler生态1.1变形车间流水线架构二、@ResponseBody的魔法解析流水线2.1JSON变形主设备解剖2.2实战调试技巧三、异步处理时空门:DeferredResult与CompletableFuture3.1DeferredResult时间魔法3.2CompletableFuture平行宇宙四、自定义变形设备:打
- Deepin 与 Ubuntu 系统N卡登录卡死的解决办法
蓝色_fea0
DeepinLinux介绍深度公司介绍DeepinLinux是一款国产的Linux系统,桌面效果特别的炫酷,而且对Windows上的大多数软件都支持(游戏除外,游戏是不可能游戏的)下面贴几张装好了Deepin系统的桌面截图深度截图_选择区域_20180921092828.png深度截图_20180921002524.png深度截图_选择区域_20180921092741.png我的电脑是I卡集显加
- 原来做得到和做不到,只在一念之间
墨蝶黛霁
生活,不是生存,不是两点一线,不是周而复始。生活,甚至不是一个态度,而是一种坚持。人应该树立目标,否则你的精力会白白浪费。我每天有三个打卡,强国学习打卡,早教打卡,千字文日更打卡。原本很准时的每天打卡,因为宝宝生病,最近忙的我精疲力竭,再遇上生理期,更是难受。于是每天打卡一拖再拖。从早上到晚上,心里惦念着打卡的那些事,就是不想行动,在和内心的自己战斗,在和惰性斗争。人一旦开始懒惰,真的一发不可收拾
- Libevent(3)之使用教程(2)创建事件
Once-Day
#Linux实践记录#十年代码训练开发语言Clibevent
Libevent(3)之使用教程(2)创建事件Author:OnceDayDate:2025年6月29日一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦…漫漫长路,有人对你微笑过嘛…本文档翻译于:Fastportablenon-blockingnetworkprogrammingwithLibevent全系列文章可参考专栏:十年代码训练_Once-Day的博客-C
- ls总结
黑客不黑撒
linuxls列出目录下所有文件数量http://blog.hehehehehe.cn/a/12311.htm查看统计当前目录下文件的个数,包括子目录里的。ls-lR|grep"^-"|wc-lLinux下查看某个目录下的文件、或文件夹个数用到3个命令:ls列目录、用grep过虑、再用wc统计。举例说明:1、查看统计当前目录下文件的个数ls-l|grep"^-"|wc-l2、查看统计当前目录下文件
- cx_Oracle.DatabaseError: Error while trying to retrieve text for error ORA-01804
智海观潮
Oracleoraclepython
问题:使用cx_Oracle连接oracle时报错cx_Oracle.DatabaseError:ErrorwhiletryingtoretrievetextforerrorORA-01804samplecode:importcx_Oracleconn=cx_Oracle.connect(user,pwd,self.ois_tns)解决:排查服务器执行该代码的Linux用户下的.bash_prof
- 【踩坑】Docker deamon.json 文件修改之后重启不生效
ku_code_ku
编程踩的坑docker容器运维
1.系统环境介绍ubuntu22.04_amddocker27.012.背景介绍最近在安装Docker,第一次尝试从官网上的教程上面安装Docker,很遗憾被墙了。下面是官网安装教程地址(避免入坑)https://docs.docker.com/engine/install/ubuntu/#install-using-the-repositoryhttps://docs.docker.com/en
- vue2 面试题及详细答案150道(121 - 130)
《前后端面试题》专栏集合了前后端各个知识模块的面试题,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs,nodejs,mangoDB,MySQL,Linux…。前后端面试题-专栏总目录文章目录一、本文面试题目录121.Vue2中如何实现组件的动态样式绑定?122.Vue2中如何处理跨域请求
- Hyperledger Fabric:构建企业区块链网络的实践指南
boyedu
区块链fabric区块链网络
一、环境准备与工具安装1.必要工具安装Docker与DockerCompose:用于容器化部署,确保环境一致性。Go语言环境:链码开发所需,建议版本1.10+。Node.js与npm:客户端应用开发依赖,建议版本6.x+。Git:版本控制与代码管理。cURL:命令行测试工具。2.获取Fabric资源克隆官方仓库:bashgitclonehttps://github.com/hyperledger/
- 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