- 《如何建立知识图谱?这些资源和工具助你一臂之力》
知识图谱:解锁高效学习与成长的密码[]()在信息爆炸的时代,我们每天都会接触到海量的知识。从书本、网络文章到各类课程,知识的获取变得前所未有的容易。但你是否有过这样的困扰:学了很多知识,却感觉它们杂乱无章,在需要的时候无法快速调用?这时候,构建个人知识图谱就显得尤为重要。它就像一个私人知识管家,帮你将零散的知识整理得井井有条,让知识真正为你所用,助力你在学习和成长的道路上一路开挂。接下来,就让我们
- YashanDB初始数据库
数据库
本文内容来自YashanDB官网,原文内容请见https://doc.yashandb.com/yashandb/23.3/zh/%E5%AE%89%E8%A3%85%...YashanDB产品安装创建的初始数据库信息如下:监听端口:如未在安装过程中进行调整,则默认为1688。用户:安装过程创建了sales样例用户,密码为sales,用于YashanDB的学习和验证;除此之外系统中无任何普通用户。
- Python将json格式数据存储到Mysql数据库
代码轨迹
Pythonpython数据库json
Python操作Mysql数据库1.安装pipinstallmysql-connector-python2.数据库插入json格式数据importmysql.connectorimportjsonfromdatetimeimportdatetime#创建数据库连接db=mysql.connector.connect( host="localhost", #MySQL服务器地址 user="ro
- 从MIXED模式到主从一致性:深入解析Binlog格式的智能切换机制
引言:Binlog的核心价值与格式选择难题在MySQL的数据库生态中,Binlog(二进制日志)是数据复制、增量备份和灾难恢复的核心组件。其记录格式(STATEMENT、ROW、MIXED)直接决定了主从同步的行为逻辑。其中,MIXED模式的设计初衷是为了在“可读性”和“数据一致性”之间寻找平衡,但它的动态切换机制常常成为开发者困惑的源头。本文将通过实际场景分析,结合MySQL内核逻辑,揭示MIX
- 影院管理系统(用户端)的详细流程设计
Caps_Xxlu
c++qt
影院管理系统流程设计一、用户模块1、注册登录手机号注册/邮箱注册密码登录/验证码登录2、电影查询按电影名称搜索按上映时间筛选按评分排序按类型(动作、喜剧、爱情等)筛选3、场次查询按影院查询场次按日期查询场次按电影查询场次二、电影预订1、预订前准备1.确认观影人信息支持添加多个观影人,录入姓名、联系方式等自动保存常用观影人信息,方便下次选择2.选择影院根据用户定位推荐附近影院提供搜索功能,按影院名称
- mybatis-plus和mapper.xml混合传参
weixin_li152********
mybatisxmljava
xml,这是一个复杂的统计sql(部份删减)select*from(selecthost,host_sec,count(*)numsfromtableandtype=#{type}GROUPBY`host`,host_sec)a${ew.customSqlSegment}daoListanalysis(@Param(Constants.WRAPPER)Wrapperwrapper,@Param("
- Qmqtt库5.10:MQTT协议的Qt集成实践
鄧寜
本文还有配套的精品资源,点击获取简介:Qmqtt是一个为Qt框架设计的开源库,专门用于实现轻量级的MQTT协议,适用于物联网、移动应用和资源受限设备之间的通信。此库简化了MQTT连接、订阅、发布的操作,具有丰富的API接口。在5.10版本中,提供了核心的MQTT客户端功能类QmqttClient、简单的MQTT服务器端实现QmqttServer、主题QmqttTopic、连接管理、安全与认证、消息
- Docker安装Mysql8.0
Kevin-Qian
环境搭建mysql
Window10下安装Mysql8.01、下载并安装docker安装docker过程中可能需要更行wsl,根据提示执行wsl--update命令。2、拉取mysql镜像dockerpullmysql:8.0.203、修改mysql.cnf[mysqld]user=mysqlsocket=/var/run/mysqld/mysqld.sockdefault_authentication_plugin
- 若依前后端不分离登录大致代码
m0_71908411
okhttp
前端:地址:ruoyi-ui/src/views/login.vue中的方法下面这个就是登陆方法,看我注解。this.$store.dispatch是调用vuex中actions中的方法,是vuex相关知识。handleLogin(){this.$refs.loginForm.validate(valid=>{if(valid){this.loading=true;//判断是否勾选记住密码的操作i
- 华为云数据库GaussDB(for Cassandra)揭秘:内存异常增长的排查经历
科技说
jvmjava开发语言
内存异常增长的排查经历背景介绍华为云数据库GaussDB(forCassandra)是一款基于计算存储分离架构,兼容Cassandra生态的云原生NoSQL数据库;它依靠共享存储池实现了强一致,保证数据的安全可靠。核心特点是:存算分离、低成本、高性能。问题描述GaussDB(forCassandra)自研架构下遇到一些挑战性问题,比如cpu过高,内存泄漏,内存异常增长,时延高等问题,这些也都是开发
- Redis雪崩、穿透、击穿及其解决方案
Good Note
redis数据库缓存开发语言golang面试SQL
大家好,这里是编程Cookbook,关注公众号「编程Cookbook」,获取更多面试资料。本文先简要介绍为什么需要使用Redis,以及过期键的删除策略,进而详细介绍Redis雪崩、穿透、击穿的发生场景和解决方案。文章目录前情提要为什么使用redis?Redis的过期键删除策略数据读取流程三种问题及解决方案1.缓存雪崩2.缓存穿透3.缓存击穿对比总结历史文章MySQL数据库Redis前情提要关注公众
- MySQL数据库笔记——主从复制
Good Note
MySQL数据库笔记数据库mysql笔记sql数据库架构
大家好,这里是编程Cookbook,关注公众号「编程Cookbook」,获取更多面试资料。本文详细介绍MySQL的主从复制,从原理到配置再到同步过程。文章目录简介核心组件主从复制的原理作用主从复制的线程模型主从复制的模式形式一主一从一主多从多主一从双主复制级联复制复制的方式基于语句的逻辑复制(Statement-BasedReplication,SBR)基于行的物理复制(Row-BasedRepl
- linux命令十分钟速通,看看你几个没有掌握
平凡灵感码头
linux学习linux
1.useradd功能:创建新用户账户常用参数:-m:创建用户的家目录(如/home/username)-s/bin/bash:指定用户的默认Shell-g:指定用户的主组-G:指定用户的附加组案例:sudo useradd -m -s /bin/bash -G developersjohn2.passwd功能:修改用户密码常用参数:-l:锁定用户账户-u:解锁用户账户-d:删除用户密码(使其无密
- 安装mysql
大霞上仙
数据库mysql数据库
1、安装数据库下载链接https://downloads.mysql.com/archives/community/下载zip安装包,解压到某个路径下,将bin文件夹添加到系统环境变量。然后终端输入指令mysql--version验证2、初始化数据库打开命令提示符(以管理员身份)。导航到你的MySQL目录的bin文件夹(例如cdC:\mysql\bin)。basedir路径下新建my.ini文件中
- 基于Vue&Axios制作音乐播放器(bilibili黑马程序员Vue入门学习记录)
xxxrsongseven
前端javascriptvuevue.js前端css
目录使用Vue制作一个音乐播放器前言VueVue导入Vue挂载Vue指令v-textv-htmlv-onv-showv-ifv-bindv-forv-modelaxiosaxios导入axios使用音乐网站代码HTMLCSSJS使用Vue制作一个音乐播放器前言第一次写,如有不足请指正!音乐播放器效果展示音乐播放器(密码:He371226)(域名出了点问题,临时使用)学习链接:黑马程序员vue前端基
- Celia智能助手2.0架构演进与性能突破
大霸王龙
系统分析业务架构python人工智能开发语言prompt系统分析师
Celia智能助手2.0架构演进与性能突破——多模态AI系统的工程化实践与创新2025-03-05作者:智能系统架构师一、架构演进路线1.1架构对比分析问题问题问题方案方案方案1.0版本单点CLIP服务MySQL全量存储静态资源分配2.0版本CLIP模型蒸馏向量分层存储动态资源调度1.2性能基准测试指标V1.0V2.0提升幅度QPS8502200158%检索延迟(P99)1.2s0.35s70%存
- MySQL JOIN 与子查询深度对比:原理、性能陷阱与优化策略
Isaac_Gao
数据库mysql数据库MySQLJOIN性能MySQL子查询优化JOIN和子查询的区别EXPLAIN执行计划解读
1.基础概念:JOIN与子查询的本质区别1.1JOIN的核心作用目标:直接关联两个表的行,通过匹配条件(如ON或USING)合并数据。典型场景:需要同时获取两个表的字段(如SELECTA.col,B.colFROMAJOINB)。执行逻辑:数据库一次性处理两表关系,优化器可能选择Nested-LoopJoin、HashJoin或MergeJoin算法。1.2子查询的两种类型非相关子查询(独立子查询
- nexus3.24无法登录 默认密码
tkgup
业务开发常见问题解决nexusmaven私服nexus2nexus3安装与说明
nexus3.24的初使化密码不再是admin123而是生成在nexus-3.24.0\sonatype-work\nexus3下的admin.password中用文本工具打开就能看到密码注:打开后文件就没了,进去后按提示修改密码
- win10 账户密码忘记的解决办法
tkgup
常见问题解决方案
一、能用pin或指纹等非密码登录administrator账户到桌面win+r,输入netplwiz命令打开。若只有一个账户,则创建一个新的帐户或者本地帐户。选择一个知道密码的user帐户——属性——组成员——管理员——应用确定后返回桌面,按提示登录新设的管理员帐户。再次win+r,netplwiz。即可对忘记密码的本地帐户进行更改密码。二、若不小心取消管理员后造成电脑无administrator
- 基于 Flink CDC YAML 的 MySQL 到 Kafka 流式数据集成
flink大数据实时计算
这篇教程将展示如何基于FlinkCDCYAML快速构建MySQL到Kafka的流式数据集成作业,包含整库同步、表结构变更同步的演示和特色功能的介绍。本教程的演示都将在FlinkCDCCLI中进行,无需一行Java/Scala代码,也无需安装IDE。准备阶段准备FlinkStandalone集群下载Flink1.19.2,解压后得到flink-1.19.2目录。使用下面的命令跳转至Flink目录下,
- Python AES 加密和解密(qbit)
pythonaes加密解密
前言AES有多种加密模式,本文选取了最常用的CBC模式CipherBlockChaining密码块链模式技术栈Python3.11.8cryptography43.0.3loguru0.7.2示例代码导入库#encoding:utf-8#author:qbit#date:2024-10-28#summary:测试AES的加密和解密importosimportrandomimportstringfr
- 【ORACLE】ORACLE19C在19.13版本前的一个严重BUG-24761824
DarkAthena
oracle数据库oraclebug数据库
背景最近在某客户的ORACLE开发环境(oracle19.10)中,发现一个非常奇怪情况,开发人员反馈,有一条SQL,查询了两个sum函数作为两个字段,selectsum(c1),sum(c2)from...当两个sum一起出现时,第一个sum的结果不对,仅仅只是把select里第二个sum表达式整个删掉,此时第一个sum的结果就对了。从执行计划中可以明显看到两个sum一起select的时候,优化
- GitLab 密钥详解:如何安全地使用 SSH 密钥进行身份验证
Crazy learner
Linux基本命令gitlab安全ssh
目录一、什么是GitLabSSH密钥?二、为什么要使用SSH密钥?三、如何生成SSH密钥?1.Linux/macOS2.Windows四、将公钥添加到GitLab五、配置SSH客户端六、常见问题及解决方案七、总结GitLab是一个功能强大的Git仓库管理平台,它支持通过SSH密钥进行身份验证,提供了比传统的用户名和密码登录方式更安全的认证机制。本文将深入探讨GitLab的SSH密钥,包括如何生成、
- Databend 产品月报(2025年2月)
数据库
很高兴为您带来Databend2025年2月的最新更新、新功能和改进!我们希望这些增强功能对您有所帮助,并期待您的反馈。从MySQL迁移到DatabendDatabend推荐使用db-archiver进行MySQL批量迁移,使用FlinkCDC进行实时变更数据捕获(CDC)迁移。教程已更新:使用db-archiver从MySQL迁移使用FlinkCDC从MySQL迁移设置会话标签现在,您可以为会话
- 基于 MySQL 8.0 细粒度授权:单独授予 KILL 权限的优雅解决方案
数据库mysql
基于MySQL8.0细粒度授权:单独授予KILL权限的优雅解决方案一、引言作为一名数据库从业者,我在日常工作中经常会遇到一个棘手的问题:如何在保证安全的前提下,让业务团队拥有足够的权限去管理数据库执行的SQL,尤其是终止那些失控的慢查询或异常线程?这个问题看似简单,却牵涉到权限设计、安全合规以及数据库稳定性等多方面的权衡。今天,我们就来聊聊MySQL8.0如何通过权限体系的革新,特别是对KILL权
- Node.js连接Mysql
月落玄衣
node.js1mysqlnode.jsmysqljavascript开发语言后端
node.js连接mysql简单步骤,如下:安装mysql驱动:npminstallmysql连接数据库://请求mysqlvarmysql=require('mysql');//设置连接信息varconnection=mysql.createConnection({host:'localhost',user:'root',password:'123456',port:'3306',databas
- 使用Node.js的MySQL连接池进行数据库编程
PixelLogic
数据库node.jsmysql编程
在Node.js应用程序中,与数据库进行交互是非常常见的任务。为了提高性能和可伸缩性,使用连接池来管理数据库连接是一个明智的选择。本文将介绍如何在Node.js中使用MySQL连接池进行数据库编程,并提供相应的源代码示例。步骤1:安装MySQL模块首先,我们需要安装Node.js的MySQL模块。可以使用npm(Node.js软件包管理器)执行以下命令来安装它:npminstallmysql步骤2
- SQL注入攻击
Wlq0415
数据库服务器运维
SQL注入攻击是指攻击者通过在输入字段中插入恶意SQL代码,以此来影响应用程序与数据库之间的交互,进而非法获取或篡改数据库中的数据。这种攻击利用了应用程序对用户输入缺乏充分验证或过滤的情况。抵御SQL注入攻击的两种常见方式包括:使用参数化查询(PreparedStatements):参数化查询是一种编程技术,它将SQL语句和用户输入分开处理。这样可以确保用户输入的数据仅被视为数据,而不是SQL代码
- MySql InnoDB 存储引擎表优化
windwant
后端码事mysqladb数据库
一、InnoDB表存储优化1、OPTIMIZETABLE适时的使用OPTIMIZETABLE语句来重组表(表数据到达一定的量,或者有了较大的数据增长之后),压缩浪费的表空间。这是在其它优化技术不可用的情况下最直接的方法。OPTIMIZETABLE语句通过拷贝表数据并重建表索引,使得索引数据更加紧凑,减少空间碎片。语句的执行效果会因表的不同而不同。过大的表或者过大的索引及初次添加大量数据的情况下都会
- MySQL的 int , bigint字段与java的 int , long 字段反射/映射时,产生的问题
劲雨波
MySQLJavamavenjavamysql开发语言
针对java连接mysql数据库映射时产生的问题java.lang.IllegalArgumentException:argumenttypemismatchatsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)总结了一下是字段类型不匹配的问题,整理了一下表格intMySQL无符号(unsigned)Javaint原本(未选择无符号
- 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