- ASR技术与Whisper引擎
Catformon
whisper
一、ASR技术简介ASR英文全称是AutomaticSpeechRecognition,中文叫做自动语音识别,是利用机器对语音信号进行识别和理解并将其转换成相文本和命令的技术。下面2张图是网上找到的语音识别结构图和流程图。以下为ASR技术的核心技术。特征提取:通过编码将声音转变为数字信号,提取有效的声学特征。梅尔频率倒谱系数MFCC是最经典的语音特征。声学模型:声学模型通过处理编码得到的向量,将相
- 基于 STM32 平台的音频特征提取与歌曲风格智能识别系统
赵谨言
论文经验分享毕业设计
标题:基于STM32平台的音频特征提取与歌曲风格智能识别系统内容:1.摘要摘要:本文介绍了一种基于STM32平台的音频特征提取与歌曲风格智能识别系统。该系统通过对音频信号进行特征提取和分析,实现了对歌曲风格的自动识别。在特征提取方面,系统采用了快速傅里叶变换(FFT)和梅尔频率倒谱系数(MFCC)等方法,对音频信号进行了时频域分析和声学特征提取。在歌曲风格识别方面,系统采用了支持向量机(SVM)和
- C#调用 opencv cv::Mat 图像, 采用折中方法
既然如此
opencvc#编程C#opencv调用C#cvMat
C#用于界面的制作要比MFC高效许多,但是有时候为了效率需要用C++程序,这样就涉及到了把C++核心算法程序做成dll,在C#中进行调用。之前有将IplImage*这类结构用于C#调用,整体结构较为复杂,现在我将更方便有效的方法介绍给大家,如果有更好的方法可以分享给我。将C++IplImage图像用C#读取,将C++IplImage图像用C#读取(二)实现机制:当然这里需要注意一个问题,就是转换的
- MFC基础
Edison Tao
MFC
1.什么是MFCMFC是微软的基本类库,十年前是霸主,到今天,MFC已经步入了没落期。目前的竞争对手有QT(也是一套应用程序的开发框架),MFC可以为我们提供一套可用的界面,MFC足够简单。瘦死的骆驼比马大。现在还有人用MFC吗?目前有好多的上位机,管理程序,很久不更新的医疗程序需要维护。还是有市场需求的,现在还在招MFC的公司是一家有问题的公司。MFC就是一本使用手册,非常经典,是个非常机械的东
- MFC线程-AfxBeginThread使用方法
xiaowu080
MFCmfcc++
前言AfxBeginThread是MFC(MicrosoftFoundationClasses,微软基础类库)中用于创建一个新线程的函数。它返回一个指向CWinThread类对象的指针,通过这个指针可以对创建出来的线程进行后续的操作和控制。CWinThread*AFXAPIAfxBeginThread(AFX_THREADPROCpfnThreadProc,LPVOIDpParam,intnPri
- Webrtc源码编译
会头痛的可达鸭
WebRTCwebrtc音视频
FGYP_GENERATORSGoogle官方文档参考:Development|WebRTC安装VSVS必须安装在C盘,否则需要修改很多文件1、DesktopdevelopmentwithC++2、MFCandATLsupport3、Windows10SDK选择版本:10.0.19041.0WindowsSoftwareDevelopmentKit,下载后安装上4、通过卸载面板,选择windows
- Qt Creator插件系统分析之生成插件列表
「已注销」
源码分析QtCreator插件系统
第一次接触Qt是在14年的时候,当时还正沉迷于破解和逆向之中,虽然接触过GUI的开发,但是接触的是国产的编程语言“易语言”,在制作破解补丁的时候只能用别人现成的补丁制作工具或使用易语言进行开发,但经常会出现被杀毒软件报毒,则有了接触新的GUI的想法,查看网上的很多资料之后发现MFC已经“太老了”,Qt正在”青年期”,便开始学习Qt。期间也将之前利用易语言开发的一些程序转为Qt,以用来熟悉Qt的开发
- MFC学习的一些笔记
wuzhengfeng001
mfc学习笔记
MFC框架一、需要掌握的技能:调试的方法有很多,比如像win32呢,增加一个dos窗口断点调试:F9设置断点F10执行下一步F11进入函数内部使用callstatck(中文叫调用工具栈)查看函数之间的调用关系熟悉使用向导(比如建项目的时候,每一个界面都要选择)工具(比如)借助于MSDN二、MFC概念和作用MFC概念:MircorsoftFoundationClassLibary,我们称为微软基础类
- MFC 设置CListCtrl控件滚动条位置
李同学L
MFCmfcc++
//获取CListCtrl滚动条当前位置intposY=m_list.GetScrollPos(SB_VERT);//垂直滚动条位置intposX=m_list.GetScrollPos(SB_HORZ);//水平滚动条位置//设置CListCtrl滚动条位置//m_list.SetScrollPos(10,10,TRUE);intnCount=m_list.GetItemCount();if(n
- MFC CListCtrl 取消选中
Qsir
MFCWindowsCListCtrlMFC
最近写一个程序,用到CListCtrl。其中取消选中,我开始使用的是SetItemState(i,NULL,NULL);一直觉得程序有问题,但是没有去深究。今天回过头来找原因,发现原来是这句错了。正确的写法应该是SetItemState(i,0,-1);/另外引用一篇blogCListCtrl选中和取消选中2009-08-1322:52//取消选择,并且高亮度显示取消this->m_ListCtr
- MFC框架机制详解
zt_xcyk
MFCwindows框架mfc
MFC框架机制详解1.1Windows消息机制要点1.1.1窗口过程每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(WindowHandle),消息ID(MessageID),和两个消息参数(wParam,lParam),当窗口收到消息时系统就会调用此窗口过程来处理消息。(所以叫回调函数)1.1.2消息类型1.系统定义消息(System-DefinedM
- [LVGL] 在VC_MFC中移植LVGL
wabil
mfcc++
前言:0.在MFC中开发LVGL的优点是可以用多个Window界面做辅助扩展1.本文基于VC2022-MFC单文档框架移植lvgl82.gitee上下载lvgl8.3源码,并将其文件夹改名为lvgllvgl:LVGL是一个开源图形库,提供您创建具有易于使用的图形元素、漂亮的视觉效果和低内存占用的嵌入式GUI所需的一切。-Gitee.com步骤:1.新建一个MFC应用程序,命名为LVGL_MFC[可
- MFC-原理分析
毒师
MFCmfc
[align=center][b][size=large]MFC-原理分析[/size][/b][/align]MFC只留出API供我们调用,我们使用其接口比较简单,但其内部封装及其复杂,要想成为真正的MFC高手,还是得对其内部的封装有所了解,下面就以一个简单的例子,作为对MFC内部结构探讨的开始。//HELLO.hclassCMyApp:publicCWinApp{public:virtualB
- QTableWidget设置代理使得选中行字体颜色保持不变并且失去焦点后(也就是QTableWidget失去焦点或子类TableWidget)底色不变
zxb@hny
qt
这个问题困扰了我很久,一直不理解QT的MVC设计思路,后来经过一天学习才知道,所有个性化的设置都是通过代理类QStyledItemDelegate来进行改变,譬如选中效果,字体颜色大小等等,看起来比MFC当然要复杂多了,但是别忘了QT是跨平台的,能做到这样也是非常厉害了,不得不佩服QT作者的匠心独特上关键代码:MyTableWidget*childTable=newMyTableWidget;//
- 全面MFC程序开发手册
北海有座岛
本文还有配套的精品资源,点击获取简介:MFC是微软为Windows应用程序开发提供的C++库,通过面向对象的封装简化了API的使用,便于构建用户界面、数据库和网络通信软件。本参考大全深入解析了MFC的框架结构、核心概念以及关键组成部分,包括文档/视图架构、消息映射、控件与对话框、数据库支持、网络编程、异常处理、国际化和本地化、打印功能、以及DLL支持。这些知识点的熟练掌握对于高效开发高质量Wind
- MFC CScrollView 对大视图出现滚动条回滚问题的解决
xiaji2007
Windows程序设计mfcnullapi
CScrollView类中,若视图尺寸很大。如100000*100000;voidCLOView::OnInitialUpdate(){CScrollView::OnInitialUpdate();SetScrollSizes(MM_TEXT,CSize(100000,100000));}那么当拖动滚动框距离稍大一点时,就会出现回滚,即滚动框又回到0位置。原因:CScrollView使用的滚动条是
- 关于MFC添加水平滚动框和竖直滚动框
路奇怪
MFCmfc
目录1.第一种方法添加OnHScroll如果要添加垂直滚动条,则创建WS_VSCROLL样式的窗口;如果要添加水平滚动条,则创建WS_HSCROLL样式的窗口;2.在VIew类中添加以下代码,此外还需要重绘界面之前项目窗口之一没有滚动框很不方便,今天就粗略的讨论一下两种方法;1.第一种方法添加OnHScroll如果要添加垂直滚动条,则创建WS_VSCROLL样式的窗口;如果要添加水平滚动条,则创建
- MFC中滚动条的使用 CScrollBar
TheDeaf
学习MFCmfc滚动条CScrollBar
新建一个mfc基于对话框的工程1、创建在头文件中定义一个滚动条成员变量CSrcollBarm_wndSrcollBar;在对话框的初始化函数里面初始化滚动条m_wndScrollBar.Create(WS_CHILD|WS_VISIBLE|SB_VERT,//子控件可见垂直滚动条CRect(0,0,0,0),this,WM_USER+1000);m_wndScrollBar.SetScrollRa
- pythonocc安装_PythonOCC开发-如何搭建开发环境和一个创建圆台例子
weixin_39884100
pythonocc安装
我本来是打算学习C++OCC的,但是感觉C++太难了,虽然OpenCasCAD里面有个MFC的例子,但是我连一个开发环境都没搭建出来。后来知道有个老外把C++OCC封装成了PythonOCC,就打算去研究一下。虽然网上百度到了资料,但是我还是慢慢摸索到处问别人,搞了两个多小时才成功的把环境搭建起来。转载出处,学习资料https://blog.csdn.net/weixin_42755384/art
- MFC常见控件:滚动条控件
机器视觉001
VisualC++软件开发MFC滚动条控件
MFC常见控件:滚动条控件1.滚动条控件简介滚动条大家也很熟悉了,Windows窗口中很多都有滚动条。列表框和组合框设置了相应属性后,如果列表项显示不下也会出现滚动条。滚动条分为水平滚动条(HorizontalScrollBar)和垂直滚动条(VerticalScrollBar)两种。滚动条中有一个滚动块,用于标识滚动条当前滚动的位置。我们可以拖动滚动条,也可以用鼠标点击滚动条某一位置使滚动块移动
- 【MFC】C++所有控件随窗口大小全自动等比例缩放源码(控件内字体、列宽等未调整) 20250124
小黄人软件
c++mfc开发语言UI
MFC界面全自动等比例缩放1.在初始化里枚举每个控件记录所有控件rect2.在OnSize里,根据当前窗口和之前保存的窗口的宽高求比例x、y3.枚举每个控件,根据比例x、y调整控件上下左右,并移动到新rectstructControlInfo{CWnd*pControl;CRectoriginalRect;};std::vectorm_controls;BOOLCProductionTesting
- MFC常用操作
我爱_编程
UG二次开发mfc
1,获取STATIC控件的值CStringstr;m_STATIC2.GetWindowText(str);//获取STATIC控件的值MessageBox(str);2.设置EDIT控件的值m_EDIT2.SetWindowText(str);//设置EDIT控件的值GetDlgItem(IDC_EDIT1)->SetWindowText("Leave");//设置EDIT控件的值3.移动控件m
- MFC单文档下读取BMP图片显示
勿忘初心91
vs2008机器视觉自动化visualstudio2008bmp
1.建立单文档MFC程序(我用的是VS2008),加入菜单命令,ImageSourse_ImageFromFile2.定义相关变量:CStringImagePath;HBITMAPhBitmap;CBitmapm_Bitmap;BITMAPBitmap;intImageWidth,ImageHeight;CDCMemDC;3.在菜单命令下编辑代码:DeleteObject(&m_Bitmap);M
- Qt QWidget 的各种事件
tadus_zeng
客户端c++qtc++
Qt跟MFC一样有事件机制,系统产生的事件进入Qt窗体的事件队列,再由容器层层分发,回调QWidget子类的xxxEvent事件函数。//qwidget.h//...protected://EventhandlersvirtualvoidmousePressEvent(QMouseEvent*event)override;//鼠标按下事件(不分左右),双击鼠标时不会触发第二次virtualvoid
- C/C++教程 第十四章 —— MFC控件详解
余识-
C/C++实战入门到精通mfcc++c语言
注意本系列文章已升级、转移至我的自建站点中,本章原文为:MFC控件详解目录注意一、前言二、项目建立三、Comboxbox四、ListBox五、GroupBox六、Picturecontrol七、ScrollBar八、SpinControl九、ProgressControl十、hotkey十一、ListControl十二、TreeControl十三、TabControl一、前言通过前面两章的学习,现
- C/C++、网络协议、网络安全类文章汇总
大草原的小灰灰
网络安全c语言c++网络协议网络安全密码学
文章简介本文章主要对本博客的所有文章进行了汇总,方便查找。内容涉及C/C++编程,CMake、Makefile、Shell脚本,GUI编程框架MFC和QT,Git版本控制工具,网络协议基础知识,网络安全领域相关知识,Windows、Linux和Mac平台软件打包流程,一些实用的C/C++开源框架。对于访问量过万的文章进行了标记。文章汇总C/C++编程C++11新特性之std::function类模
- 创建非模态对话框后,点击主窗口无发置顶的解决方法
afreetboy
VS2012
创建非模态对话框就不用说了,主要问题在于这一行:m_testdlg->Create(IDD_DIALOG1,this);将this改为GetDesktopWindow(),即可实现子窗口和父窗口点击置顶MFC设置对话框窗口位于所有窗口的最顶层SetWindowPos(&wndTopMost,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE);切换置顶时候,需要把之前置顶的改为&wndBo
- MFC 获取当前路径将‘\\‘替换成‘/‘的程序
小鱼仙官
Windowsmfcc++
MFC获取当前路径将'\\'替换成'/'的程序CStringGetCurrentFolder(){TCHARszPath[MAX_PATH];//MAX_PATHisthemaximumallowedpathlengthif(::GetCurrentDirectory(MAX_PATH,szPath)){//替换路径中的反斜杠为正斜杠for(TCHAR*p=szPath;*p;++p){if(*p
- 全新发布:企业级安全网盘解决方案,助力数据高效流转与安全管理!
c++代码诗人
信息安全开发语言c++
全新发布:企业级安全网盘解决方案,助力数据高效流转与安全管理!在数字化办公快速发展的今天,信息安全与数据高效管理成为企业的核心需求。我们全新推出的企业级网盘系统,为您提供一站式解决方案,集稳定性、高安全性、多功能性于一体,助力您的企业高效运行和数据安全保障。以下是我们的网盘核心亮点:1.稳定可靠的技术架构客户端采用MFC开发:运行高效,界面直观,用户体验流畅,特别适合Windows系统用户。服务端
- MFC 得到本机IP和设置本机的IP
zq4132
ULONGWINAPIGetAdaptersAddresses( __in ULONGFamily, __in ULONGFlags, __in PVOIDReserved, __inout PIP_ADAPTER_ADDRESSESAdapterAddresses, __inout PULONGSizePointer);第一个参数Family是网络协议族,用户可以指定
- 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