- Android Fragment 按键监听
weixin_44128558
androidandroidandroidstudiojava
Fragment中是没有监听按键的方法的,但是Fragment是寄托于Activity的,只要在Activity中将监听到的按键传递给Fragment就行,网络上大部分都是让Fragment获得焦点,再添加一个按键监听器,这样就能监听到了@Nullable@OverridepublicViewonCreateView(@NonNullLayoutInflaterinflater,@Nullable
- 手摸手系列之---camel ftp监听接收解析xml报文并入库生成Java对象实战
码上艺术家
camelxmlcamel
前言版本:SpringBoot2.4camel3.5.0最近在做跟一个第三方系统的对接,主要流程就是对方生成XML格式的报文,需要我方将其报文发送到海关申报,然后将申报完的数据再组装成XML报文格式发回到对方的FTP服务器。功能其实挺简单,用Apache的camel-ftp很容易就能实现,下面看看具体如何做吧。一、引入camel依赖:org.apache.camel.springbootcamel
- 手摸手系列之---camel ftp监听本地报文目录,并在报文生成后上传到远程第三方ftp服务器实战
码上艺术家
camel服务器运维
前言版本:SpringBoot2.4camel3.5.0上篇文章已经说过项目需求和主要流程,现在已经接收解析xml报文并入库生成Java对象。下一步就是处理完生成的数据生成XML报文,再返回给第三方ftp服务器了。下面看看怎么做。1.增加camel配置,本地监听目录和远程第三方ftp服务器URL。#camel配置camel:#camelftp服务路由地址route:id:XMLRouteftp:s
- IoTDB 升级后 Trigger 不可用
铁头乔
iotdb数据库时序数据库开源
问题现象目前将IoTDB1.3.2版本升级到了1.3.3(通过替换lib的方式)。替换后发现原有触发器,showtriggers显示active,但实际并未生效。卸载安装后依旧无法监听路径上的插入数据,不知道触发器逻辑是否有变更?没有发现异常日志,回退1.3.2版本后正常。原因ApacheTsFile目前已经独立成了一个项目,原来在TsFile下的类的包名都发生了变化,因此Trigger中依赖的T
- .net 启动mysql数据库连接,ASP.NET实战002:MySQL数据库连接
CodeConjurer
.net启动mysql数据库连接
数据库管理系统数据库是用来存放数据的仓库,它拥有很大的存储空间,可以用来存放我们系统的所有数据。而数据库管理系统(DBMS)是为管理数据库而设计的系统,可以对文件中的数据进行新增、截取、更新、删除、查询、备份等操作,最主要是安全可靠、灵活高效、性能优越。目前主流的数据库管理系统有:Oracle、MySQL、SQLServer、PostgreSQL、MongoDB、DB2、Redis等,今天主要分享
- jdbc连接出现ServerTimezone问题
一个小坑货
常见错误积累mysqljava
代码中添加时区需要在jdbc的url连接中添加serverTimezone=Asia/Shanghai。例如:jdbc:mysql://localhost:3306/db1?serverTimezone=Asia/Shanghaijdbc:mysql://localhost:3306/db1?serverTimezone=GMTIdea链接mysql错误Idea链接mysql错误—Goto‘Adv
- MySQL事物原理
bxnms.
mysql数据库
事务在MySQL服务中,系统的主线程负责监听连接,而多个连接线程负责处理连接。这时候多个SQL语句操作数据库,就会出现事务多并发,交叉处理。比如银行存钱后再取钱,如果存钱的中途撤销操作,但取钱操作已经完成等等。事务是一个工作单元,它由一系列操作组成,这些操作要么全部成功,要么全部失败,不会结束在中间某个点。在MySQL中,客户端想要开启事务就要向MySQL发送开启事务请求,再发送一系列SQL语句,
- 【appium】成功解决无法连接到服务器....
keira674
UI自动化服务器运维
现象:remotehost填写了0.0.0.0点击开始会话报错如下无法连接到服务器;您确定它正在运行吗?如果您正在使用浏览器版本,同时也确保您的Appium服务器使用--allow-cors启动。localhost解决:remotehost填写了localhost点击开始会话成功连接
- Oracle 学习全攻略
来恩1003
Oracleoracle学习数据库
Oracle学习资料Oracle学习资料Oracle学习资料在当今信息技术蓬勃发展的时代,数据库管理系统起着举足轻重的作用,而Oracle作为行业内的领军者,以其强大、稳定、高效的特性,广泛应用于金融、电信、政府等诸多关键领域。若你渴望踏入数据库领域的高阶殿堂,开启Oracle的学习之旅无疑是明智之举。以下将为你详细阐述Oracle的学习路径。一、入门奠基:环境搭建与初步认知了解Oracle体系架
- 【JavaScript】事件监听:触摸事件
神明木佑
javascriptmicrosoft开发语言
JavaScript触摸事件是通过浏览器提供的TouchAPI来实现的。当用户在触摸屏设备上进行交互时,浏览器会捕捉到触摸事件,并将其传递给相应的JavaScript事件处理器。需要注意的是,触摸事件在不同的设备和浏览器上可能有差异,因此在使用触摸事件时应该进行兼容性测试,并根据需要进行适当的兼容性处理。此外,触摸事件通常与其他事件(如点击事件、滚动事件等)结合使用,以实现更复杂的交互效果。一、t
- Oracle从入门到精通
布朗克168
#Oracle学习数据库经验分享数据库oracle
文章目录一、Oracle基础认知二、安装与配置(一)下载与准备(二)安装步骤(三)基本操作三、数据库查询与管理(一)查询数据(二)备份与恢复四、高级功能探索(一)数据库优化(二)存储过程与触发器五、Java与Oracle集成(一)连接Oracle数据库(二)使用JPA六、进阶学习(一)分页(二)视图(三)存储过程(四)约束(五)序列(六)同义词(七)索引一、Oracle基础认知Oracle数据库是
- 如何修改 Angular 运行的主机和端口 ?
angular
在Angular中,host指的是应用程序可访问的域名或IP地址,而port指的是应用程序通过它与网络通信的特定网关。默认情况下,Angular应用运行在localhost上,端口号是4200。在某些情况下,更这些默认设置是必要的,例如在不同的环境中部署应用程序或避免端口冲突的情况下。使用AngularCLIAngularCLI提供了一种简单的方式来修改这些设置。在不同的port上启动Angula
- 如何配置 Apache 监听多个端口 ?
apache
Apache是一个广泛使用的web服务器,可以配置为侦听多个端口。这对于托管多个网站、运行不同类型的服务或改进服务器的可访问性特别有用。在本文中,我们将探讨配置Apache以侦听多个端口的步骤。Step1:AccessApacheConfigurationFile找到并打开Apache主配置文件,文件路径通常取决于您的操作系统。OnRHEL-basedSystems:/etc/httpd/conf
- Java连接TDengine和MySQL双数据源
NUZGNAW
javatdenginemysql
git文件地址:项目首页-SpringBoot连接TDengine和MySQL双数据源:SpringBoot连接TDengine和MySQL双数据源-GitCode1、yml配置spring:datasource:druid:mysql:driver-class-name:com.mysql.cj.jdbc.Driverurl:jdbc:mysql://localhost:3306/testuse
- SpringBoot 使用ElasticsearchRestTemplate
hbzslb
springbootjavamybatis
1.pom.xml添加org.springframework.bootspring-boot-starter-data-elasticsearch2.6.22.配置文件配置地址spring:data:elasticsearch:cluster-name:elasticsearchcluster-nodes:localhost:92003.开始使用3.0.创建实体类@Data@AllArgsCons
- 管理口令安全和资源(二)
远歌已逝
数据库安全oracle数据库
DBMS_METADATADBMS_METADATA是Oracle数据库中的一个包,它提供了用于管理数据库元数据的工具和过程。元数据是关于数据的数据,它描述了数据库的结构,包括表、视图、索引、存储过程、用户和其他数据库对象的信息。DBMS_METADATA包允许用户获取、修改和重建数据库对象的元数据。DBMS_METADATA包在Oracle9iRelease2(9.2.0.1)中首次引入,并在后
- [问题处理][Mysql]ERROR 1045(28000):Access denied for user ‘???‘@‘localhost‘ (using password Yes)
wingaso
数据库经验总结mysql数据库
前言新建用户后,尝试登录,显示密码正确,但是无法成功登录。ERROR1045(28000):Accessdeniedforuser‘???‘@‘localhost‘(usingpasswordYes)一、检查用户是否存在SELECThost,user,authentication_stringFROMmysql.userWHEREuser='';如果不存在,那就重新创建,使用root用户执行以下语
- inotifywait监听php,用inotifywait监视文件变化并执行相应脚本
函明
Inotify是一个Linux特性,它监控文件系统操作,比如读取、写入和创建。Inotify反应灵敏,用法非常简单,并且比cron任务的繁忙轮询高效得多。在内核2.6.13以上都可以使用。Inotify一种强大的、细粒度的、异步文件系统监控机制,它满足各种各样的文件监控需要,可以监控文件系统的访问属性、读写属性、权限属性、删除创建、移动等操作,也就是可以监控文件发生的一切变化。inotify-to
- Centos Linux 离线安装 MySQL 5.7、使用MySQL
寒水馨
软件解惑mysqlcentos数据库linux
CentosLinux离线安装MySQL5.7、使用MySQL视频教程链接:https://www.bilibili.com/video/BV1Nv4y1m7u4/1.MySQL简介MySQL是一个开源的关系型数据库管理系统,由瑞典MySQLAB公司开发,属于Oracle旗下产品,适合个人和中小型企业使用。2.准备工作2.1.拥有一台CentosLinux机器参考文章:《VMware安装Cento
- ReactiveSwift 简单使用
Johnny Tong
iOS之旅swift
记录ReactiveSwift简单使用导入ReactiveSwift库创建TestViewModel文件enumJKTypeType:Int{casecloudcasedevicecaseweater}//通过监听属性变化classTestViewModel:NSObject{lazyvarrecordType:Property={returnProperty(recordTypeProperty
- Oracle 跟 SQL Server 2005 的区别?思维导图 代码示例(java 架构)
用心去追梦
oraclejava架构
Oracle和SQLServer2005是两个不同厂商开发的关系型数据库管理系统(RDBMS),它们在架构、功能特性、性能优化以及使用场景等方面存在显著差异。以下是关于Oracle和SQLServer2005的主要区别、思维导图结构以及Java架构下的代码示例。Oracle与SQLServer2005的区别架构与设计平台支持:Oracle:跨平台,可以在多种操作系统上运行,包括Windows、Li
- Redis集群部署——sentinel模式
学!学!学
redissentineljava
容器化运行sentinel实例1、获取sentinel.conf配置文件从官网下载对应的tar包,解压找到对应的sentinel.conf配置文件,修改其中的配置文件注意:#设置监听节点,最后的数字2是quorum,表示客观下线时需要多少哨兵服务同意sentinelmonitormaster63792#设置验证密码避免不必要的错误信息sentinelauth-passmaster123456#设置
- Jeecgboot抵御XSS攻击
码商行者
xss安全springboot
1.问题描述jeecgboot后台启动后,在浏览器输入地址http://localhost:8080/jeecg-boot/jmreport/view/')%22οnmοuseοver=alert('hacking')%20%20(弹出对话框2.试验环境jeecgboot3.03.增加配置类在jeecg-boot-module-system的config包下,新建xss包,并新增几个类类的具体代码
- 云数据库PolarDB
dream_heheda
AliCloudbigdatapostgresql数据库
PolarDB的概念PolarDB的概念PolarDB是阿里云自研的下一代关系型云数据库,有三个独立的引擎,分别可以100%兼容MySQL,100%兼容PostgreSQL,高度兼容Oracle语法,存储容量最高可达100TB,单库最多可扩展到16个节点,适用于企业多样化的数据库应用场景。PolarDB采用存储和计算分离的架构,所有计算节点共享一份数据,提供分钟级的配置升降级,秒级的故障恢复,全局
- 什么是PolarDB
colorfulyan
数据库mysqlpostgresql
PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。PolarDB100%兼容MySQL5.6/5.7/8.0,PostgreSQL11,高度兼容Oracle。PolarDB采用存储和计算分离的架构,所有计算节点共享一份数据,提供分钟级的配置升降级、秒级的故障恢复、全局数据一致性和免费
- 案例分享|快速了解实时湖仓集一体技术如何助力企业降本增效
mysql
1.替代TD仓、Hadoop湖,助力农商行构建一体化数据平台某农商行最初构建了Teradata数据仓库、Oracle小数据平台以及Hadoop数据湖。多平台混合架构开发运维高,存在冗余存储、数据搬迁一致性、跨平台流转数据实时性低等问题。该农商行基于星环科技实时湖仓集一体平台,替代了Teradata数仓、Oracle数据平台和Hadoop数据湖三个平台,一体化架构同时满足数据湖海量汇集、复杂数仓模型
- vue 如何判断每次进入都会刷新页面
东锋1.3
vue.jsjavascript开发语言ecmascript
在Vue.js中,如果你想要检测用户是否重新加载了页面或者首次访问页面,可以通过监听某些生命周期钩子或者利用浏览器的存储机制来实现。方法一:使用Vue生命周期钩子Vue组件提供了几个生命周期钩子,如beforeCreate,created,beforeMount,mounted等。其中mounted钩子是在实例被挂载到DOM后调用的。可以在这个钩子中设置一个标志来标记页面是否已经被初始化。expo
- ubuntu 系统 ,docker建的服务 ,其他局网机器可以通过IP:端口的方式访问。不是docker的不行。
PyAIGCMaster
我买了个服务器ubuntudockertcp/ip
根据您的描述,docker建的服务可以通过IP:端口的方式被局网其他机器访问,而非docker的服务不行,以下是可能的原因及解决方法:网络配置方面•检查非docker服务的网络监听配置:确保非docker服务是监听在0.0.0.0上,而不是仅监听在127.0.0.1(localhost)上。如果服务只监听在127.0.0.1上,那么只有本机能够访问,局网其他机器无法访问。您可以通过查看服务的配置文
- ufw入门实战:在Ubuntu下通过ufw命令开放端口让外网访问
明 庭
ubuntulinux运维
最近使用阿贝云的免费云服务器,1核1G内存10G硬盘5M带宽,配置不错,完全够用搞些轻量级项目,但是在搭建项目过程中发现无法访问已经部署的服务,经过检查发现是UFW防火墙的问题,所以,今天给大家介绍下在ubuntu系统下如何开放端口让外网访问我们的服务。端口管理是服务器安全的重要一环,ubuntu系统默认使用ufw来管理防火墙规则。首先我们检查下它现在的状态:sudoufwstatus是否显示为i
- 【YashanDB观点】论Oracle兼容性,我们需要做什么
运维数据库
王海峰YashanDB作者介绍王海峰,数据库系统架构师,YashanDBSQL开发负责人,10年以上数据库内核技术开发经验。Oracle兼容性是目前国产数据库的关键任务之一,其直接影响到商业迁移的成本和竞争力。我们经常发现,部分国产数据库声称与Oracle兼容性高达90%,但在实际迁移过程中,仍需要频繁地修改业务应用的代码。为何实现与Oracle高兼容度的数据库产品如此困难?其中一个重要原因是Or
- 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