- 基于微信小程序的毕业设计——花店管理系统(附源码+论文)
picking_bananas
微信小程序课程设计小程序毕业设计
关键词:微信小程序;花店管理;花室管理;毕业;我们专注于软件开发工程领域,熟练掌握多种开发技术,包括基于SpringBoot、Vue.js、SSM框架的应用开发,以及针对AndroidAPP和微信小程序的开发。(具体流程参见文章最后段落)一、引言随着移动互联网的普及和微信小程序的崛起,越来越多的传统行业开始利用小程序进行数字化转型。花店作为一个具有浪漫和文化意义的行业,通过微信小程序可以更好地满足
- 基于微信小程序的设计—挂号管理系统设计(附论文+源码)
picking_bananas
微信小程序小程序毕业设计课程设计
关键词:微信小程序;挂号管理;名医推荐;毕业;论文;我们专注于软件开发工程领域,熟练掌握多种开发技术,包括基于SpringBoot、Vue.js、SSM框架的应用开发,以及针对AndroidAPP和微信小程序的开发。(具体流程参见文章最后段落)一、引言随着移动设备的普及和微信小程序技术的发展,医疗服务的移动化已成为趋势。挂号是医疗服务中一个关键环节,对于患者来说,方便、快捷的挂号方式是他们所期待的
- 基于微信小程序的毕业设计——社区宠物管理系统(附源码+论文)
picking_bananas
微信小程序课程设计宠物小程序
关键词:SpringBoot;宠物管理;宠物医院;宠物店管理;毕业;我们专注于软件开发工程领域,熟练掌握多种开发技术,包括基于SpringBoot、Vue.js、SSM框架的应用开发,以及针对AndroidAPP和微信小程序的开发。(具体流程参见文章最后段落)摘要随着移动互联网的普及,微信小程序因其便捷性受到了广大用户的青睐。本文旨在探讨如何利用微信小程序设计一个社区宠物管理系统,以提升社区居民对
- VMware安装Kali(虚拟机压缩包)&设置Windbg调试符号
wave_sky
linux运维服务器
下载完成后会得到一个.7z的压缩包:kali-linux-2024.2-vmware-amd64.7z,需要对其进行解压自己找个地方创建一个文件夹(虚拟机目录),将kali-linux-2024.2-vmware-amd64.vmwarevm整个文件夹放进去打开VMware虚拟机:文件->打开,找到kali-linux-2024.2-vmware-amd64.vmwarevm文件夹,选择的文件是.
- 解决pyinstaller打包exe后运行会弹出黑框的问题
wave_sky
服务器
解决方法是在命令末尾输入--noconsole如下pyinstaller-Fmycode.py--noconsole如果打包时想要自己设置图标需要写成pyinstaller--onefile--icon=icon.icoyour_script_name.py两者结合在一起就是pyinstaller--onefile--icon=icon.icoyour_script_name.py--nocons
- 使用Android Studio编写Python代码
海上的风浪
androidstudiopythonandroidAndroid
使用AndroidStudio编写Python代码随着移动应用的快速发展,AndroidStudio成为了开发者们首选的集成开发环境。虽然AndroidStudio主要用于开发Android应用程序,但是我们也可以在其中编写和运行Python代码。在本文中,我将详细介绍如何在AndroidStudio中编写Python代码,并附上相应的源代码。首先,确保你已经安装了AndroidStudio并且环
- 《日程管理技巧与工具推荐:如何让日程管理更有趣?》
日历应用现在手机和电脑上都有日历应用,像Google日历、苹果日历,这些都挺好用的。你可以把重要的日期、会议、活动都添加进去,还能设置提醒,到时间了就会通知你,绝对不会错过任何重要的事儿。而且这些日历应用还能同步到多个设备上,不管你用手机还是电脑,随时随地都能查看自己的日程。[]()任务管理工具任务管理工具就更厉害了,它能帮你把任务分解成具体的步骤,设置优先级、截止日期,还能实时更新任务状态。比如
- Linux 永久设置时间
微风◝
Linux系统管理linux运维服务器
1,修改Linux时间:date-s'2022-09-1222:00:00'这种方式只是临时修改系统时间,当系统重新启动的时候就会还原。2,hwclock--set--date'2022-09-1222:00:00'这是修改硬件的时间也就是永久性修改Linux的时间[root@localhost~]#hwclock--helpBusyBoxv1.23.1(2016-02-2309:52:57CST
- grafa导出数据图标_grafana dashboard的导入导出
承诺谎言
grafa导出数据图标
grafana的官方提供了很多社区或者官方设置的漂亮的dashboard,地址如下:导入图表大大节省了我们配置监控的时间,非常方便.以linuxhostoverview为例,首先确保telegraf(貌似现在telegraf+influxdb+grafana已经成为了主流,并且这个监控架构支持全windows环境部署)中的配置包含(部分参数请根据系统情况自行修改,这里不是挖坑)如下图:然后下载js
- node设置镜像源详细教程
Roc-xb
nodenode.js
在Node.js环境中,你可以通过设置npm或yarn的镜像源来加速依赖包的下载。以下是如何设置npm和yarn的镜像源的详细步骤:使用npm设置镜像源临时设置镜像源:你可以在安装包时临时指定镜像源,例如:npminstallpackage-name--registry=https://registry.npmmirror.com永久设置镜像源:你可以通过配置npm的全局配置文件来永久设置镜像源:
- 前端工程化Vue使用Node.js永久设置国内高速npm镜像源
会撸代码的懒羊羊
Nginx前端node.jsvue.js数据库npm
前端工程化Vue使用Node.js永久设置国内高速npm镜像源接续上篇错误收录,此篇通过简单配置永久设置国内高速npm镜像源方法1.更换新版镜像清空npm缓存npmcacheclean--force修改回原版镜像源或直接删除配置过的镜像源npmconfigsetregistryhttps://registry.npmjs.org/--删除镜像源npmconfigdeleteregistry更改新版
- springboot项目统一接口超时机制设计
gooluke
springboot后端java
springboot项目统一接口超时机制以及异常捕获设计因为不同的业务接口所需超时时间不同,例如上传或者下载,但是大多数接口都基本可以统一一个超时时间,同时捕获异常,方便上下游子系统设置超时时间能够包住,以及业务可以根据错误码更好地判断做对应的补偿措施,前端展示失败原因主要设计:编写BaseController,提供请求统一入口,线程池提交请求并设置超时时间,超时时间可以自定义,定义一个函数式接口
- 前端学习Day4 CSS基础笔记
Yukukiii
前端css学习
目标能够说出什么是CSS能够使用CSS基础选择器能够设置字体样式能够设置文本样式能够说出CSS的三种引入方式能够使用Chrome调试工具调试样式CSS:层叠样式表(Cascadingstylesheets)语法:写在head里面p{color:brown;//文字变色font-size:30px;//字变大background-color:blue;//背景色为蓝色width:400px;heig
- 第74节 绘制点和线条( LineTo 和 MoveTo )
川石课堂软件测试
鸿蒙系统harmonyos华为华为云华为od
在绘制曲线时,moveTo和lineTo方法本身并不直接用于绘制曲线,而是用于设置曲线的起点和可能的辅助点(尽管这些辅助点通常通过其他方法如quadraticCurveTo或bezierCurveTo来定义)。然而,你可以结合这些方法来实现一些曲线效果的模拟或作为曲线绘制过程的一部分。下面是一些使用moveTo和lineTo来间接处理曲线的场景和方法:1.分段直线近似曲线:你可以通过将曲线分割成多
- redission的原理
深圳卢先生
java
分布式锁的实现Redisson最出名的功能之一是分布式锁(RLock)。它的锁机制基于Redis的原子性操作:使用SETNX(SETifNoteXists)命令尝试获取锁,并设置一个过期时间(防止死锁)。通过Lua脚本确保锁的释放是原子性的,只有持有锁的客户端才能释放锁。支持锁续期(Watchdog机制):如果任务未完成,Redisson会自动为锁延长过期时间。实现细节1.锁的基本存储Rediss
- 23设计模式详解「全23种」
小北编程
Java精选设计模式
✍️作者简介:小北编程(专注于HarmonyOS、Android、Java、Web、TCP/IP等技术方向)博客主页:开源中国、稀土掘金、51cto博客、博客园、知乎、简书、慕课网、CSDN如果文章对您有一定的帮助请关注✨、点赞、收藏、评论。如需转载请参考【转载须知】文章目录设计模式介绍一、什么是设计模式二、设计模式表述三、设计模式分类1.创建型模式(CreationalPatterns):2.结
- WPF region多页面切换实现
得想办法娶到那个女人
wpf
在你的WPF应用程序中,如果你想要使用PRISM框架并且希望通过静态资源来定义区域名称,你可以这样做。首先,你需要确保你已经正确地设置了PRISM,并且在你的项目中定义了静态资源。步骤1:定义静态资源在App.xaml或其他资源字典文件中定义一个静态资源,用于存储区域名称。Xaml深色版本步骤2:创建扩展类创建一个扩展类来提供静态属性,该属性将用作区域名称。Csharp深色版本usingSyste
- 麒麟系统远程桌面,麒麟系统如何连接远程桌面?
浅若清风217
编辑器
在信息技术快速发展的今天,远程桌面连接已成为日常工作和生活中不可或缺的一部分。麒麟操作系统作为一款国产操作系统,其安全性和易用性受到了广泛的认可。对于需要在麒麟系统之间或与其他操作系统之间进行远程桌面连接的用户来说,了解如何设置和连接是非常重要的。本文将为您提供麒麟系统连接远程桌面的详细步骤,帮助您高效、安全地实现远程操作。下面为大家介绍IIS7服务器管理工具的使用教程。一、服务管理器工具的添加方
- stm32智能小车设计_stm32智能小车设计方案
2401_87557129
stm32单片机嵌入式硬件
externu8TIM2CH4_CAPTURE_STA;//输入捕获状态externu16TIM2CH4_CAPTURE_VAL;//输入捕获值intmain(void){u32temp=0;u32length1;u32length2;u32length3;Stm32_Clock_Init(9);//系统时钟设置delay_init(72);//延时初始化uart_init(72,9600);//
- Wpf 之Generic.xaml
白羊无名小猪
C#windowswpf
在WPF中,Generic.xaml是一个特殊的资源文件,它会被自动加载,不需要显式添加。这是WPF的命名约定。当WPF初始化自定义控件时,它会专门查找这个名字的文件。这个名字是硬编码在WPF框架中的,不能改变。Generic.xaml是WPF自定义控件的默认样式位置,只要满足以下条件就会自动加载:文件名必须是Generic.xaml文件必须在Themes文件夹下控件必须正确设置DefaultSt
- Python常见面试题的详解10
ylfhpy
python开发语言面试
1.哪些操作会导致Python内存溢出,怎么处理?要点1.创建超大列表或字典:当我们一次性创建规模极为庞大的列表或字典时,会瞬间占用大量的内存资源。例如,以下代码试图创建一个包含10亿个元素的列表,在执行这段代码时,由于需要为这10亿个整数分配内存空间,很容易就会导致内存溢出错误。pythonhuge_list=[iforiinrange(10**9)]2.递归深度过大:递归函数在没有正确设置终止
- git操作全解
洗澡的一条鱼
gitgitgithub
全面详细精解~Git常用命令仓库#在当前目录新建一个Git代码库$gitinit#新建一个目录,将其初始化为Git代码库$gitinit[project-name]#下载一个项目和它的整个代码历史$gitclone[url]配置#显示当前的Git配置$gitconfig--list#编辑Git配置文件$gitconfig-e[--global]#设置提交代码时的用户信息$gitconfig[--g
- 多体动力学仿真软件:SolidWorks Motion_(9).仿真参数设置
kkchenjj
多体动力学仿真模拟仿真仿真模拟多体动力学
仿真参数设置在多体动力学仿真软件中,仿真参数的设置是确保仿真结果准确性和可靠性的关键步骤。合理的参数设置不仅能够提高仿真的效率,还能确保仿真过程中的物理行为符合实际。本节将详细介绍如何在SolidWorksMotion中设置仿真参数,包括时间步长、求解器选择、收敛标准、接触和摩擦参数等。时间步长时间步长是仿真过程中每个时间点的间隔。选择合适的时间步长对于仿真过程的稳定性和准确性至关重要。时间步长过
- 51单片机键盘接口-独立按键和矩阵按键
学习少年的天空
单片机单片机
51单片机键盘接口-独立按键和矩阵按键按键的分类键输入原理独立式键盘矩阵键盘消抖键码识别键盘程序按键的分类按键按照结构原理可分为两类:一类是触点式开关按键,如机械开关、导电橡胶开关等;一类是无触点式开关按键,如电气式按键、磁感应按键等。单片机应用系统的键盘大都采用机械式按键。键输入原理键盘的按键都是以其状态来设置控制功能或输入数据的。当某个键按下时,计算机应用系统应完成对按键的识别及所设定的功能。
- 性能测试丨JMeter 分布式加压机制
霍格沃兹测试开发学社测试人社区
jmeter分布式测试开发软件测试
JMeter的分布式加压机制允许在多台机器上同时运行测试,以模拟更高的负载。以下是其工作原理和配置步骤:1.分布式架构主节点(Controller):负责管理测试计划、分发任务和收集结果。从节点(Slave):执行主节点分配的测试任务并返回结果。2.配置步骤主节点配置安装JMeter:在主节点和所有从节点上安装相同版本的JMeter。配置主节点:编辑jmeter.properties文件,设置re
- Git 常用指令及其说明
浪九天
项目管理工具git源代码管理
配置相关#配置全局用户名gitconfig--globaluser.name"YourUsername"#配置全局邮箱gitconfig--globaluser.email"
[email protected]"说明:这两条命令用于设置Git全局的用户名和邮箱,在提交代码时,这些信息会被记录在提交历史中,用于标识提交者。仓库初始化#在当前目录初始化一个新的Git仓库gitinit说明:执行
- Flink连接kerberos认证的hive 并使用table API
lisacumt
flinkhive大数据
有个问题flink的kerveros通过配置设置。但是HiveCatalog还需要再次使用UserGroupInformation再次认证。直接上代码:importcom.amihaiemil.eoyaml.*;importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;importorg.apa
- 【CI/CD】CI/CD环境搭建流程和持续集成环境配置
Karoku066
ci/cd云原生prometheuskubernetes运维容器
文章目录CI/CD环境搭建流程一、GitLab安装与配置1.环境准备2.安装依赖3.下载安装GitLab4.修改配置5.应用配置并启动6.初始化设置二、GitLab项目管理1.创建群组与项目2.用户管理3.上传代码三、Jenkins安装与配置1.安装JDK172.安装Jenkins3.修改配置4.启动服务5.插件管理6.初始设置四、Maven安装与配置1.安装Maven2.配置镜像源3.Jenki
- css 设置svg文字的对齐方式。右对齐
草字
Csscss前端
设置svg文字的对齐方式:左中右text-anchor:start;text-anchor:middle;text-anchor:end;相关教程:SVG文本|菜鸟教程
- cosyvoice自用的代码
PyAIGCMaster
我买了个服务器人工智能
importsyssys.path.append('third_party/Matcha-TTS')fromcosyvoice.cli.cosyvoiceimportCosyVoice,CosyVoice2fromcosyvoice.utils.file_utilsimportload_wavimporttorchaudioimportonnxruntimeasort#设置使用GPUort.set
- 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