- 毫秒级响应的VoIP中的系统组合推荐
狂爱代码的码农
VOIP那些事kamaimio
在高并发、低延迟、毫秒级响应的VoIP场景中,选择合适的操作系统组合至关重要。以下是针对Ubuntu+linux-lowlatency、CentOSStream+kernel-rt和Debian+自定义PREEMPT_RT的详细对比及推荐:1.系统组合对比特性Ubuntu+linux-lowlatencyCentOSStream+kernel-rtDebian+自定义PREEMPT_RT易用性高(
- Redis桌面(GUI)管理客户端
(?
redis
Redis桌面(GUI)管理客户端:AnotherRedisDesktopManagerAnotherRedisDeskTopManager是GitHub上的一个开源项目,是Redis可视化管理的利器,提供在Windows、MacOS平台的安装包,体积小,完全免费。更快、更好、更稳定的Redis桌面(GUI)管理客户端,兼容Windows、Mac、Linux,性能出众,轻松加载海量键值gitee地
- SecureCRT 设置打开时默认UTF-8
杨青松
linux
要在SecureCRT中设置打开时默认使用UTF-8编码,请按照以下步骤操作1:打开SecureCRT并连接到Linux终端。点击菜单栏中的Options,选择GlobalOptions。点击General中的DefaultSession,然后点击EditDefaultSettings。在弹出的对话框中点击Appearance。点击Characterencoding中的下拉按钮,指定编码为UTF-
- linux常见性能监控工具
ly201552y
linuxlinux运维服务器
常用命令top、free、vmsata、iostat、sar命令具体更详细命令可以查看手册,这里只是简述方便找工具整体性能top,内存看free,磁盘cpu内存历史数据可以vmsata、iostat、sar、iotoptop命令交互:按P按照CPU排序,按M按照内存排序free命令[root@localhost~]#free-htotalusedfreesharedbuff/cacheavaila
- Hadoop3.2.1安装-单机模式和伪分布式模式
花菜回锅肉
大数据hadoophdfs大数据linux
Hadoop入门篇概述Hadoop是使用Java编写的,是为了解决大数据场景下的两大问题,分布式存储和分布式处理而诞生的,包含很多组件、套件。需要运行在Linux系统下。主要包括HDFS和MapReduce两个组件。下载安装下载下载地址https://archive.apache.org/dist/hadoop/common/选择合适自己的tar.gz版本下载,该文档选择V3.2.1。Hadoop
- Java设计模式之状态模式架构高扩展的订单状态管理
程风破~
JavaJava设计模式实战java设计模式状态模式
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新
- 【JavaSE】文件 IO(操作文件)
Undefined name!
JavaSEjava文件操作文件IO
文章目录1.操作文件系统File常用属性及方法1.1属性1.2构造方法1.3方法2.操作文件内容——数据流2.1字节流2.2字符流2.2.1Reader2.2.2Writer操作系统会将硬件设备和软件资源都抽象为”文件“,统一进行管理。大部分情况下,文件指的是硬盘的文件,即对硬盘数据的抽象,因此可以通过文件来操作硬盘。计算机上的文件通过文件系统来进行组织和管理,操作系统通过目录的结构来组织文件。文
- linux获取字符串最后几位,Shell截取字符串的8种方法
芦苇毛
linux获取字符串最后几位
Linux的字符串截取很有用。有八种方法。假设有变量var=http://www.aaa.com/123.htm.1.#号截取,删除左边字符,保留右边字符。(非贪婪匹配)echo${var#*/}其中var是变量名,#号是运算符,*/表示从左边开始删除第一个/号及左边的所有字符即删除http://结果是:www.aaa.com/123.htm2.##号截取,删除左边字符,保留右边字符。(贪婪匹配)
- Zynq UltraScale+ MPSoC 在linux系统运行R5 裸机程序 remoteproc - R5
愧莫佳话
linuxarm
参考文章:ultrascale学习笔记之remoteproc启动R5ZYNQUltraScale+MPSoCLinux+ThreadXAMP玩法ZynqUltraScale+MPSoC包含Cortex™-A53处理器和Cortex™-R5实时处理单元。移植完Linux系统,在系统上同时运行A53和R5应用程序,重点是修改R5程序的起始地址。vitis创建A53应用程序可以参考之前的文章R5程序可以
- vmware 和player 的关系
三希
vmware
VMware是一家提供虚拟化软件和解决方案的公司,其旗下有多个产品,VMwareWorkstationPlayer就是其中之一。VMwareWorkstationPlayer简介功能特点:VMwarePlayer是一款免费的桌面虚拟化应用程序,适合个人用户使用。它允许用户在一台物理计算机上运行多个操作系统,为用户提供了一种方便的方式来测试软件、运行不同操作系统环境等。它支持多种操作系统作为客户机,
- 让Pluto SDR完全脱机执行任务——实现开机运行特定脚本/程序
Kloz
matlab开发语言经验分享linux笔记
在我之前的关于交叉编译的文章中,讨论了如何使用Linaro工具链在Ubuntu主机上编译能在PlutoSDR的arm核上运行的可执行程序,但仅仅这样还不足,因为想要让PlutoSDR执行某个特定任务,首先需要在主机交叉编译,然后通过scp命令传送到PlutoSDR上,然后通过ssh进入到PlutoSDR的Linux系统中手动执行,才完成了一次(半)脱机运行,这并不优雅。本文讲解一种可以让Pluto
- Linux的循环,bash的循环
kfepiza
#LinuxCentOSUbuntu等#控制台命令行Shell脚本shcmd等OS操作系统WindowsLinux等linuxbash
Linux的循环,bash的循环在Linux系统中,Bash循环是最常用的循环实现方式(Bash是Linux默认的Shell),但广义上“Linux的循环”可能涉及其他Shell或编程语言的循环结构。以下是Bash循环的详细解析及其在Linux环境中的应用场景,同时对比其他常见循环方式。一、Bash循环:核心语法与场景Bash是Linux的默认Shell,其循环语法直接用于Shell脚本,适合文件
- 【知识贴】x86、amd64和arm64区别
瓜炉
linux
x86、amd64和arm64区别x86、amd64和arm64是指不同的处理器架构,它们主要区别在于指令集和硬件架构。这些架构影响着软件兼容性、性能和硬件设计。1.x86指的是:32位的x86架构(又叫i386或x86-32),由Intel最早在1978年推出。位宽:32位,也就是每次可以处理32位的数据。常用平台:最常用于较老的桌面和笔记本电脑,早期的Windows和Linux系统也多基于该架
- 怎么下载 protoc-gen-grpc-java-1.51.0-linux-aarch_64.exe
Thomas2143
总结maven
方案通过maven官方下载.下有gif动画演示.step1step2step3step4GIF演示
- 探索不同架构的计算世界:ARM64、AMD64、Intel64及其对应的32位版本
可乐泡枸杞·
架构修炼之路架构
探索不同架构的计算世界:ARM64、AMD64、Intel64及其对应的32位版本引言在计算机硬件和操作系统的世界中,架构是一个至关重要的概念。不同的架构决定了计算机如何处理数据和执行指令。本文将深入探讨四种主要架构:ARM64、AMD64、Intel64及其对应的32位版本,帮助你了解它们的区别和应用场景。什么是架构?架构(Architecture)指的是计算机处理器的设计和指令集。它决定了处理
- 深入解析 Linux 内核内存管理核心:mm/memory.c
109702008
#linux系统编程#linux内核linux人工智能c语言
在Linux内核的众多组件中,内存管理模块是系统性能和稳定性的关键。mm/memory.c文件作为内存管理的核心实现,承载着页面故障处理、页面表管理、内存区域映射与取消映射等重要功能。本文将深入探讨mm/memory.c的设计思想、关键机制以及其在内核中的作用,帮助读者更好地理解Linux内核的内存管理策略。1.文件概述mm/memory.c是Linux内核中负责内存管理的核心文件之一,位于lin
- Linux命令-cp命令(将源文件或目录复制到目标文件或目录中)
RisunJan
Linuxlinux服务器运维
说明cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。语法cp(选项)(参数)选项-a:此参数的效果和同时指定"-dpR"参数相同;-d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文
- Android 进程间通信
消失的旧时光-1943
android
Android进程间通信(IPC,Inter-ProcessCommunication)是Android操作系统中不同进程间交换数据和资源的一种机制。由于Android是多任务操作系统,每个应用通常运行在自己的进程中,以提高安全性和资源管理的效率。因此,当两个或多个应用需要共享数据时,就需要通过IPC机制来实现。常见的AndroidIPC机制包括:Intent通过发送Intent对象在不同组件间传
- Shell $0
一张假钞
linux运维服务器bash
个人博客地址:Shell$0|一张假钞的真实世界我们已经知道在Shell中$0表示Shell脚本的文件名,但在有脚本调用的情形中,子脚本中的$0会是什么值呢?我们通过下面的实例来看。已测试系统列表:MacOSXEICapitan10.11.6Ubuntu16.04LTS(GNU/Linux4.4.0-28-genericx86_64)父脚本a.sh,位置test1/a.sh,内容如下:!/usr/
- Python结合pyhdfs模块操作HDFS分布式文件系统
唐僧不爱八戒
pythonhdfs开发语言
使用python操作hdfs本身并不难,只不过是把对应的shell功能“翻译”成高级语言,我这里选用的是hdfs,下边的实例都是基于hdfs包进行的。1:安装由于我的是windows环境(linux其实也一样),只要有pip或者setup_install安装起来都是很方便的pipinstallhdfs2:Client——创建集群连接fromhdfsimport*client=Client("ht
- Centos安装Redis并持久化
唐僧不爱八戒
redis
步骤1:更新系统在开始之前,先更新系统软件包以确保稳定性。sudoyumupdate-y步骤2:安装EPEL仓库Redis通常在EPEL(ExtraPackagesforEnterpriseLinux)中提供,先安装它。sudoyuminstallepel-release-y步骤3:安装Redis使用以下命令直接安装Redis:sudoyuminstallredis-y步骤4:启动Redis服务安
- 【memgpt】letta 课程1/2:从头实现一个自我编辑、记忆和多步骤推理的代理
等风来不如迎风去
AI入门与实战javaandroid数据库letta
llms-as-operating-systems-agent-memoryllms-as-operating-systems-agent-memory内存操作系统的内存管理
- 炸裂!Linux内核代码疯长,十年翻倍直逼4000万行!
盼达思文体科创
经验分享
引言在科技的浩瀚宇宙中,操作系统宛如一颗核心恒星,照亮了整个数字世界。而Linux内核,作为众多操作系统的基石,一直以来都扮演着至关重要的角色。它不仅是开源精神的象征,更是无数开发者智慧的结晶。想象一下,我们日常使用的智能手机、电脑,甚至是汽车、家电里的智能系统,很多都离不开Linux内核的支持。它就像一个看不见的大管家,默默管理着设备的各种资源,让一切都能有条不紊地运行。如今,Linux内核代码
- 【os】os.path.join
资源存储库
python笔记python
目录【os】os.path.join函数签名参数返回值特点示例1.拼接文件路径2.自动处理路径分隔符3.忽略多余的分隔符4.绝对路径的优先级5.拼接路径到当前工作目录小结【os】os.path.joinos.path.join是Python标准库os.path模块中的一个函数,用于智能地连接一个或多个路径组件(如文件夹路径或文件名)为一个完整的路径。它根据不同的操作系统(如Windows或类Uni
- 计算机无法安装MUMU模拟器,如何安装网易MuMu模拟器 MuMu模拟器怎么用
klose141
计算机无法安装MUMU模拟器
网易MuMu模拟器是一款非常好用的安卓模拟器,安卓模拟器是能在电脑上模拟安卓操作系统,并能安装、使用、卸载安卓应用的软件,它能让你在电脑上也能体验操作安卓系统的全过程,今天小编就来教大家如何下载安装网易MuMu模拟器。方法步骤:1、下载网易MuMu模拟器到电脑中,然后鼠标双击安装。2、下载好安装包之后,首先,我们在里面需要点击左下角的用户协议,同意之后,如果没有其他要求直接点击“快速安装”快速安装
- 【Python 笔记2】os.path.join()
挪威的深林
Python笔记python
0.前言os.path.join()函数是Python中处理文件和目录路径的非常重要和常用的方法。它可以自动处理不同操作系统之间在路径分隔符方面的差异,从而使代码更加可移植和易于维护。下面我将详细解释每个用法,并提供示例代码。1.合并路径组件基本用法是将多个路径组件合并成一个完整的路径。这个方法会根据你的操作系统选择正确的路径分隔符。importospath=os.path.join("path"
- Python中os.path模块的使用详解
幻想世界中的绚丽色彩
python开发语言Python
os.path模块是Python标准库中的一个模块,提供了用于处理文件路径和名称的函数。它是处理操作系统相关的路径的理想选择,无论是在Windows、Linux还是其他操作系统上。本文将详细介绍os.path模块的常用函数及其用法,并提供相应的源代码示例。获取文件名和目录名os.path模块提供了一些函数来获取文件路径的各个部分,如目录名、文件名和扩展名等。importospath='/path/
- Python中os.path.join函数的用法示例详解
阿鈞ajunwiwx
谜之操作python人工智能目标检测opencv机器学习
前言仅供个人学习用,如果对各位朋友有参考价值,给个赞或者收藏吧^_^一、os.path.join函数os.path.join函数用于拼接多个路径字符串,生成一个新的路径字符串。用法:os.path.join(path,*paths)二、函数用法个人总结1.处理不同操作系统的路径分隔符。2.从右往左看参数,如果一个参数无‘/’或者‘\’,则按照操作系统用分隔符,如果遇到,则左边参数均会被舍弃。3.从
- ros笔记1-ros架构
zzqtpl
架构自动驾驶人工智能
ros架构ros不是传统意义上的操作系统,ros提供一种进程内的通信方法应用层ros需要一个管理者–master计算图节点节点是执行运算任务的进程,一个系统有多个节点节点之间的通信方式:消息每一个消息都是严格的数据结构,支持标准数据类型也支持嵌套结构和数组。话题是以一种发布和订阅的方式传递,一个节点可以针对一个给定的topic发布消息(称为talker)也可以关注某类话题并订阅特定类型的数据(Li
- AI大模型爆火背后,C++ 如何助力 AI 开发大显身手?
羑悻的小杀马特.
c++开发语言
目录编辑一、本篇背景:二、C++语言的起源与发展历程:2.1起源背景:2.2发展阶段:三、C++的基础特性及优势:3.1高效性能:3.2底层控制能力:3.3面向对象编程:3.4模板编程:四、C++在不同领域的应用:4.1游戏开发:4.2操作系统开发:4.3嵌入式系统开发:4.4金融领域:五、C++的学习路径与资源推荐:5.1学习路径规划:5.2优质学习资源推荐:5.2.1·书籍:5.2.2·在线教
- 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