- 非80/443端口验证的IP SSL证书
https
DunTrust提供的IP地址证书,除了支持80或者443端口验证外,还支持其他端口验证。对于80或者443端口不能开放的单位来说是个不错的选择IP地址SSL证书,也被称为IPSSL证书,是一种特殊的SSL证书,用于保护IP地址,并在安装后起到加密作用,确保通过该IP地址进行的通信内容的安全性。一.常规IP地址SSL证书市面上常见的证书多为域名SSL证书,一般以域名为申请主题,只有少部分服务商支持
- 合并HEX文件
boringhex.top
MCU嵌入式
在上一篇文章深入解析IntelHEX文件格式中,我们详细介绍了IntelHEX文件的格式和记录类型。在嵌入式系统开发中,IntelHEX文件是一种常见的二进制数据表示格式,通常用于存储和传输固件。在某些情况下,我们可能需要将多个HEX文件合并为一个文件,例如将多个模块的代码合并为一个完整的固件。本文将详细介绍如何合并IntelHEX文件,并提供一个基于Rust的简单实现。合并HEX文件的场景在某些
- tableau报表第三方免登陆配置
时光不负追梦人
tableau报表java免登陆
获取Tableau凭证,实现报表在第三方的免登陆。分为三步第一步:在Tableau服务器上命令行设置授信白名单配置白名单cdC:\ProgramFiles\Tableau\TableauServer\bintabadminstop//可以配置多个IP,也可以只配置一个;多个时用英文逗号分开且增加一空格tabadminsetwgserver.trusted_hosts"10.88.233.64,10
- 安装cargo-generate各种坑【mac + wasm + rust 环境搭建】
俺足
前端rustWebAssembly
cargoinstallcargo-generate如果报openssl错误千万别再去装了,各种坑,这个cargo-generate可以手动下载安装的。先贴上我的报错信息:runpkg_configfail:"`\"pkg-config\"\"--libs\"\"--cflags\"\"openssl\"`didnotexitsuccessfully:exitstatus:1\nerror:cou
- Ruff:极速的Python代码检查工具
python二级小助手
python开发语言
随着开发工具的不断进步,Python社区终于迎来了一个突破性的新工具——Ruff。这是一个由Rust编写的Python代码检查和格式化工具,致力于比现有的工具(如Flake8、Black)快10到100倍,并且集成了更多功能。无论你是Python开发者,还是开源项目的维护者,Ruff都能带给你惊人的提升。Ruff是什么?Ruff是一个极快的Python代码检查器和格式化工具,使用Rust语言编写,
- 如何在rust中解析 windows 的 lnk文件(快捷方式)
周万宁.FoBJ
rustwindows开发语言
一、从标题二开始看这些天在使用rust写一个pc端应用程序,需要解析lnk文件获取lnk的图标以及原程序地址,之前并没有过pc端应用程序开发的经验,所以在广大的互联网上游荡了两天。额今天找到了这个库lnk_parse很好的解决标题的这个问题。二、文档及github地址您可以在以下链接找到他:lib.rs(推荐):https://lib.rs/crates/lnk_parsergithub(推荐):
- 给求职者的建议:软件工程师
追寻向上
pythonjavac语言软件工程
一、编程基础:构建核心能力语言选择与学习首推Python:语法简洁,适合入门。推荐书籍《Python编程:从入门到实践》,重点掌握列表推导、装饰器、文件操作。Java/C++进阶:理解内存管理(如JVM垃圾回收)、多线程编程(synchronized关键字)。推荐《Java核心技术卷Ⅰ》。辅助语言:JavaScript(必学)、Go或Rust(扩展视野)。数据结构与算法基础必刷:数组、链表、哈希表
- C语言基础系列【20】内存管理
程序喵大人
C语言基础系列c语言开发语言c++后端面试
博主介绍:程序喵大人35-资深C/C++/Rust/Android/iOS客户端开发10年大厂工作经验嵌入式/人工智能/自动驾驶/音视频/游戏开发入门级选手《C++20高级编程》《C++23高级编程》等多本书籍著译者更多原创精品文章,首发gzh,见文末记得订阅专栏,以防走丢C++基础系列专栏C语言基础系列C++大佬养成攻略在C++编程中,内存管理是一个至关重要的概念。要深入理解内存管理,我们肯定要
- RustDesk开源远程桌面工具部署【图文详解】
岚天start
开源云原生ruskdesk桌面远程远程
目录1.服务端安装1.1服务器环境1.2安装docker1.3配置docker加速器1.4安装docker-compose2.客户端安装3.映射或防火墙配置4.客户端配置1.服务端安装1.1服务器环境[root@test~]#cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)[root@test~]#uname-aLinuxtest3.10
- Vid ---基于Rust的高性能视频关键帧提取工具架构解析
Foodie豪哥
rust音视频架构ffmpeg
ShowCaseFastRunvid-iD:/cursor一、工具定位与核心价值解决的问题:海量监控视频的快速关键帧回溯教学视频的内容摘要生成视频素材库的智能索引构建技术亮点:多级并行处理架构FFmpeg硬件加速集成自动化目录结构管理⚡细粒度资源控制二、核心架构设计1.CLI控制层#[derive(Parser,Debug)]#[command(version,about="视频关键帧批量提取工具
- 从 Faith 与 Belief 的语义与语境辨析中解析其宗教哲学内涵
斐夷所非
cognitivescienceFaithvsBelief
注:本文是对《信仰与理性:信仰的认识论》中“Part5.Faithasbelieff”的“咬文嚼字”的语义辨析。第二篇涉及bible,不看religion,只看语义解析。机翻,未校。MainDifference–FaithvsBeliefJuly10,2016byHasaFaithandbeliefaretwowordsweoftenassociatewithtrustandconfidence.
- 开源远程桌面软件
௸ೄ流年ೄ೨
开源linux运维
RustDesk开源远程桌面软件许可证:GPLv3开发语言:Rust官网:https://rustdesk.com/zh/开源远程桌面软件,开箱即用,无需任何配置。完全掌控数据,不用担心安全问题。可以使用官方注册/中继服务器,或者自己设置,亦或者开发你自己的版本。主要特性:1、自定义画面质量2、加密直连,先尝试打洞直连,不行再由服务器转发3、内置文件传输和TCP隧道功能4、RDP连接5、支持自建中
- The Rust Programming Language 学习 (一)
niandb
rust学习c++linuxc语言
说明关于参考的教程TheRustProgrammingLanguage是英文版本的由于本人英语水平相当的有限,所以我们这里直接去看翻译好的版本Rust程序设计语言.下面我们将两个地址全部都贴出来.TheRustProgrammingLanguageRust程序设计语言Rust官方文档中文教程教程中提到的一些前置翻译已参照最新的Rust1.58.0版及开发版进行调整,这是目前网上最新的中文版本,最后
- 国产国密SSL证书自主品牌有哪些(权威)
GDCA SSL证书
ssl网络协议网络
1、数安时代(GDCA)-国内一家通过Webtrust认证的权威CA证书机构,具有国际电子认证服务能力,属于Adobe的认证文件服务和批准信任列表的成员;国际CA/BrowserForum成员。且拥有国家工信部颁发的《电子认证服务许可证》、国家密码局颁发的《电子认证服务密码使用许可证》。数安时代的OCSP、CRL列表、时间戳服务器都部署在国内,且校验证书等速度优于国外品牌。GDCA数安时代,国产品
- Sectigo SSL证书
https
DunTrustSectigoSSL证书以其强大的加密技术、广泛的兼容性、超高的性价比、简化的管理流程以及灵活的域名保护等特点,成为众多网站保护数据传输安全和提升信任度的首选解决方案。一、证书类型Sectigo提供多种类型的SSL证书,包括但不限于:域名验证(DV)SSL证书:适合个人网站或博客,只需证明对域名的控制权。申请流程简单快捷,通常可以在几分钟内颁发证书。企业验证(OV)SSL证书:适合
- 【踩坑日记15】safetensors_rust.SafetensorError: Error while deserializing header: HeaderTooLarge
longii11
开发语言后端
问题描述加载stabilityai/stable-diffusion-xl-base-1.0模型时,出现问题。Errorwhiledeserializingheader:HeaderTooLargeFile"/home/XXX/code/dreambooth_lora/train_dreambooth_lora_sdxl_advanced.py",line1278,inmaintext_encod
- 为什么C/C++能一直排在编程语言前列?揭秘“常青树”的底层王者逻辑 [特殊字符]
sveewg
IT前沿c++开发语言pythonjavac语言c#r语言
目录一、底层掌控力:代码与硬件的“零距离对话”二、生态帝国:万亿代码筑起的“数字罗马”️三、教育霸权:程序员的能力“试金石”⚔️四、争议与进化:在安全与性能间走钢丝五、未来预言:C/C++的“无形帝国”“用C++写代码,就像用手术刀雕刻芯片!”在Python称霸AI、Rust狂揽安全红利的今天,C/C++仍以底层统治力和生态霸权稳居编程语言金字塔顶端。TIOBE2025年2月榜单显示,C++以11
- 【CXX】5.1 extern “Rust“
Source.Liu
CXXrustQTCXX
#[cxx::bridge]modffi{extern"Rust"{//这里声明暴露给C++的Rust类型和函数}}extern"Rust"部分是CXX桥接模块中用于声明暴露给C++的Rust类型和函数签名的部分。CXX代码生成器会根据你的extern"Rust"部分生成一个C++头文件,其中包含相应的C++声明。生成的头文件路径与包含桥接的Rust源文件路径相同,只是文件扩展名变为.rs.h。一
- 【CXX】4.4 其他构建系统
Source.Liu
CXXrustCXXQT
你需要至少完成以下三件事:生成CXX生成的C++绑定代码。编译生成的C++代码。将生成的目标文件与你的其他C++和Rust目标文件链接在一起。并非所有构建系统都是平等的。如果你希望使用90年代的构建系统,尤其是如果你希望覆盖2个或更多构建系统(如automake+cargo)的限制并期望同时解决它们,那么请注意你的期望值要相应调整。生成代码当#[cxx::bridge]过程宏展开时,CXX的Rus
- Rust编程实战:手把手教你打造命令行文本搜索工具!
今天也想MK代码
rust编程实战rustjava算法
知识点结构体声明和方法模块化文件处理测试模块异常处理功能通过命令行的形式触发,根据用户提供的关键字在文本检索。执行命令如下:cargorun--keywordfilepath实现细节拆分获取执行参数读取文本内容检索关键字实现创建项目cargonewminigrep实现参数处理在src目录下新建config.rs文件pubstructConfig{pubquery:String,pubfile_pa
- rust笔记13:trait对象
shanzhizi
rustrust笔记开发语言
在Rust中,trait对象是一种实现动态分发(dynamicdispatch)的机制,允许你在运行时处理实现了某个trait的不同类型。Trait对象是Rust中实现多态性的重要工具之一,特别是在需要处理多种类型但又不确定具体类型的情况下。在有继承的语言中,可以通过类继承实现多态,rust没有继承,trait对象便是为了完成类似特性。1.什么是Trait对象?Trait对象是一个指向实现了某个t
- 基于 Rust 与 GBT32960 规范的编解码层
编码浪子
Rust学习rustjava开发语言
根据架构设计,实现编解码层的代码设计Cargo.toml加入二进制序列化支持#序列化支持...bincode="1.3"#添加二进制序列化支持bytes-utils="0.1"#添加字节处理工具开始编码错误处理(error.rs):定义了编解码过程中可能遇到的错误类型,使用枚举定义usethiserror::Error;#[derive(Error,Debug)]pubenumCodecError
- 【CXX】5 桥接模块参考
Source.Liu
CXXrustCXXQT
第1章篇(核心概念)介绍了CXX用于表示语言边界的高级模型。本篇在此基础上,详细记录#[cxx::bridge]的语法和功能。extern“Rust”暴露不透明的Rust类型、Rust函数、Rust方法给C++。包含生命周期的函数。extern“C++”绑定不透明的C++类型、C++函数、C++成员函数。在多个桥接模块或不同crate之间共享不透明类型定义。在CXX桥接中使用bindgen生成的数
- rust编程实战:实现3d粒子渲染wasm
今天也想MK代码
rust编程实战rustwasm开发语言
源码纯js实现fps:wasm实现通过对比可以看出来wasm实现的计算比纯js刷新相对稳定。
- 【学Rust写CAD】7 rust 常量泛型
Source.Liu
学Rust写CADrust后端
Rust的常量泛型(ConstGenerics)允许你在泛型中使用常量值作为参数。这一特性在Rust1.51版本中稳定。通过常量泛型,你可以编写更灵活和通用的代码,尤其是在处理数组等固定大小的数据结构时。一、基本用法常量泛型允许你将常量值作为泛型参数传递。常量的类型必须是const泛型参数所支持的类型,通常是整数类型(如usize、i32等)。structArray{data:[T;N],}imp
- 学Rust写CAD】9 变量类
Source.Liu
学Rust写CADrust
Variable结构体,封装了一个泛型值T,其中T必须满足FloatTypetrait的约束。FloatTypetrait确保T实现了必要的算术操作(Mul、Add、Neg)以及Copytrait。还为Variable实现了各种算术操作,并提供了单元测试来验证这些操作的正确性。一、代码/**变量结构体Variable*该结构体泛型参数T需满足FloatType约束*/usestd::ops::{M
- UI自动化测试:playwright工具(一):python环境下安装、UI录制使用(需要些代码能力)
冷凝娇
#python自动化Pythonpythonplaywright自动化测试UI自动化测试
一、python环境下安装playwright工具1.安装playwright库pipinstallplaywright-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.com#至于镜像源,可以选,也可不选:#阿里云http://mirrors.aliyun.com/pypi/simple/#中国科技大学https://pypi.m
- Github 2024-09-30 开源项目周报 Top15
老孙正经胡说
github开源Github趋势分析开源项目PythonGolang
根据GithubTrendings的统计,本周(2024-09-30统计)共有15个项目上榜。根据开发语言中项目的数量,汇总情况如下:开发语言项目数量Python项目7JupyterNotebook项目2Dart项目1Ruby项目1HTML项目1C#项目1TypeScript项目1Rust项目1非开发语言项目1AutoGPT:人工智能革命的先锋创建周期:486天开发语言:Python协议类型:MI
- Rust入门学习笔记
凌云行者
Rustrust入门笔记
Rust简介特点即安全又高效,并发是一种静态编译语言,要在写代码时声明数据类型擅长领域高性能WebServiceWebAssembly命令行工具网络编程嵌入式设备系统编程操作更新rust:rustupupdate卸载rust:rustupselfuninstall查看rust版本:rustc--version查看本地文档:rustupdoc用vscode打开某项目:进入项目目录后code.文件名后
- rust建深海_使用 Rust 构建个人博客(1) - Warp 后端框架
Zeldovich Yakov
rust建深海
需求背景一个朋友买了一个云主机(就是300元3年的那种)云主机配置是:CPU:vCPU2内存:2G硬盘:40G带宽:1M公网IP:1个预装的系统是:Windows2008R2这台机器上,跑了一些他自己的东西,虽然机器整体性能不咋的,但是总觉得还可以再“挖掘”一些性能(挤一挤总是会有的),所以还在跑一个自己的博客。技术选型最初他问我的时候,我就让他用WAMP+WordPress,方便、省事儿,而且W
- 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