代码如下:#includeusingnamespacestd;intlou(intx){if(x==1||x==2)returnx;elsereturnlou(x-1)+lou(x-2);}intmain(){intn;cout>n;cout<<"上台阶方案总数为"<
【刷题总结】哈希系列问题
松鼠大哥
刷题总结LeetCode
文章目录一、算法解析二、解题模板1、C++内相关API2、使用哈希集合查重三、哈希系列问题1、哈希表设计2、去重\判重问题(哈希集合)(1)重复元素查找(2)几数之和(3)求交集(4)是否循环问题(5)判断是否存在3、构造哈希表(1)键---下标(2)键---统计个数(3)字母---单词(字典映射)(5)其他4、滑动窗口类问题(哈希映射)5、哈希设计键(1)排序后字符串/数组为key(2)指针/节
C++:多继承习题5
程序员东min
c++开发语言
题目内容:先建立一个Point(点)类,包含数据成员x,y(坐标点)。以它为基类,派生出一个Circle(圆)类,增加数据成员r(半径),再以Circle类为直接基类,派生出一个Cylinder(圆柱体)类,再增加数据成员h(高)。要求编写程序,重载运算符“>”,使之能用于输出以上类对象。输出样例如下:代码如下:#includeusingnamespacestd;classPoint{protec
SARIMA介绍
能源革命
技术能源算法能源
SARIMA模型,即季节性自回归积分移动平均模型(SeasonalAutoregressiveIntegratedMovingAverageModel),是一种用于处理和预测具有明显季节性变化的时间序列数据的统计模型。它是ARIMA模型的一种扩展,通过引入额外的参数来捕捉时间序列中的季节性模式。SARIMA模型的基本结构SARIMA模型的基本结构包括以下几个关键组成部分:p:非季节自回归项的阶数,
【DevOps】Maven 项目中常见的目录结构:集成测试代码的目录结构与单元测试的目录结构
阿寻寻
云原生&DevOpsdevopsmaven集成测试
集成测试代码的目录结构通常与单元测试的目录结构类似,但它们被放置在不同的目录中,以便区分这两类测试。以下是Maven项目中常见的目录结构:1.单元测试目录结构单元测试通常放置在src/test/java目录下。这个目录专门用于存放针对应用程序单个类或方法的测试。src└──test└──java└──com└──example├──MyClassTest.java└──AnotherClassTe
Java中的getInterfaces()方法:使用与原理详解
AllenBright
#Java基础java开发语言
在Java中,反射(Reflection)是一个强大的工具,它允许程序在运行时动态地获取类的信息并操作类的属性和方法。getInterfaces()方法是Java反射API中的一个重要方法,用于获取类或接口直接实现的接口。本文将深入探讨getInterfaces()方法的使用场景、工作原理以及实际应用。1.getInterfaces()方法简介getInterfaces()是java.lang.C
maven 单元测试并行_并行运行单元测试
dnc8371
单元测试javajunit深度学习人工智能
maven单元测试并行大约是时候单元测试的开发人员能够使用批注在Parallel中运行测试。在今天的博客文章中,我们将介绍如何使用Easytest提供的注释使传统的Junit测试并行运行。易测是在JUnit之上构建的测试框架,可让您轻松编写和维护测试。它专注于为您的应用程序编写数据驱动测试。让我们首先假设一个类ItemService具有方法2的方法:带有2个参数DoubleitemId和Strin
Maven的单元测试
倾城璧
maven单元测试java
1.单元测试的基本概念单元测试(UnitTesting)是一种软件测试方法,专注于测试程序中的最小可测试单元——通常是单个类或方法。通过单元测试,可以确保每个模块按预期工作,从而提高代码的质量和可靠性。2.安装和配置JUnit5使用Maven配置JUnit5首先,在项目的pom.xml文件中添加JUnit5的依赖项。4.0.0com.example.myprojectmy-application1
2025年02月01日Github流行趋势
油泼辣子多加
GitHub每日趋势github
项目名称:oumi项目地址url:https://github.com/oumi-ai/oumi项目语言:Python历史star数:544今日star数:103项目维护者:xrdaukar,oelachqar,taenin,wizeng23,kaisopos项目简介:一切你需要的来构建最先进的基础模型,端到端。项目名称:Qwen2.5-VL项目地址url:https://github.com/Q
理解C++运行时类型识别符: typeid
ComputerInBook
c++typeid运行时类型识别
1.格式typeid(type-id)typeid(expression)typeid运算符允许在运行时确定对象的类型。typeid的结果是一个consttype_info&。该值是对type_info对象的引用,该对象表示type-id或表达式的类型,具体取决于使用哪种形式的typeid。有关更多信息,请参阅type_info类。typeid运算符不适用于托管类型(抽象声明符或实例)。当将typ
c++调用静态函数的方法
ComputerInBook
c++c++staticc++调用静态函数
今天在写c++程序时,发新现在的gcc和vc++对于静态函数的调用方式有所改变,在旧标准的c++中,调用类的静态方法只能用类名::函数名的方式,在新的标准中,类的对像也可以像调用类的方法一样调用静态函数。示例如下:classDate{inty,m,d;public:Date();staticvoidPrint();};Date::Date(){}voidDate::Print(){printf("
C 语言学习记录:选择语句与循环语句
Aphelios380
算法学习c语言
在C语言的学习进程中,选择语句和循环语句是构建程序逻辑的重要部分。作为结构化编程语言,C语言主要包含顺序结构、选择结构和循环结构,其中选择语句和循环语句分别控制着程序的分支走向和重复执行,对实现复杂的业务逻辑起着关键作用。接下来,让我们深入学习这两类语句。一、选择语句在生活中,我们时刻面临着各种抉择,比如是选择去清华、北大还是其他地方深造,是否找朋友玩耍,以及选择及时行乐还是克勤克俭的生活方式等。
程序代码篇---Numpy&assert&迭代器
Ronin-Lotus
程序代码篇numpypython学习assert迭代器
文章目录前言第一部分:Numpy1.创建数组2.数组索引和切片3.数组形状操作4.数组运算5.数学函数6.随机数生成7.数组排序第二部分:assert基本语法1.condition2.error_message示例注意事项断言的用途第三部分:迭代器迭代器协议1.__iter__()2.__next__()迭代器的特点1.惰性求值2.一次性3.内存效率创建迭代器使用迭代器迭代器和可迭代对象可迭代对象
Codeforces Round 974 (Div. 3) H题 Robin Hood Archery(基础莫队,随机异或哈希)
Auto114514
Codeforces哈希算法散列表算法c++数据结构
题目链接CodeforcesRound974(Div.3)H题RobinHoodArchery思路1因为警长是后手,按照最优的策略,只有每一种数的个数是偶数个的时候,警长会平局,否则警长会输。随着询问区间端点的变化,答案的转移是O(1)O(1)O(1)的。因此,我们可以使用基础莫队进行离线求解。代码1#pragmaGCCoptimize("O2")#pragmaGCCoptimize("O3")#
C++学习——类和对象(上)
{Hello World}
c++学习
C++学习——类和对象一、面向对象和面向过程的初步认识二、什么是类一、面向对象和面向过程的初步认识我们之前学习了C语言,我们知道①C语言:C语言是一门面向过程的语言,关注的是过程,分析出求解问题的步骤,通过函数调用来逐步解决问题。②C++:C++是一门面向对象的语言,关注的是对象,将一件事情拆分为不同的对象,靠对象之间的交互完成。我们在此可以举一个例子,洗衣服的过程。面向过程:洗衣服的过程便是:拿
shell 脚本获取redis 指定hash 值
西瓜汁大数据
redisbash
记录第一次用shell脚本来获取redis的值#!/bin/bashkey="reids的集合名称"value="redis集合中的key名"#如果是string类集合的话用get${key}hash用hgetredisTime=$(redis-cli-hredis链接地址-p端口号hget${key}${value})echo${redisTime}cueeentTime30=$(date-d"
python 爬取小红书
追光少年3322
python网络爬虫
爬虫实现基本流程一.明确需求明确采集的网站及数据内容目标:根据小红书作者主页链接,采集作者主页所有笔记,并保存为excel表格。采集的字段包括作者、笔记类型、标题、点赞数、笔记链接。网址:https://www.xiaohongshu.com/user/profile/64c38af4000000000e026b43二.分析思路分析爬虫思路,概括如下:打开小红书主页与登录打开小红书作者主页,获取作
有没有想过云图片不是百分百可以正确加载?
Mebius1916
前端开发javascript前端react.js
前言我在使用cloudinary(一个云图像/视频平台)的时候发现一个潜在问题:有时候获取图片地址的时候初次获取是无法正确获取到的,必须刷新一次或多次才能正确获取到图片,但是浏览器只会加载一次图片,这就会导致图片即使存在也无法正确加载从而被备用图片替换。补充一下我使用cloudinary的方式:通过cloudinary提供的上传组件实现图片上传,在图片上传的同时记录下当前上传图片的云地址并存储到数
计算网络--地址结构
IT艺术家-rookie
计算机网络网络
IP作用:标识了网络流量的来源与去向分类ipv4(32位)ipv6(128位)表示方法点分四组表示法(ipv4)(点分十进制表示法)例:165.195.130.107(ipv4)其中的每个数字范围[0,255]–>2^8个数四个十六进制数(ipv6)例:5f05:2000:80ad:5800:0058:0800:2023:1d71块(字段):其中每个冒号分割的部分简化表示一个块的前导零必须压缩,用
PYTHON数据结构-双端队列[deque]-具有队列和栈的特性
铁松溜达py
数据结构python开发语言
双端队列(deque)是一种具有队列和栈的特性的数据结构。它支持在两端进行插入和删除操作,因此可以在队列的两端进行快速的插入和删除操作,而不像列表(list)一样需要移动元素。在Python中,双端队列可以通过`collections`模块的`deque`类来创建和操作。双端队列的主要操作包括:-`append(item)`:在队列的右端(尾部)添加一个元素。-`appendleft(item)`
自制虚拟机(C/C++)(一、分析语法和easyx运用,完整虚拟机实现)
linhhanpy
自制虚拟机自制操作系统c语言c++单片机操作系统汇编
网上对虚拟机的解释很多,其实本质就一句话虚拟机就是机器语言解释器我们今天要实现汇编语言解释器,下一次再加上ndisasm反汇编器就是真正虚拟机了注:这里的虚拟机指的是VMware一类的,而不是JVM,python一样的高级语言解释器上代码#include#include#include#include#include#include#include#include#include#include/
基于 Redis GEO 实现条件分页查询用户附近的场馆列表
Hello Dam
Java开发#Java功能开发实战#场快订SaaS平台redis数据库缓存GEO附近场馆
本文档详细介绍了如何使用RedisGEO模块实现场馆位置的存储与查询,以支持“附近场馆”搜索功能。首先,通过微信小程序获取用户当前位置,并将该位置信息与场馆的经纬度数据一同存储至Redis中。利用RedisGEO高效的地理空间索引能力,文档展示了如何初始化缓存、批量处理和存储场馆位置信息,以及执行基于距离和多种条件的分页查询。此外,还提供了计算两个地理位置间距离的工具类。此方案适用于开发具备地理定
Python学习之旅:进阶阶段(五)数据结构-双端队列(collections.deque)
喜-喜
Pythonpython数据结构学习
在Python的进阶学习过程中,数据结构的掌握至关重要。今天要介绍的双端队列(deque,即double-endedqueue),是一种非常实用的数据结构,Python的collections模块中的deque类为我们提供了强大的双端队列操作功能。接下来,就一起深入了解双端队列吧。一、什么是双端队列 双端队列,从名字就能看出它的特点,它是一种特殊的队列,允许我们在队列的两端进行插入和删除操作
Kafka的内部通信协议
优人ovo
kafka分布式
引言kafka内部用到的常见协议和优缺点可以看看原文Kafka用到的协议本文奖详细探究kafka核心通信协议和高性能的关键网络层通信的实现基于JavaNIO:Kafka的网络通信层主要基于JavaNIO来实现,这使得它能够高效地处理大量的连接和数据传输。在KafkaChannel类中,通过Selector来管理多个连接的读写操作,实现了非阻塞的I/O模型,能同时处理多个客户端连接,提高了系统的并发
QTcpSocket 如何统计在线时长
我喜欢就喜欢
C++技术文档QT数据库服务器网络
基本原理QTcpSocket是Qt库中用于TCP通信的类。要统计在线时长,关键思路是记录连接建立的时间和当前时间,通过计算两者的差值来得到在线时长。实现步骤记录连接建立时间:在连接成功的信号槽函数中记录开始时间。例如,当QTcpSocket成功连接到服务器时,会发出connected()信号。可以在对应的槽函数中使用QDateTime类来记录连接时间。示例代码如下:收起cpp#include#in
【码道初阶】国服ad两种殊途同归的贪心算法详解Leetcode452弓箭射气球问题(与Leetcode435十分相似)
宇智波牢大114514
码道初阶贪心算法算法leetcodec++
用最少箭数引爆气球:贪心策略详解引言在解决LeetCode的「452.用最少数量的箭引爆气球」问题时,我们需要在保证射爆所有气球的前提下,找到最少的弓箭数量。本文将结合具体代码,深入解析该问题的贪心解法,用两种不同的循环写法来达成目的并揭示其与经典区间问题(Leetcode435.区间重叠问题)的异同。一、问题描述给定气球区间的数组points,其中每个区间表示气球的水平直径范围。弓箭可以从任意x
Python中random模块
武当豆豆
Python语法python
一、概要random模块是python标准库中用于生成伪随机数的模块。伪随机数是以随机种子和算法得到的,随机种子和算法确定后,生成的随机数序列也确定了。二、常用函数1、random.seed(a)没有设置随机种子a时,默认以时间戳作为随机数,如此一来,每次输出的随机数序列都是不一样的;设置随机种子a后,每次输出的的随机数序列都是一样的。随机种子可设置值为整数、浮点数、字符串和引用等。importr
java扫雷
2401_86161528
minesweeperjava
一个使用Java编写的扫雷程序:Minesweeper.javaimportjava.util.Random;importjava.util.Scanner;publicclassMinesweeper{//定义X和Y轴的大小privatestaticfinalintX=10;privatestaticfinalintY=10;//雷数privatestaticfinalintB=10;priva
github中多个平台共存
jackyrong
github
在个人电脑上,如何分别链接比如oschina,github等库呢,一般教程之列的,默认
ssh链接一个托管的而已,下面讲解如何放两个文件
1) 设置用户名和邮件地址
$ git config --global user.name "xx"
$ git config --global user.email "
[email protected]"
ip地址与整数的相互转换(javascript)
alxw4616
JavaScript
//IP转成整型
function ip2int(ip){
var num = 0;
ip = ip.split(".");
num = Number(ip[0]) * 256 * 256 * 256 + Number(ip[1]) * 256 * 256 + Number(ip[2]) * 256 + Number(ip[3]);
n
读书笔记-jquey+数据库+css
chengxuyuancsdn
htmljqueryoracle
1、grouping ,group by rollup, GROUP BY GROUPING SETS区别
2、$("#totalTable tbody>tr td:nth-child(" + i + ")").css({"width":tdWidth, "margin":"0px", &q
javaSE javaEE javaME == API下载
Array_06
java
oracle下载各种API文档:
http://www.oracle.com/technetwork/java/embedded/javame/embed-me/documentation/javame-embedded-apis-2181154.html
JavaSE文档:
http://docs.oracle.com/javase/8/docs/api/
JavaEE文档:
ht
shiro入门学习
cugfy
javaWeb框架
声明本文只适合初学者,本人也是刚接触而已,经过一段时间的研究小有收获,特来分享下希望和大家互相交流学习。
首先配置我们的web.xml代码如下,固定格式,记死就成
<filter>
<filter-name>shiroFilter</filter-name>
&nbs
Array添加删除方法
357029540
js
刚才做项目前台删除数组的固定下标值时,删除得不是很完整,所以在网上查了下,发现一个不错的方法,也提供给需要的同学。
//给数组添加删除
Array.prototype.del = function(n){
navigation bar 更改颜色
张亚雄
IO
今天郁闷了一下午,就因为objective-c默认语言是英文,我写的中文全是一些乱七八糟的样子,到不是乱码,但是,前两个自字是粗体,后两个字正常体,这可郁闷死我了,问了问大牛,人家告诉我说更改一下字体就好啦,比如改成黑体,哇塞,茅塞顿开。
翻书看,发现,书上有介绍怎么更改表格中文字字体的,代码如下
 
unicode转换成中文
adminjun
unicode编码转换
在Java程序中总会出现\u6b22\u8fce\u63d0\u4ea4\u5fae\u535a\u641c\u7d22\u4f7f\u7528\u53cd\u9988\uff0c\u8bf7\u76f4\u63a5这个的字符,这是unicode编码,使用时有时候不会自动转换成中文就需要自己转换了使用下面的方法转换一下即可。
/**
* unicode 转换成 中文
一站式 Java Web 框架 firefly
aijuans
Java Web
Firefly是一个高性能一站式Web框架。 涵盖了web开发的主要技术栈。 包含Template engine、IOC、MVC framework、HTTP Server、Common tools、Log、Json parser等模块。
firefly-2.0_07修复了模版压缩对javascript单行注释的影响,并新增了自定义错误页面功能。
更新日志:
增加自定义系统错误页面功能
设计模式——单例模式
ayaoxinchao
设计模式
定义
Java中单例模式定义:“一个类有且仅有一个实例,并且自行实例化向整个系统提供。”
分析
从定义中可以看出单例的要点有三个:一是某个类只能有一个实例;二是必须自行创建这个实例;三是必须自行向系统提供这个实例。
&nb
Javascript 多浏览器兼容性问题及解决方案
BigBird2012
JavaScript
不论是网站应用还是学习js,大家很注重ie与firefox等浏览器的兼容性问题,毕竟这两中浏览器是占了绝大多数。
一、document.formName.item(”itemName”) 问题
问题说明:IE下,可以使用 document.formName.item(”itemName”) 或 document.formName.elements ["elementName&quo
JUnit-4.11使用报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing错误
bijian1013
junit4.11单元测试
下载了最新的JUnit版本,是4.11,结果尝试使用发现总是报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing这样的错误,上网查了一下,一般的解决方案是,换一个低一点的版本就好了。还有人说,是缺少hamcrest的包。去官网看了一下,如下发现:
[Zookeeper学习笔记之二]Zookeeper部署脚本
bit1129
zookeeper
Zookeeper伪分布式安装脚本(此脚本在一台机器上创建Zookeeper三个进程,即创建具有三个节点的Zookeeper集群。这个脚本和zookeeper的tar包放在同一个目录下,脚本中指定的名字是zookeeper的3.4.6版本,需要根据实际情况修改):
#!/bin/bash
#!!!Change the name!!!
#The zookeepe
【Spark八十】Spark RDD API二
bit1129
spark
coGroup
package spark.examples.rddapi
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.SparkContext._
object CoGroupTest_05 {
def main(args: Array[String]) {
v
Linux中编译apache服务器modules文件夹缺少模块(.so)的问题
ronin47
modules
在modules目录中只有httpd.exp,那些so文件呢?
我尝试在fedora core 3中安装apache 2. 当我解压了apache 2.0.54后使用configure工具并且加入了 --enable-so 或者 --enable-modules=so (两个我都试过了)
去make并且make install了。我希望在/apache2/modules/目录里有各种模块,
Java基础-克隆
BrokenDreams
java基础
Java中怎么拷贝一个对象呢?可以通过调用这个对象类型的构造器构造一个新对象,然后将要拷贝对象的属性设置到新对象里面。Java中也有另一种不通过构造器来拷贝对象的方式,这种方式称为
克隆。
Java提供了java.lang.
读《研磨设计模式》-代码笔记-适配器模式-Adapter
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 适配器模式解决的主要问题是,现有的方法接口与客户要求的方法接口不一致
* 可以这样想,我们要写这样一个类(Adapter):
* 1.这个类要符合客户的要求 ---> 那显然要
HDR图像PS教程集锦&心得
cherishLC
PS
HDR是指高动态范围的图像,主要原理为提高图像的局部对比度。
软件有photomatix和nik hdr efex。
一、教程
叶明在知乎上的回答:
http://www.zhihu.com/question/27418267/answer/37317792
大意是修完后直方图最好是等值直方图,方法是HDR软件调一遍,再结合不透明度和蒙版细调。
二、心得
1、去除阴影部分的
maven-3.3.3 mvn archetype 列表
crabdave
ArcheType
maven-3.3.3 mvn archetype 列表
可以参考最新的:http://repo1.maven.org/maven2/archetype-catalog.xml
[INFO] Scanning for projects...
[INFO]
linux shell 中文件编码查看及转换方法
daizj
shell中文乱码vim文件编码
一、查看文件编码。
在打开文件的时候输入:set fileencoding
即可显示文件编码格式。
二、文件编码转换
1、在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式
&
MySQL--binlog日志恢复数据
dcj3sjt126com
binlog
恢复数据的重要命令如下 mysql> flush logs; 默认的日志是mysql-bin.000001,现在刷新了重新开启一个就多了一个mysql-bin.000002
数据库中数据表数据迁移方法
dcj3sjt126com
sql
刚开始想想好像挺麻烦的,后来找到一种方法了,就SQL中的 INSERT 语句,不过内容是现从另外的表中查出来的,其实就是 MySQL中INSERT INTO SELECT的使用
下面看看如何使用
语法:MySQL中INSERT INTO SELECT的使用
1. 语法介绍
有三张表a、b、c,现在需要从表b
Java反转字符串
dyy_gusi
java反转字符串
前几天看见一篇文章,说使用Java能用几种方式反转一个字符串。首先要明白什么叫反转字符串,就是将一个字符串到过来啦,比如"倒过来念的是小狗"反转过来就是”狗小是的念来过倒“。接下来就把自己能想到的所有方式记录下来了。
1、第一个念头就是直接使用String类的反转方法,对不起,这样是不行的,因为Stri
UI设计中我们为什么需要设计动效
gcq511120594
UIlinux
随着国际大品牌苹果和谷歌的引领,最近越来越多的国内公司开始关注动效设计了,越来越多的团队已经意识到动效在产品用户体验中的重要性了,更多的UI设计师们也开始投身动效设计领域。
但是说到底,我们到底为什么需要动效设计?或者说我们到底需要什么样的动效?做动效设计也有段时间了,于是尝试用一些案例,从产品本身出发来说说我所思考的动效设计。
一、加强体验舒适度
嗯,就是让用户更加爽更加爽的用
JBOSS服务部署端口冲突问题
HogwartsRow
java应用服务器jbossserverEJB3
服务端口冲突问题的解决方法,一般修改如下三个文件中的部分端口就可以了。
1、jboss5/server/default/conf/bindingservice.beans/META-INF/bindings-jboss-beans.xml
2、./server/default/deploy/jbossweb.sar/server.xml
3、.
第三章 Redis/SSDB+Twemproxy安装与使用
jinnianshilongnian
ssdbreidstwemproxy
目前对于互联网公司不使用Redis的很少,Redis不仅仅可以作为key-value缓存,而且提供了丰富的数据结果如set、list、map等,可以实现很多复杂的功能;但是Redis本身主要用作内存缓存,不适合做持久化存储,因此目前有如SSDB、ARDB等,还有如京东的JIMDB,它们都支持Redis协议,可以支持Redis客户端直接访问;而这些持久化存储大多数使用了如LevelDB、RocksD
ZooKeeper原理及使用
liyonghui160com
ZooKeeper是Hadoop Ecosystem中非常重要的组件,它的主要功能是为分布式系统提供一致性协调(Coordination)服务,与之对应的Google的类似服务叫Chubby。今天这篇文章分为三个部分来介绍ZooKeeper,第一部分介绍ZooKeeper的基本原理,第二部分介绍ZooKeeper
程序员解决问题的60个策略
pda158
框架工作单元测试
根本的指导方针
1. 首先写代码的时候最好不要有缺陷。最好的修复方法就是让 bug 胎死腹中。
良好的单元测试
强制数据库约束
使用输入验证框架
避免未实现的“else”条件
在应用到主程序之前知道如何在孤立的情况下使用
日志
2. print 语句。往往额外输出个一两行将有助于隔离问题。
3. 切换至详细的日志记录。详细的日
Create the Google Play Account
sillycat
Google
Create the Google Play Account
Having a Google account, pay 25$, then you get your google developer account.
References:
http://developer.android.com/distribute/googleplay/start.html
https://p
JSP三大指令
vikingwei
jsp
JSP三大指令
一个jsp页面中,可以有0~N个指令的定义!
1. page --> 最复杂:<%@page language="java" info="xxx"...%>
* pageEncoding和contentType:
> pageEncoding:它