- SOA(面向服务架构)全面解析
Hello.Reader
java架构java微服务
1.引言什么是SOA(面向服务架构)SOA(Service-OrientedArchitecture,面向服务架构)是一种将应用程序功能以“服务”的形式进行模块化设计的架构风格。这些服务是独立的功能模块,它们通过定义明确的接口进行通信,并可以跨不同的平台和技术栈相互协作。在SOA中,每个服务通常代表一个独立的业务功能(如客户管理、订单处理等),能够被其他服务独立地调用和复用。SOA的目标是通过服务
- IDM下载软件:加速下载体验
虫语者
开源软件
在互联网时代,下载速度和管理效率对用户体验至关重要。InternetDownloadManager(IDM)是一款广受欢迎的下载管理工具,它以其卓越的性能和丰富的功能赢得了全球用户的青睐。本文将深入探讨IDM下载软件的特点、优势以及使用方法。IDM的核心功能下载加速:IDM通过动态文件分割和多线程下载技术,显著提升下载速度。它能够将一个文件分成多个部分并同时下载,从而最大限度地利用带宽资源。断点续
- 35. IP地址的组成
MineGi
#网络基础网络
IP地址的组成IP地址(InternetProtocolAddress)是用于在Internet上唯一标识一个设备(如计算机、路由器、服务器等)的数字标签。它遵循特定的格式和规则,以确保全球范围内的唯一性和可路由性。IP地址的组成通常分为两部分:网络部分(NetworkID):这部分标识了设备所在的网络。在IPv4中,网络部分可能占用IP地址的前几位到几十位不等,具体取决于所使用的子网掩码(Sub
- Nginx UI:一款开源的Nginx可视化管理界面,让你轻松管理nginx的配置
小华同学ai
nginxui开源
嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和工作学习方法NginxUI是由0xJacky和Hintay共同开发的一款Nginx网络管理界面。它旨在为Nginx提供一个易于使用的图形界面,让用户可以在线查看服务器状态、编辑配置文件、管理网站和证书等。想要一睹为快?访问https://demo.nginxui.com/使用以下凭据登录:用户名:admin密码:admin特色功
- 当使用 npm 时,出现 `certificate has expired` 错误通常意味着请求的证书已过期。
程序员WANG
工具npm前端node.js
当使用npm时,出现certificatehasexpired错误通常意味着请求的证书已过期。这可能是由于以下几种情况:网络代理问题:如果使用了网络代理,代理服务器的证书可能过期或配置有误。系统时间错误:系统时间不准确可能导致证书验证失败,因为证书的有效期是基于时间的。远程服务器证书问题:https://registry.npm.taobao.org/@vue%2fcli的证书可能在服务器端过期或
- Java代码封装redis工具类
weixin_30901729
数据库java
maven依赖关系:redis.clientsjedis2.9.0org.apache.commonscommons-pool22.6.0源码:1packageStudyPro.service;23importredis.clients.jedis.Jedis;4importredis.clients.jedis.JedisPool;5importredis.clients.jedis.Jedis
- Hibernate中文版教程:快速入门与实践
焦虑中
本文还有配套的精品资源,点击获取简介:Hibernate是一个高效的JavaORM框架,它通过对象关系映射简化数据库操作,使得开发人员能以面向对象的方式处理数据。本教程旨在为初学者提供一份详尽的Hibernate指南,涵盖了实体管理、会话管理、查询语言HQL、缓存机制等核心功能。教程还介绍了配置文件、映射文件、CriteriaAPI、CascadeType和FetchType、事务处理、关联映射、
- redis 工具类封装
swadian2008
SpringBootredisredisspringbootjava
目录1-在springboot项目的pom.xml2-在application.properties中配置redis参数3-编写redis的配置类4-编写redis的工具类5-测试类RedisController.java1-在springboot项目的pom.xml在配置文件里加入redis的jar依赖4.0.0com.demo.springbootspringbootdemo1.0-SNAPS
- Jmeter-1-JMeter代理录制脚本
karry_孙二
JmeterJmeter
jmeter代理录制脚本1.原理:把jmeter作为代理服务器2.代理:相当于中转站3.流程:浏览器(客户端)--->jmeter--->服务器步骤1.设置浏览器为代理模式2.jm新建代理服务器,设置3.设置过滤规则录制脚本:jmeter只能录制html包含模式:.*192\.168\.0\.203.*(.要用\来转译)排除模式:.*\.js.*|.*\.css.*|.*\.png.*|.*\.g
- 2.slf4j入口
uncleqiao
slf4jslf4j
文章目录一、故事引入二、原理探究三、SLF4JServiceProvider四、总结一、故事引入故事要从下面这段代码说起publicclassApp{privatestaticfinalLoggerlogger=LoggerFactory.getLogger(App.class);publicstaticvoidmain(String[]args)throwsException{logger.in
- 创建您的第一个Angular应用:实现路由
cunjie3951
pythonjavavuehtmllinuxViewUI
在继续本教程之前,最好总结一下到目前为止已经完成的所有工作,以免造成任何混乱和错误。如果您错过了前三篇教程中的任何步骤,则最好返回并进行必要的更改。在第二个教程中,我们创建了三个不同的文件,分别名为country.ts,country-data.ts和country.service.ts。country.ts文件用于存储Country类定义,因此我们可以将其导入到其他文件中。country-dat
- 【Python爬虫实战】深入解析 Scrapy 管道:数据清洗、验证与存储的实战指南
易辰君
python爬虫python爬虫开发语言
个人主页:易辰君-CSDN博客系列专栏:https://blog.csdn.net/2401_86688088/category_12797772.html目录前言一、了解ScrapyShell二、配置文件settings.py(一)为什么需要配置文件(二)配置文件的使用方法(三)常用字段及其含义三、管道的深入使用(一)管道的常用方法(二)管道的实现(三)启用管道四、管道的常见应用场景五、管道使用
- Java应用的多租户架构设计
楠贝
java开发语言
Java应用的多租户架构设计大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!多租户架构(Multi-Tenancy)是SaaS(SoftwareasaService)应用中常见的设计模式,它允许多个租户(客户)共享同一个应用实例,同时保证数据隔离和独立性。在Java应用中实现多租户架构,涉及到数据模型设计、访问控制、资源隔离等多个方面。1.数据模型设计在多租户架构
- [网络][知识]TCP-IP各协议的RFC编号和RFC原始文档的获取地址
awonw
网络tcp/ip网络协议
TCP/IP协议族包括很多个子协议,下面是TCP/IP协议和支持服务所支持的RFC。RFC768用户数据报协议(UDP)RFC783简单文件传输协议(TFTP)RFC791Internet协议(IP)RFC792Internet控制消息协议(ICMP)RFC793传输控制协议(TCP)RFC816故障隔离和恢复RFC826地址解析协议(ARP)RFC854Telnet协议(TELNET)RFC86
- 深入理解Spring Boot:启动方式、注解、配置文件与模板引擎
Bro_cat
SpringBootspringbootjavaspringFreemarkerpropertiesyml
引言SpringBoot是一个用于简化Spring应用初始搭建以及开发过程的框架。它通过约定大于配置的方式,大大减少了开发者需要编写的配置代码。本文将详细介绍SpringBoot的启动方式、核心注解的用法及含义、配置文件的书写格式以及模板引擎的使用方法。SpringBoot的启动方式SpringBoot应用有多种启动方式,以下是最常见的三种方式:1.直接运行主类的main方法这是最常见的启动方式。
- 使用Nginx正向代理让内网主机通过外网主机访问互联网
m0_74824496
nginxjava前端
目录环境概述流程说明在外网服务器上安装部署nginx?安装前准备下载nginx?编译安装nginx开始配置正向代理创建systemd服务单元文件,用于管理Nginx服务的启动、停止和重新加载启动nginx?代理服务器本地验证?内网服务器验证?将代理地址添加到环境变量中直接使用环境概述在企业网络环境中,通常会存在内网与外网的隔离,内网机器无法直接访问外部Internet。而外网机器具有访问互联网的能
- 完美解决org.mybatis.spring.MyBatisSystemException nested exception is org.apache.ibatis.reflection.Refl
m0_74824076
mybatisspringapache
完美解决org.mybatis.spring.MyBatisSystemException:nestedexceptionisorg.apache.ibatis.reflection.ReflectionException的正确解决方法,亲测有效!!!亲测有效报错问题解决思路解决方法1.检查MyBatis配置文件2.检查Mapper映射文件3.检查实体类和数据库表结构4.检查数据库连接配置5.检查
- 掌握Gradle代理配置:加速你的构建过程
2401_85743969
深度学习人工智能数据库
掌握Gradle代理配置:加速你的构建过程在企业开发环境中,访问外部网络资源时经常需要通过代理服务器。Gradle作为Java项目自动化构建工具,提供了灵活的代理配置选项,以确保即使在代理环境下也能顺畅地进行依赖管理和项目构建。本文将详细介绍如何在Gradle中配置代理服务器,帮助你加速构建过程。一、代理服务器概述代理服务器充当客户端和目标服务器之间的中介,它可以用于访问控制、数据加密、缓存数据等
- Python 获取字典的值:全面指南
egzosn
pythonjava服务器前端linux
字典(dict)是Python中一个强大的数据结构,用于存储键值对。无论是处理JSON数据,还是设计复杂的配置文件,字典都无处不在。本文将全面介绍在Python中获取字典值的各种方法,通过多个详细的代码示例,帮助你掌握如何在不同场景下灵活操作字典。一、字典基础知识在Python中,字典使用花括号{}定义,其键必须是不可变的(如字符串、数字或元组),值可以是任意类型。以下是一个简单的字典示例:登录后
- Java实战:Spring Boot application.yml配置文件详解
m0_74823963
javaspringboot网络
本文将详细介绍SpringBootapplication.yml配置文件的使用和配置项。我们将探讨application.yml文件的基本概念,以及如何使用它来配置SpringBoot应用程序的各个方面。此外,我们将通过具体的示例来展示如何配置不同的SpringBoot组件,如数据源、数据库、缓存、邮件服务等。本文适合希望深入了解SpringBoot配置文件的开发者阅读。一、引言在SpringBo
- SpringBoot整合Quartz
m0_67402564
面试学习路线阿里巴巴android前端后端
目录`Quartz``Quartz`简介`Quartz`优点核心概念`Quartz`的作业存储类型`Cron`表达式`Cron`语法`Cron`语法中每个时间元素的说明`Cron`语法中特殊字符说明在线`Cron`表达式生成器`Springboot`整合`Quartz`数据库表准备`Maven`主要依赖配置文件`quartz.properties``application.properties``
- Vue.js结合ASP.NET Core构建用户登录与权限验证系统
眸笑丶
Vuec#npmvue.js
1.环境准备2.创建项目3.Vue配置步骤一:安装包步骤二:配置文件步骤三:页面文件4.后台配置在本教程中,我将利用VisualStudio2022的强大集成开发环境,结合Vue.js前端框架和ASP.NETCore后端框架,从头开始创建一个具备用户登录与权限验证功能的Web应用程序。我们将充分利用VisualStudio的内置工具和模板来简化开发流程。1.环境准备VisualStudio2022
- 通俗易懂 serverless 架构、微服务架构和云原生架构,并简单代码
Ai君臣
架构架构云原生serverless
文章目录1serverless架构、微服务架构和云原生架构区别1.Serverless架构示例:AWSLambda+APIGateway2.微服务架构示例:Flask微服务3.云原生架构示例:Docker和Kubernetes2Kubernetes中管理多个副本和流量两个关键组件1.Deployment2.Service负载均衡流量管理1serverless架构、微服务架构和云原生架构区别别用代码
- FrameWork层WiFi模块架构剖析
刘争Stanley
Java编程深度挖掘Android开发巅峰之路Framework框架大师C++魔法学院
1.系统架构AndroidWiFi系统引入了wpa_supplicant,它的整个WiFi系统以wpa_supplicant为核心来定义上层用户接口和下层驱动接口。整个WiFi系统架构如下图所示:一切尽在上图中,下面将对每部分进行详细分析。1.1WifiService由SystemServer启动的时候生成的ConnecttivityService创建,负责启动关闭wpa_supplicant,启
- MyBatis 之三:配置文件详解和 Mapper 接口方式
zp8126
MyBatismybatisjava
配置文件MyBatis的配置文件是XML格式的,它定义了MyBatis运行时的核心行为和设置。默认的配置文件名称为mybatis-config.xml,该文件用于配置数据库连接、事务管理器、数据源、类型别名、映射器(mapper文件)以及其他全局属性。以下是一些主要配置元素的概览:作为整个配置文件的根元素,所有其他配置项都包含在其中。用于加载外部属性文件,这些属性可以在配置文件中其他地方通过${p
- 小团队docker hub被墙的终极方案:基于docker打造本地docker仓库镜像
docker被墙了,docker又可以了...,经历了几次被折腾了,我决定彻底在团队内部解决这一问题。在使用该方案前,配置过代理,也设置过阿里云的仓库源,但效果都不太理想,最终打造了内部的仓库镜像,完美的解决团队在拉取docker镜像时遇到的问题。前提预实现当前功能,需要满足以下前提:有可用的代理有个docker环境的主机基础实现在这直接给docker-compose.yml文件:services
- 应用"懒加载"模式,优化@Transactional事务性能
程序员
背景在项目开发中,使用@Transactional注解来管理事务非常方便,且优雅。但是也存在一个问题:长事务问题很多被@Transactional标记的方法,实际上并不需要进行数据库操作,或者说,它们在执行的很长一段时间内都不会真正触发数据库访问。举个例子,我们的业务逻辑可能如下:@ServicepublicclassOrderService{@Transactionalpublicvoidpro
- 【vite】vite配置文件 vite.config.js
小羊不乖
前端前端框架node.js前端javascriptvue.jsvue
文章目录声明环境变量配置文件`.env.dev`开发环境`.env.prod`生产环境在配置中使用环境变量Vite中的plugin配置@vitejs/plugin-vue:默认插件@vitejs/plugin-legacy:兼容旧版浏览器unplugin-auto-import/vite:自动导入Vue和Vue相关库的APIunplugin-vue-components/vite:自动注册Vue组
- wpa_cli命令使用记录
大大菜鸟一枚
linux服务器运维
wpa_cli可以用于查询当前状态、更改配置、触发事件和请求交互式用户输入。具体来说,它可以显示当前的认证状态、选择的安全模式、dot11和dot1xMIB等,并可以配置一些变量,如EAPOL状态机参数。此外,wpa_cli还可以触发重新关联和IEEE802.1X注销/登录等事件。wpa_cli命令:命令命令缩写描述statusstat显示当前连接的状态信息ping测试指令,看service端是否
- Windows蓝牙驱动开发-蓝牙 IOCTL
程序员王马
Windows蓝牙驱动开发windows驱动开发
蓝牙驱动程序堆栈为配置文件驱动程序提供了多个IOCTL,来收集有关以下内容的信息:本地蓝牙无线电和系统;远程蓝牙设备;会使即插即用(PnP)管理器加载配置文件驱动程序的设备;为收集有关本地蓝牙无线电和系统的信息,配置文件驱动程序会使用IOCTL_BTH_GET_LOCAL_INFO。IOCTL返回后,其AssociatedIrp.SystemBuffer成员包含指向BTH_LOCAL_RADIO_
- 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