- ssh创建密钥ansible批量分发
liujiangxu
linuxsshlinux
ssh-keygen命令用于为“ssh”生成、管理和转换认证密钥,它支持RSA和DSA两种认证密钥SSH密钥默认保留在~/.ssh目录中id_rsa:私钥文件id_rsa.pub:公钥文件known_hosts:ssh访问不同的主机会将公钥记录到此文件,每次访问会核对密钥创建ssh密钥[root@ceshi-128~]#ssh-keygen-trsaGeneratingpublic/private
- ansible 指定用户名并免密批量执行
HOPE YOU WELL
三藏sshlinux服务器
由于root账户出现故障,导致ansible无法正常执行ssh-agent/bin/bash和ssh-add/root/.ssh/id_sra命令,所以采用命令的方式完成当即需要完成的工作ansible-i清单文件清单-mshell-a"bash/root/worker/u-worker-s.shrefund"-u用户名--key-file/home/私钥位置-b--become-method=s
- ansible批量修改主机密码(非明文)
伪烛之焰
ansiblelinux
一、未优化前1.在ansible服务器上面配置出加密的密码opensslpasswd-1123456>mypasswd.txtcatmypasswd.txt111I4e4LJWu$Cb91lQ7kSOnZpOEIZbeJm.2.修改mypasswd.txt在密文前面加上用户名用:号隔开root:111I4e4LJWu$Cb91lQ7kSOnZpOEIZbeJm.3.ansible分发文件到各个主机
- Ansible批量远程管理Windows主机(部署与配置)
小小小徐先生
linuxcentos
Ansible批量远程管理Windows主机(部署与配置)一、Linux管理服务器需安装pip、pywinrm插件(1)配置阿里镜像源[root@HJMDesktop]#cd/etc/yum.repos.d/[
[email protected]]#wget-O/etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Cent
- Python标准库 subprocess 模块多进程编程详解
好像要长脑子了1
程序员python开发语言
1.1基本功能subprocess模块,允许生成新的进程执行命令行指令,python程序,以及其它语言编写的应用程序,如java,c++,rust应用等。subprocess可连接多个进程的输入、输出、错误管道,并且获取它们的返回码。asyncio也支持subprocess.许多知名库都在使用此模块创建进程,以及做为跨语言粘合工具。典型如ansible,celery,selenium等。1.2与m
- Ansible批量自动化管理工具入门
假装自己很酷
Ansibleansible自动化运维
一,Ansible概述由于互联网的快速发展导致产品更新换代速度逐步增长,运维人员每天都要进行大量的维护操作,按照传统方式进行维护使得工作效率低下。这时部署自动化运维工具就可以尽可能安全,高效的完成这些工作。Ansible是基于Python开发,集合了众多优秀运维工具的优点,实现了批量运行命令,部署程序,配置系统等功能的自动化运维管理工具。默认通过SSH协议进行远程命令执行或下发配置,无需部署任何客
- 超详细的Ansible自动化运维
独留西厢梦
高级运维
文章目录一、Ansible介绍和架构1.1Ansible发展史1.2Ansible特性1.3Ansible架构1.3.1Ansible组成1.3.2Ansible命令执行来源1.3.3注意事项二、Ansible安装和入门1.1Ansible安装1.1.1EPEL源的rpm包安装1.1.2编译安装1.1.3Git方式1.1.4pip安装1.1.5确认安装1.2Ansible相关文件1.2.1配置文件
- Ansible详细学习笔记和实战案例
沉淅尘
Linux#Ansible运维Ansible自动化linux
Ansible详细学习笔记和实战案例(容易忘记的内容)一、主机清单ansiblelocalhost-mcommand-a"ls"##主机列表文件cat/etc/ansible/hosts主机描述形式:主机IP地址和主机名##blue.example.com##192.168.100.1散列主机列表和主机组列表散列主机列表主机组列表嵌套主机组列表##blue.example.com##[webser
- Ansible自动化运维:Ansible的安装与配置
爱技术的小伙子
运维ansible自动化
Ansible自动化运维:Ansible的安装与配置Ansible是一种自动化运维工具,它可以帮助系统管理员自动化日常任务,例如软件包的安装、服务的配置和启动等。Ansible基于Python语言,采用SSH协议进行通信,无需在客户端安装任何额外的软件,只需在服务器端安装Ansible即可。1.Ansible的基本概念1.1什么是AnsibleAnsible是一种开源的自动化运维工具,它通过编写p
- ansible自动化运维
YJLZ0821
运维ansible自动化
一、基础配置1.主配置文件:/etc/ansible/ansible.cfg2.主要清单文件/etc/ansible/hosts[webserver1]192.168.89.140|ansible-web1#需要做域名解析[webserver2]192.168.89.141|ansible-web2[weball:children]webserver1webserver2[weball:vars]
- ansible批量生产kerberos票据,并批量分发到所有其他主机脚本
蘑菇丁
ansiblehadoop学习笔记eclipsejavaide
-name:ConfigureKerberosforHadoopUsershosts:hadoop_serversbecome:nogather_facts:novars:kerberos_server:hadoop1.xuexi.comkeytab_file_path:/home/hadoop/keys/hadoop.keytabprincipals:-nn/-dn/-yarn/-starroc
- K8S部署DevOps自动化运维平台
元气满满的热码式
运维kubernetesdevops
持续集成(CI)持续集成强调开发人员提交了新代码之后,立刻自动的进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。持续集成过程中很重视自动化测试验证结果,对可能出现的一些问题进行预警,以保障最终合并的代码没有问题。常见的持续集成工具:Jenkins:Jenkins是用Java语言编写的,是目前使用最多和最受欢迎的持续集成工具,使用Jenkins,可以自动监测到
- 基于云计算的自动化部署与自动化运维:提高运维效率
AI天才研究院
大数据AI人工智能自然语言处理人工智能语言模型编程实践开发语言架构设计
基于云计算的自动化部署与自动化运维:提高运维效率作者:禅与计算机程序设计艺术文章目录基于云计算的自动化部署与自动化运维:提高运维效率1.简介2.云计算概述(1)云计算的优势2.1弹性伸缩能力2.2技术创新领域(2)云计算平台的组成2.1基础设施即服务(IaaS)2.2平台即服务(PaaS)2.3服务即服务(SaaS)2.4混合云平台(3)云计算的特点2.1模式多样性2.2灵活性与弹性2.3融合性2
- devops运维平台汇总
java领域
devops运维数据库面试经验分享
1/01.spug1/11.supg简介Spug是面向中小型企业设计的无Agent的自动化运维平台,整合了主机管理、主机批量执行、主机在线终端、应用发布、任务计划、配置中心、监控、报警等一系列功能。演示地址:官网地址:使用文档:更新日志:常见问题:1|22,功能介绍1,主机管理2,批量执行3,应用发布4,任务计划5,配置中心6,监控中心7,报警中心8,系统管理2|02,codo2|11,codo简
- ansible挂载失败
sunrise(* ̄︶ ̄)
ansiblejava服务器
命令ansibleweb-mmount-a'src=172.16.1.31:/data/path=/ans-uploadfstype=xfsstate=mounted'失败问题如下:172.16.1.7|FAILED!=>{"ansible_facts":{"discovered_interpreter_python":"/usr/bin/python"},"changed":false,"msg
- 智能运维分析决策系统:赋能数字化转型的智慧引擎
我的运维人生
运维运维开发技术共享
智能运维分析决策系统:赋能数字化转型的智慧引擎在数字化转型的大潮中,企业运维管理正经历着从传统手动运维向智能化、自动化运维的深刻转变。智能运维分析决策系统(AIOps,ArtificialIntelligenceforITOperations)作为这一转变的核心驱动力,通过融合大数据、机器学习、人工智能等先进技术,实现了对运维数据的深度洞察与智能决策,极大地提升了运维效率与质量,为企业数字业务的连
- 利用Kubespray安装生产环境的k8s集群-排错篇
超级阿飞
k8sclusterkubernetesdocker容器
利用Kubespray安装生产环境的k8s集群-排错Ansible排错Ansible安装后需要加入到PATH,以便能够直接运行。一般用非root用户运行,注意在playbook或者inventory里要显性定义become属性。最好采用ansible运行账号可以免密码sudo的模式。Ansible的配置文件,在kuberspray安装时已经存在,需要将Ansible运行配置文件指向相应位置。配置文
- 运维之道 | Ansible 自动化项目实战 LNMP 服务安装部署
VillianTsang
Ansible
一、LNMP部署规划Mysql部署详情信息:mysql_basedir:/usr/local/mysql/源码目录mysql_datadir:/data/mysql/数据目录mysql_user:mysqlmysql用户mysql_database_user:root数据库用户mysql_passwd:'123456789'数据库密码mysql_port:3306mysql监听端口mysql_so
- 配置管理工具和k8s功能重叠部分的优势比较
大囚长
容器技术运维人生容器云原生运维kubernetes
通过自动化配置管理工具(如Ansible、Puppet、Chef)和应用内管理机制,也可以实现自动部署、扩缩容、负载均衡和故障恢复等功能。Kubernetes(K8s)在这些方面具有哪些独特的优势呢,尤其是在云原生环境和大规模分布式系统中。以下是对比分析:1.自动化配置管理工具的局限性自动化配置管理工具(如Ansible、Puppet、Chef)主要用于基础设施的配置管理和应用部署,但它们在某些方
- AI时代,需要怎样的架构师?腾讯云架构师峰会来了!
架构
引言架构设计对应用有关键性的影响,不仅决定应用的整体品质,还直接影响开发、维护和扩展的难易度。卓越的架构设计不仅能够确保系统的稳定性、高效性和可扩展性,还能大幅提升研发效能,同时显著降低维护成本。在快速变化的技术环境中,架构师们面临业务需求快速迭代、数据量急剧膨胀以及系统复杂性不断提升等挑战。随着云计算、大数据、人工智能等前沿技术的蓬勃发展,一系列创新解决方案如微服务架构、AI大模型、自动化运维工
- Python语法总结
彧侠
脚本处理Python
Python作为一种解释型的脚本语言,无论从自动化运维、大数据处理还是人工智能都得到了广泛的应用,而且它好理解、易学习、上手快的特点也使它成为了当下最火热的开发语言之一。下面就对Python语言中的各种语法做一个总结,以备后用数据类型一、整数二、浮点数三、字符串四、布尔值五、空值print语句注释什么是变量比如:定义字符串raw字符串与多行字符串Unicode字符串字符串还有一个编码问题。整数和浮
- ansible 配置文件的 优先级
leegong23111
redhatlinux
优先级如下:1.首先找执行ansible命令的当前目录中,是否有ansible.cfg文件./ansible.cfg2.如果找不到,再找当前用户的家目录下是否有.ansible.cfg~/.ansible.cfg3.如果还找不到,就找/etc/ansible/ansible.cfg/etc/ansible/ansible.cfg要检查当前使用的是哪个配置文件。ansible--version命令中
- 深入 Kubernetes 的健康奥秘:探针(Probe)究竟有多强?
云计算
深入Kubernetes的健康奥秘:探针(Probe)究竟有多强?“Probe”——这是K8s世界里一个特别常见但又不够“高调”的单词。如果你第一次接触K8s,可能很难想象这个看似普通的小工具竟然是K8s自动化运维的核心之一。探针(Probe)的作用就像集群的“健康监护员”,负责检测和管理容器的健康状态。没有它,K8s的稳定性和高可用性可能会大打折扣。本文将从探针的原理讲起,结合实际场景深入解析它
- Python自动化运维:一键掌控服务器的高效之道
蒙娜丽宁
Python杂谈运维python自动化
《PythonOpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门!解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界在互联网和云计算高速发展的今天,服务器数量的指数增长使得手动运维和管理变得异常繁琐。Python凭借其强大的可读性和丰富的生态系统,成为实现自动化运维的理想语言。本文以“Python自动化运维:编写自动化脚本进行服务器管理”为主题,深入探讨了如何利用Py
- docker教程安装docker
爱吃蚂蚁的松鼠
dockerdockerkubernetes容器
学习一个技术最重要的是学习一个技术的生态,用这些生态的相关知识点解决实际问题。docker实战docker拉取容器(nginx的坑等等)docker日志配置和DNS配置docker远程API调试(通过对接API来实现,打造自己的web运维工具)docker结合terraform自动化运维工具做自动化工作docker网络(网络流转原理和一些创建新环境来跟公司网络环境保持一致才能连接)docker高可
- 【开源免费】kettle作业调度—自动化运维—数据挖掘—informatica-批量作业工具taskctl
加菲盐008
KettleETL作业调度工具taskctl运维数据库linux大数据数据挖掘
关注公众号"taskctl",关键字回复"领取"即可获权产品简介taskctl是一款由成都塔斯克信息技术公司历经10年研发的etl作业集群调度工具,该产品概念新颖,体系完整、功能全面、使用简单、操作流畅,它不仅有完整的调度核心、灵活的扩展,同时具备完整的应用体系。目前已获得金融,政府,制造,零售,健康,互联网等领域1000多家头部客户认可。图片来自网络2020年疫情席卷全球,更是对整个市场经济造成
- AWS学习笔记——Chapter5 Identity and Access Management and Security on AWS
坚果壳er
AWS学习
前注:学习书籍IndexIdentityandAccessManagementandSecurityonAWS1.Authentication(认证)2.Authorization(授权)3.Auditing(审核)4.Typesofsecuritycredentials(安全凭证的类型)5.Users6.Groups7.Roles8.IAMHierarchyofPrivileges9.IAMBe
- 【python自动化运维】python第三方运维模块应用
leo__programmer
python自动化运维运维python自动化
一、pymysql模块——数据库编程1、介绍第三方模块作用:连接MySQL数据库1.1、操作流程创建数据库连接基于连接创建游标cursor数据库读写操作关闭游标关闭数据库连接2、pymysql模块的使用2.1、准备工作准备MySQL数据库安装pymysql模块pipinstallpymysql安装配置MySQL数据库[root@localhost~]#yuminstall-ymariadb-ser
- 【架构设计】现代软件交付中的灵活性与可靠性———云原生与不可变基础设施(微服务/容器化/持续交付,计算/存储/网络)
小哈里
#后端开发网络云原生微服务系统架构云计算
【架构设计】现代软件交付中的灵活性与可靠性———云原生与不可变基础设施(微服务/容器化/持续交付,计算/存储/网络)文章目录1、云原生与基础设施的关系2、云原生的概念(灵活性)3、云原生=微服务+容器化+持续交付(容器化)4、基础设施的概念(可靠性)5使用Packer、Ansible和Terraform构建不可变的基础设施(镜像化)1、云原生与基础设施的关系定义:云原生:云原生是一种设计和运行应用
- ansible——template(模板)、角色
热爱学习的哈哈哈
运维linux服务器ansible
ansible——template(模板)、角色1、template(模板)Ansible模板是一种强大的工具,可用于在自动化任务中以动态方式生成配置、文件和其他工件。模板使用Jinja2模板语言,这是一种功能强大的模板语言,可用于创建复杂的模板。Jinja2模板语言:使用字面量,有下面形式。字符串:使用单引号或者双引号数字:整数、浮点数列表:[item1、item2、......]元组:[ite
- 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