- 鸿蒙 ArkUI实现地图找房效果
儿歌八万首
鸿蒙开发开发语言鸿蒙ArkUI华为
常用的地图找房功能,是在地图上添加区域、商圈、房源等一些自定义marker,然后配上自己应用的一些筛选逻辑构成,在这里使用鸿蒙ArkUI简单实现下怎么添加区域/商圈、房源等Marker.1、开启地图服务在华为开发者官网,注册应用,然后在我的项目-我的应用-ApI管理中开启地图服务MapKit;2、地图相关配置在工程中entry模块的module.json5文件中配置client_id,client
- 线上服务器的文件下载到本地Windows电脑
youhebuke225
Linux服务器windows运维
将线上服务器的文件下载到本地Windows电脑,可以根据具体情况选择以下方法:方法一:使用远程桌面连接(推荐)开启远程桌面功能确保服务器已启用远程桌面(RDP)服务,默认端口为3389。检查服务器防火墙或安全组规则,允许RDP端口的入站连接。连接服务器本地电脑按Win+R,输入mstsc打开远程桌面连接。输入服务器IP地址、用户名和密码,点击“连接”。映射本地磁盘在远程桌面连接窗口中,点击“显示选
- Eureka应用
javaspringboot
Eureka[juˈriːkə]简介Eureka是Netflix服务发现的服务端与客户端,Eureka提供服务注册以及服务发现的能力,当是EurekaServer时(注册中心),所有的客户端会向其注册,当是EurekaClient时,可以从注册中心获取对应的服务信息,或者是向EurekaServer将自己作为实例注册进去,每个Eureka不仅仅是一个服务端同时还是一个客户端。注册中心当Eureka
- 达梦数据库授权给某个用户查询其他指定用户下所有表的权限
DB实践
达梦数据库数据库达梦数据库SQL授权达梦DM8
方法1:新版本有一个数据库参数GRANT_SCHEMA,表示是否开启授予和回收模式权限功能。0:否;1:是此参数为静态参数,默认是0,将改参数修改为1后,重启数据库生效。将参数修改为1SP_SET_PARA_VALUE(2,'GRANT_SCHEMA',1);参数生效后,可直接执行SQL进行授权,例如将模式B下所有对象的查询权限授予用户AGRANTSELECTONSCHEMABTOA;方法2:可以
- java.lang.NoSuchMethodError: org.elasticsearch.client.RestClient.performRequest(Ljava/lang/String;Lj
频繁输入,积极输出
eses
es创建索引时,报:java.lang.NoSuchMethodError:org.elasticsearch.client.RestClient.performRequest(Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Lorg/apache/http/HttpEntity;[Lorg/apache/http/Header;)Lorg/e
- Python-playwright:一款强大的UI自动化工具、新兴爬虫利器
m0_74824054
面试学习路线阿里巴巴pythonui自动化
点击名片关注阿尘blog,一起学习,一起成长本文主要分享由微软开发的实现WebUI自动化测试工具Playwright库,相比于之前学习过selenium库,playwright对于编写自动化代码绝对是更轻松了,因为它支持脚本录制,如果只求简单点可以不用写一行代码就能够实现自动化,而且playwright有许多强大的api,很多功能比起selenium都轻松简单,好了话不多说,开启正文~playwr
- redis——进阶
weixin_30614587
数据库
redis的持久化redis提供两种备份方式,一种是RDB一种是AOFRDB默认开启。关闭注释掉所有的save,存储的是redis具体的值,会压缩存储。AOF配置文件中appendonlyyes表示开启。存储的是redis操作的命令。RDB和AOF的对比:RDBAOF开启与关闭默认开启的备份方式,要想关闭将配置文件中的所有save注释掉即可。在配置文件中appendonly:yes即为开启,no为
- 探寻 Hutool - System:开启系统信息便捷获取之旅
五行星辰
业务系统应用技术java后端
Hutool-System:系统参数调用封装(JVM信息等)一、简介在Java开发中,有时需要获取系统的相关信息,例如JVM的配置信息、操作系统信息、用户信息等。Java本身提供了一些API来获取这些信息,但使用起来较为分散和复杂。Hutool-System模块对这些系统参数的调用进行了封装,提供了统一、便捷的接口,让开发者可以更轻松地获取各种系统信息。二、引入依赖如果你使用Maven项目,在po
- Spring 事务
zhujilisa
Springspring
Spring事务使用Spring事务Spring事务传播使用Spring事务引入依赖org.springframeworkspring-tx5.3.20开启Spring事务注解@EnableTransactionManagement@Transactional该注解实际是导入了两个bean:1.AutoProxyRegistrar.class:通过beanDefinition向Spring容器注册
- APP自动化-模拟器使用
北条苒茗殇
自动化
前言:在一些不需要依赖手机蓝牙等硬件相关的测试时,可以使用模拟器来解决占用真机的问题。环境1、模拟器:Mumu模拟器(此处用Mumu为例子)2、ADB:1.0.41一、模拟器设置开启本地和远程连接二、ADB链接模拟器1、连接前点击多开器的右上角的ADB查看端口2、命令行输入adbconnect127.0.0.1:16384,出现connected即为连接成功三、uiauto.dev调试1、安装ui
- 探索Golang-WDA:iOS自动化测试的新星
花谦战
探索Golang-WDA:iOS自动化测试的新星gwdaWebDriverAgent(iOS)ClientLibraryinGolang项目地址:https://gitcode.com/gh_mirrors/gw/gwda在移动应用的开发与测试领域,自动化测试工具的选择至关重要。今天,我们将深入探讨一个新兴的开源项目——Golang-WDA,它以其独特的技术优势和广泛的应用场景,正逐渐成为iOS自
- vue-cli开启gzip打包报错TypeError: Cannot read property ‘tapPromise‘ of undefined-解决
JackieDYH
VueERRORtapPromisegzip打包报错vue-clivue
给项目增加gzip打包yarnaddcompression-webpack-plugin-D(默认安装的是7以上的最新版本)修改vue.config.jsconstCompressionWebpackPlugin=require('compression-webpack-plugin');configureWebpack:{plugins:[newCompressionWebpackPlugin(
- wordpress使用CorePress主题设置项总结
linlinlove2
wordpress二次开发wordpress主题开发
宝塔面板设置软件商店中安装的软件有:(宝塔网站加速3.1)(Nginx1.18.0)(MySql5.6.50)(PHP-5.6)(phpMyAdmin4.4)(Python项目管理器1.9)(又拍云存储4.5)(Linux工具箱1.4)(宝塔SSH终端1.0)(Nginx免费防火墙5.3)网站:首次添加站点选择自动创建数据库网站–>SSL:申请免费Let’sEncrypt证书,并开启强制https
- IOS-iphone端WKWebView开发者模式
Gaos的BLOG
IOS开发iosiphonesafari
WKWebView调试App内嵌网页手机端开启Web检查器:设置->通用->Safari->高级->Web检查器Mac端Safari显示开发菜单:Safari浏览器->偏好设置->高级->勾选在菜单中显示“开发”设置启动APP,加载WKWebView后即可在Mac端看到H5页面。这时即可连接手机通过Safari中进行调试,Safari开发中看到设备,可以查看当前的HTML代码,JS代码,网络情况等
- ES6的let和const,一篇文章就够了
小常--
前端JavaScriptES6javascript前端es6
ES6系列之let和constlet声明符ES6新增的let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。注意let声明变量不会进行变量提升无法在声明之前使用let声明的变量let声明的变量不容许重复声明预解析阶段会对let声明的变量锁定所有其他在同一个域下的声明都会报错let会开启块级作用域基础特性if(true){leta='let';varb=
- 关系型数据库的技术思路
编程之升级打怪
数据库
一、网络协议需要根据TCP协议设计一个客户端和服务器之间的命令响应协议。1、服务端回复声明2、客户端发送登录包3、服务端返回登录结果4、登录成功后进入命令阶段,否则退出。二、每个连接用一个线程服务器为每个客户端连接开启一个线程。三、需要文件的随机读写需要方便的跳转到存储文件的指针。四、数据结构用B+树1、非叶子节点存放很多个关键字每个关键字递增排列。2、叶子节点存放关键字对应记录的文件存放指针。五
- Rust 构建跨平台 GUI 的新选择
Rust开发笔记
rustrust开发语言后端
在现代软件开发过程中,用户界面(GUI)的设计与实现是不可或缺的一环。随着Rust编程语言的崛起,其安全性、性能和并发特性使其成为开发高质量GUI应用的理想选择。relm框架,作为Rust生态中的一员,提供了一种声明式、事件驱动的方法来构建GUI,本文将深入探究relm的设计理念、特性以及应用实例,为广大Rust爱好者开启构建跨平台GUI应用的新篇章。relm框架概览relm是一个用于Rust语言
- sekiro: disconnected ,reconnection after 2s
weixin_44400900
sekiroJSRPC
sekiro报错打不开WebSocketconnectionto‘ws://127.0.0.1:5612/business-demo/register?group=test&clientId=’failed:sekiro:disconnected,reconnectionafter2ssekiro:beginofconnecttowsURL:ws://127.0.0.1:5612/business
- 手机秒变AI办公神器!腾讯元宝+DeepSeek满血版,5分钟搞定PPT和项目汇报——你的效率翻倍指南
a小胡哦
人工智能powerpointDeepseek
为什么选择腾讯元宝?DeepSeek官方服务器常卡顿?腾讯元宝作为官方合作平台,提供稳定版DeepSeek-R1模型,支持联网搜索、文件解析、多模态交互,手机端操作更丝滑一、快速上手指南1.下载安装(3秒完成)应用商店搜索“腾讯元宝”→下载安装→选择微信/QQ/手机号登录2.切换至DeepSeek模式(1步到位)进入对话界面→点击顶部“Hunyuan混元”→切换至“DeepSeek-R1”→开启“
- 2025 AI展望:Scaling Law新叙事加速AI变革
阿里巴巴淘系技术团队官网博客
人工智能
我们正身处一场技术革命的历史开端,以ChatGPT为标志的这轮AI科技浪潮是算法和软件诞生以来人类科技最重要的技术变革,由此开启了以智能为核心的第四次工业革命。这次AI变革是由以ScalingLaw为底层逻辑的基础模型驱动,其整体的发展脉络由基础模型的技术逻辑主导。进入2025年,我们清晰地看到,ScalingLaw本身仍然成立,但以堆算力以及一味追求扩大模型尺寸的迭代路径已经被打破。同时,基础模
- Linux Vim 使用总结
ssssort
linux
1.简介Vim是vi发展过来的文本编辑器,因为语法高亮显示,多窗口编辑,代码折叠,支持插件功能已成为Linux发行版本的标配。2.Vim的工作模式Vim有多种工作模式,常用的工作模式有:普通模式,插入模式,命令模式。普通模式:用来实现光标移动,和大量的快捷键操作。插入模式:可以实现文本基本的编辑功能。命令模式:通过输入特定的指令实现特定的功能。直接输入vim命令即可开启文件文本编辑器。默将创建一个
- SpringBoot 整合mongoDB并自定义连接池
飘零未归人
javamongodbmongodb数据库java
整合mongoDB的目的就是想用它给我们提供的mongoTemplate,它可以很容易的操作mongoDB数整合mongoDB的目的就是想用它给我们提供的mongoTemplate,它可以很容易的操作mongoDB数据库。通过我们自定义的连接池和mongoTemplate,我们可以轻松的配置多个数据源,并在多个数据源之间切换为了自定义连接池,我们在配置类中主要与MongoClientOptions
- 第九章 Spring AI API中文版 - Ollama Embeddings API
明爷们儿
JAVA大模型spring人工智能java
Ollama嵌入通过Ollama,您可以在本地运行各种大型语言模型(LLMs),并从中生成嵌入。SpringAI通过OllamaEmbeddingClient支持Ollama文本嵌入。嵌入是一个浮点数向量(列表)。两个向量之间的距离衡量它们的相关性。小距离表明高相关性,大距离表明低相关性。先决条件您首先需要在本地机器上运行Ollama。参考官方Ollama项目链接:README,开始在本地机器上运
- NAKIVO Backup & Replication任意文件读取漏洞(CVE-2024-48248)
iSee857
漏洞复现安全web安全
免责申明:本文所描述的漏洞及其复现步骤仅供网络安全研究与教育目的使用。任何人不得将本文提供的信息用于非法目的或未经授权的系统测试。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权,请及时与我们联系,我们将尽快处理并删除相关内容。0x01产品描述:NAKIVOBackup&Replication是一款快速、经济实惠且一流的备份和灾难恢复解决方案,适用于VMwarevSphere
- vue项目监听文件变化自动重启webpack服务器
什么什么什么?
前端笔记nodemon自动化重启开发环境文件监听
问题:因为每次更换开发环境时,都需要手动重启一次服务器。以下的方法可以实现自动化重启。一、安装nodemon插件nodemon插件,这里有一篇详细的入门介绍。这里只有我的配置进行记录。首先我们需要在开发环境中安装nodemon依赖npminstall--save-devnodemon在项目的package.json文件中的scripts对象下添加开启nodemon的操作//package.json
- 使用haproxy实现MySQL服务器负载均衡
obboda
mysql服务器负载均衡
一、环境准备主机名IP地址备注openEuler-1192.168.121.11mysql-server-1openEuler-2192.168.121.12mysql-server-2openEuler-3192.168.121.13clientRocky-1192.168.121.51haproxy二、mysql-server配置[root@openEuler-1~]#yuminstall-y
- 从零开始创建微服务项目全流程
CT随
微服务架构云原生
在当今的软件开发领域,微服务架构已成为构建复杂应用程序的流行选择。它将大型单体应用拆分为多个小型、独立且可协同工作的服务,每个服务专注于特定的业务功能,这使得开发、部署和维护更加灵活高效。如果你正打算开启一个微服务项目,以下是一份详细的创建流程指南。一、项目规划与设计1.确定业务需求与边界在着手创建微服务项目之前,首先要深入理解业务需求。与业务团队紧密合作,明确系统需要实现的功能和目标,梳理出各个
- 最全docker-compose部署kafka、SASL模式(密码校验模式)_system
2401_84182428
程序员dockerkafka容器
Client{org.apache.zookeeper.server.auth.DigestLoginModulerequiredusername="admin"password="123456";};Server{org.apache.zookeeper.server.auth.DigestLoginModulerequiredusername="admin"password="123456"u
- Xcode14 build WebDriverAgent提示“Cannot link directly with dylib/framework“的解决方法
软件测试xcode
完整提示:Cannotlinkdirectlywithdylib/framework,yourbinaryisnotanallowedclientof/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/XCTAutomationSuppo
- curl 的用法指南
wd 67
linux
简介curl是常用的命令行工具,用来请求Web服务器。它的名字就是客户端(client)的URL工具的意思。它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代Postman这一类的图形界面工具。本文介绍它的主要命令行参数,作为日常的参考,方便查阅。内容主要翻译自《curlcookbook》。为了节约篇幅,下面的例子不包括运行时的输出.不带有任何参数时,curl就是发出GET请求。$
- 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