- Flutter CupertinoNavigationBar iOS 风格导航栏的组件
早起的年轻人
Flutter项目开发全套教程flutterios
CupertinoNavigationBar是Flutter中用于创建具有iOS风格导航栏的组件,它提供了类似iOS应用中导航栏的外观和交互效果。下面将详细介绍它的相关信息和具体用法。特点iOS风格:具有iOS系统原生导航栏的外观和动画效果,包括标题样式、按钮交互等。简单易用:可以方便地设置标题、左右两侧的操作按钮等。构造函数及常用参数CupertinoNavigationBar({Key?key
- Android 开发必备知识点整理
阿里大厂_RMI
androidjava算法
ArrayMap1.基于两个数组实现,一个存放hash;一个存放键值对。扩容的时候只需要数组拷贝,不需要重建哈希表2.内存利用率高3.不适合存大量数据,因为会对key进行二分法查找(1000以下)SparseArray1.基于两个数组实现,int做key2.内存利用率高3.不适合存大量数据,因为会对key进行二分法查找(1000以下)volatile关键字只能用来修饰变量,适用修饰可能被多线程同时
- 提升职场沟通能力的七大秘诀
贵州数擎科技有限公司
面试跳槽简历
大家好!我是[数擎AI],一位热爱探索新技术的前端开发者,在这里分享前端和Web3D、AI技术的干货与实战经验。如果你对技术有热情,欢迎关注我的文章,我们一起成长、进步!开发领域:前端开发|AI应用|Web3D|元宇宙技术栈:JavaScript、React、ThreeJs、WebGL、Go经验经验:6年+前端开发经验,专注于图形渲染和AI技术开源项目:智简未来、晓智元宇宙、数字孪生引擎在职场中,
- 使用php调用openai api
智想天开
AI技术phpchatgpt
公众号地址:使用php调用openaiapi更多内容请关注公众号:智想天开1、设置openai的apikey$openai_api_key='sk-xxxxxx';2、设置调用地址,我们以chatcompletions为例。$url='https://api.openai.com/v1/chat/completions';完整的地址,可以参考openai文档中的apiendpoint:https:
- unity导表excel->lua优化
MyIsJake
unityunitylua游戏引擎
转自zblade-博客园发现一位大佬的基地,特此转载一篇做个标记,以防以后找不到了。这是我最早而且持续时间最长的一个优化工作。在我们的游戏中,策划会有大量的配置表,全都配置在excel表中,通过编写导表工具,可以将excel表导出为对应的lua表,用于在游戏中进行lua表的加载和查找。我总结一下优化的几个节点:1、最初版本的导表最初版本的lua导表,是将excel中对应的key-value值逐一导
- python:sqlalchemy-快速开始
番茄牛腩不吃番茄
sqlalchemy数据库mysqlpythonsqlalchemy
#一、声明模型首先我们定义了模块级结构,这些结构将形成我们将从数据库中查询的结构。这种结构称为声明性映射,讲白了其实就是SQL表中存在的元数据。from sqlalchemy import Columnfrom sqlalchemy import ForeignKeyfrom sqlalchemy import Integerfrom sqlalchemy import Stringfrom sq
- 零食行业研究系列报告
seed2016
大数据
零食行业板块投资探讨专题-拥抱极致性价比与下沉时代系列:从下游折扣业态看零食投资(盐津铺子002847/三只松鼠300783)2024-2025年零食坚果_干货商机指南报告零食行业深度报告(系列一):万亿零食赛道全图谱,品类、渠道与竞争零食饮料行业口味创新趋势洞察三只松鼠(300783)公司深度研究:深化供应链改革,“D%2bN”全渠道突围,零食龙头征程再起休闲零食行业深度报告:解码小零食的大单品
- 对于 Redis 的操作,有哪些推荐的 Best Practices?
IsToRestart
redis数据库缓存
1.避免使用KEYS命令获取所有key,因为该命令会遍历所有key,可能会阻塞Redis的主线程。2.避免使用FLUSHALL或FLUSHDB命令清空Redis数据库,因为这会清空所有数据库中的数据,而不仅仅是当前数据库。3.避免在Redis中存储大的数据块,因为这会导致Redis实例内存占用过高,影响Redis的性能。4.合理设置过期时间,避免过期时间设罟过短或过长,导致Redis实例内存占用过
- dify工作流+deepseek开启联网搜索
deepseek
序本文主要研究一下如何使用dify工作流+deepseek开启联网搜索步骤创建工作流创建应用-->创建空白应用-->工作流-->编排开始节点,设置一个名为query的文本添加节点,选择工具websearchapi,去https://app.serply.io/注册得到APIKEY填写进去,之后设置输入变量为开始节点的query添加节点,选择LLM,deepseek-r1:8b,设置SYSTEM为根
- S32DS设置
新人码农
toolsS32DS
目录自定义模版修改默认文件注释自定义模版Window->Perferences;General->Keys,搜索template,找到C/C++ContentAssit添加自己的快捷键;C/C++->Editor->Templates,S32DS提供了部分模版,可以添加自己的模版;应用并保存设置后,回到编辑区,输入自定义模版名称,按快捷键即可自动添加自定义模版;修改默认文件注释Window->Pe
- 2023版idea ssh 远程linux docker 报错: Only key-pair ssh auth type is supported for docker connections.
小布布的不
ideadockerintellij-ideasshlinuxdocker
2023版ideassh远程linuxdocker报错:Cannotconnect:java.lang.llegalArgumentException:Onlykey-pairsshauthtypeissupportedfordockerconnections.环境:idea2023.3.2centos7安装docker报错截图:正确操作步骤:idea选择连接方式ssh点“+”号依次填入信息,点击
- 关于酒店旅游信息的数据采集API接口返回||包含参数说明
电商数据girl
电商项目API接口测试跨境电商API接口酒店信息相关API接口旅游java开发语言大数据数据库json
相关网站站点xiechengAPI接入说明携程获取酒店详情原数据API返回值说明item_get_app-获取酒店详情原数据xiecheng.item_get_app公共参数名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地址中)[item_search,item_get,it
- java redis 分页查询_Redis分页查询缓存方案
科瓦利斯的鹿
javaredis分页查询
常规分页查询缓存方案我们都知道,通过缓存查询的结果,可以极大的提升系统的服务能力,以及降低底层服务或者是数据库的压力。对于有分页条件的缓存,我们也可以按照不同的分页条件来缓存多个key,比如分页查询产品列表,page=1&limit=10和page=1&limit=5这两次请求可以这样缓存查询结果productList:page:1:limit:10productList:page:1:limit
- django-vue-lyadmin---学习-菜单结构lyadmin_menu.sql
大胖丫
androidjavascript开发语言
SETNAMESutf8mb4;SETFOREIGN_KEY_CHECKS=0;--------------------------------Tablestructureforlyadmin_menu------------------------------DROPTABLEIFEXISTS`lyadmin_menu`;CREATETABLE`lyadmin_menu`(`id`varchar
- 资损防控-幂等代码
HBryce24
java
1、幂等//幂等publicTradeDOisIdempotent(TradeDOtradeDO){try{tradeDO.setStatus("INIT");//进行数据库insert,通过唯一键判断是否业务幂等tradeManager.add(tradeDO);returntradeDO;}catch(DuplicateKeyExceptione){//添加失败,代表已经发起过同样的请求//用
- rabbitMq创建队列和交换机不成功的问题(解决方案和排查问题思路)
码农脱贫
rabbitmq
问题背景:1.Springboot+Rabbitmq项目启动后不能自动创建交换机和队列2.消费者和生产者是在2个不同微服务中3.先启动生产者的模块,启动成功,但是交换机和队列没有创建,然后启动消费者一直启动失败4.生产者的微服务配置了交换机队列和绑定key的声明,消费者直接监听了队列,没有填写配置信息开发阶段为啥没发现这个问题:1.本地idea链接开发的Rabbitmq服务器,然后运行启动和deb
- python基础02 函数
xwj_865574332
python
一、Python函数内置函数printinputlentypestrintfloatlistrangepopappendinsertkeyssplitreplacestripremoveclear函数的特点:可以重复使用函数的语法:def关键字函数名命名的规范:小写字母不能以数字开头,不同的字母之间用下划线隔开语法:def函数名:函数体:#你希望这个函数体为你实现什么功能,函数的调用:函数名()练
- Java 毕业设计:让你“低调”完成毕业,轻松走上职场巅峰
Hello毕设之家(专业接毕设)
java课程设计开发语言毕设毕业设计大学生学习
毕业设计是不是让你焦虑得想找个地洞钻进去?别担心,毕业设计就像一场马拉松,只要掌握了正确的“跑步技巧”,顺利毕业简直轻松!让我为你提供一对一的Java技术辅导,带你在技术的海洋中游刃有余,轻松拿下毕业设计,顺利进入职场,成为下一个Java大神!你能从我这里获得什么?架构设计?轻松搞定!想做分布式系统、微服务架构,还是高并发的企业级应用?我有一手好“架构设计”武功,带你快速搭建系统架构,性能稳如老狗
- python笔记:高级特性-迭代
zyckhuntoria
pythonfoundation
目录一、判断是否为迭代对象二、对dict进行迭代的三种情况2.1对dict中的key进行迭代2.2对dict中的value进行迭代2.3对dict中的key,value进行迭代三、对字符串进行迭代四、对list进行迭代五、练习迭代iterable(顺便一提..iterature文学)一、判断是否为迭代对象使用collections模块的Ierable类型进行判断,方法如下fromcollectio
- hashMap的理解
敲键盘的小猴子
Java基础javahashmap链表
hashMap的理解一、HashMap简介put原理get原理二、哈希碰撞三、与HashTable的区别1.HashTable介绍2.区别最后、常见问题一、HashMap中的“死锁”是怎么回事一、HashMap简介HashMap是基于哈希表实现的,每一个元素是一个key-value对,无序,不可重复。HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包
- 基于BS结构的旅游网站详细设计与具体代码实现
AI天才研究院
计算AI大模型企业级应用开发实战ChatGPT计算科学神经计算深度学习神经网络大数据人工智能大型语言模型AIAGILLMJavaPython架构设计AgentRPA
1.背景介绍1.1旅游业的蓬勃发展与信息化需求随着社会经济的快速发展和人民生活水平的不断提高,旅游业正经历着前所未有的蓬勃发展。越来越多的人选择旅游作为休闲娱乐、放松身心、开拓视野的方式。与此同时,旅游业的信息化需求也日益迫切。传统的旅游服务模式已无法满足现代旅游者对信息获取、行程安排、服务体验等方面的个性化需求。1.2B/S架构的优势与适用性为了更好地满足旅游业的信息化需求,基于B/S架构的旅游
- selenium用法详解【从入门到实战】【Python爬虫】【4万字
m0_60635609
程序员seleniumpython爬虫
driver.find_element_by_id(‘xxx’).send_keys(Keys.ENTER)使用Backspace来删除一个字符driver.find_element_by_id(‘xxx’).send_keys(Keys.BACK_SPACE)Ctrl+A全选输入框中内容driver.find_element_by_id(‘xxx’).send_keys(Keys.CONTROL
- DeepSeek 新注意力架构NSA
Twilight-pending
知识点论文阅读架构
DeepSeek新注意力架构NSA概要研究背景:实现高效长上下文建模的自然方法是利用softmax注意力的固有稀疏性,通过选择性计算关键query-key对,可以显著减少计算开销,同时保持性能。最近这一路线的进展包括多种策略:KV缓存淘汰方法、块状KV缓存选择方法以及基于采样、聚类或哈希的选择方法。尽管这些策略前景广阔,现有的稀疏注意力方法在实际部署中往往表现不佳。许多方法未能实现与其理论增益相媲
- 看黑客如何远程黑掉一辆汽车 - BlackHat 2015 黑帽大会总结 day 1
weixin_33701251
移动开发javascriptshellViewUI
蒸米·2015/08/0616:290x00序今天是BlackHat2015第一天,九点钟开场。开场介绍是由BlackHat创始人JeffMoss讲的。随后又请来了Stanfordlawschool的JenniferGranickz做了keynotespeech。随后就开始BlackHat的正会了,因为BlackHat是9个分会场同时进行,所以我们只能挑一些比较感兴趣的演讲去听。0x01ANDRO
- C语言学习,插入排序
五味香
c语言学习排序算法算法开发语言android数据结构
C语言,插入排序是一种简单直观的排序算法,插入排序是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。示例://插入排序函数voidinsertionSort(intarr[],intn){for(inti=1;i=0&&arr[j]>key){arr[j+1]=arr[j];j=j-1;}arr[j+1]=key;}}//打印voidprintArray(inta
- 解密上门按摩系统:高并发场景下如何保障服务稳定?
龙兵科技软件开发小江
微信小程序生活健康医疗按摩服务
在当今快节奏的生活中,上门按摩服务正逐渐崭露头角,成为备受欢迎的健康休闲选择。这一服务借助线上平台,打破了传统按摩店的时空限制,让人们在舒适的家中就能享受到专业的按摩服务。上门按摩服务的便捷性不言而喻。只需轻点手机,用户便能在众多按摩项目中自由挑选,无论是肩颈放松,还是全身SPA,都能轻松实现。同时,用户还拥有挑选技师的权利,通过查看技师的照片和小视频,选择自己心仪的服务人员。这种个性化的选择,极
- Vue.js组件开发深度解析:从原理到最佳实践
星鬼123
框架相关vue.jsjavascript前端
Vue.js组件开发深度解析:从原理到最佳实践一、Vue组件核心运行机制1.1响应式数据驱动原理//Vue3的响应式实现constreactiveMap=newWeakMap();functionreactive(obj){constproxy=newProxy(obj,{get(target,key,receiver){track(target,key);//依赖收集returnReflect.
- RSA加密解密
码农张3
Java基础java后端
packagecom.coder.common.utils.security;importorg.apache.commons.codec.binary.Base64;importjavax.crypto.Cipher;importjava.security.*;importjava.security.interfaces.RSAPrivateKey;importjava.security.int
- 【原创】谈谈redis的热key问题如何解决
qdwd888
Java经验分享面试java
ps:hotkey和bigkey问题,大家一定要有所了解。本文预计分为如下几个部分热key问题如何发现业内方案正文–热Key问题上面提到,所谓热key问题就是,突然有几十万的请求去访问redis上的某个特定key。那么,这样会造成流量过于集中,达到物理网卡上限,从而导致这台redis的服务器宕机。那接下来这个key的请求,就会直接怼到你的数据库上,导致你的服务不可用。怎么发现热key方法一:凭借业
- 你会对职场的不平,说“不”吗
晏小北
经验分享求职招聘职场和发展学习方法芯片工程师
与其说“不”,不如试着理解“不平”背后的底层逻辑。芯片工程师,聊聊职场中的另一种常见的“不平”——小兵和领导之间的“不平”。也就是经常看到的现象:活儿都是下面人干的,最后报奖排名,领导第一。抛开情绪,尽可能客观地分析这现象。能够合规地将小兵的工作成果,为己所用,这便是领导的重要优势之一。但并非只有领导有这优势。我们作为研发人员,虽然属于小兵,但是否也在不知不觉中,利用了别人的工作成果?当然有。比如
- 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