- Windows Docker Desktop 无法启动报错 Docker Desktop is shutting down 的可能解决办法
Bruce-li__
Dockerdocker容器运维
直接把整个AppData\Roaming\Docker目录删了,然后立刻就好了……这里还有一些其他的解决方案,Docker社区论坛也供参考:检查一下daemon.json配置文件是否有问题https://forums.docker.com/t/solved-docker-failed-to-start-docker-desktop-for-windows/106976
- Vue2 - 详解实现网站使用企业微信二维码扫描登录,企业微信授权第三方网站接入企业微信登陆功能,扫二维码登录后获取用户信息,登录页展示企业微信二维码或iframe新开一页或弹框,解决各种报错登录失败
王二红
+Vue企业微信网站授权企业微信扫码登录最新vue2.jsnuxt2.js如何在新窗口弹出企业微信二维码解决显示报错回调错误无法渲染vue企业微信扫一扫二维码登录
前言如果您需要Vue3版本,请访问这篇文章。在vue2|nuxt2网站开发中,详解实现网页集成使用“企业微信扫一扫登录”功能,用户使用手机企业微信app扫描网站的登录二维码后,获取用户身份信息及号码并完成授权登录教程,新手小白完整流程及示例运行代码,支持多种企业微信二维码“展现方式”,可构造独立窗口登录二维码(iframe一个小弹框网页窗口或浏览器新页签全屏展示)、内嵌登录二维码(放到弹框组件中或
- 【C++动态库】DLL动态库加载失败导致程序启动报错以及DLL库加载失败的常见原因分析与总结
dvlinker
C/C++实战专栏C/C++软件开发从入门到实战dll动态库隐式加载动态加载加载失败LoadLibraryEx动态库找不到接口找不到
目录1、问题说明2、dll库的隐式加载与动态加载2.1、dll库的隐式加载2.2、dll库的显式加载3、使用ProcessExplorer查看进程加载的dll库信息以及动态加载的dll库有没有加载成功3.1、使用ProcessExplorer查看进程加载的dll库信息3.2、使用ProcessExplorer查看动态启动的库有没有加载成功4、dll库加载失败原因详细分析与说明4.1、dll位数与依
- tiny linux: 内核精简的根文件系统制作
SunliyMonkey
一一『操作系统』tinylinuxqemubusybox根文件系统
tinylinuxtiny_linux要求实现以下两点:精简linux内核镜像,要求在支持TCP/IP数据传输的情况下,内核镜像和正常运行所需内存能够做到尽可能的小。采用busybox制作根文件系统,利用kernelmodelinux补丁,使得busybox运行在内核态。欢迎访问tiny_linux,这里有编译好的内核镜像,根文件系统镜像以及相关脚本,供大家使用。涉及知识点qemu使用linux内
- Spring Boot 启动报错:Field testMapper in *** required a bean of type ‘***‘ that could not be found.
测试开发小白变怪兽
服务端
SpringBoot工程构建时报错:ErrorstartingApplicationContext.Todisplaytheconditionsreportre-runyourapplicationwith'debug'enabled.2021-03-2310:10:52.451ERROR55881---[main]o.s.b.d.LoggingFailureAnalysisReporter:**
- socket.io netty java,netty-socketio启动报错
weixin_39726131
socket.ionettyjava
io.netty.channel.ChannelException:UnabletocreateChannelfromclassclassio.netty.channel.socket.nio.NioServerSocketChannelatio.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.j
- mysql安装启动报错_mysql安装/启动报错汇总
weixin_29179583
mysql安装启动报错
2016/9/6补充初始化报错:#/usr/local/mysql/scripts/mysql_install_db--user=mysql--basedir=/usr/local/mysql/--datadir=/data/mysqldb/InstallingMySQLsystemtables...2016-09-0617:29:160[Warning]TIMESTAMPwithimplicit
- docker启动报错:Job for docker. service failed because the control process exited with error code
奇怪的大象
javadocker容器运维intellij-ideajava
1、在使用systemctlstartdocker时,一直报错,如下图。试了网上的方法:**a、修改docker.service文件;b、在daemon.json中增加代码,**都不能解决我遇到的情况。2、经过不懈努力,终于找到办法。在/etc/docker文件目录下,找到daemon.json,这个文件是我们在安装时创建的,如果没有的话,使用mkdir/etc/docker&&touchdaem
- 项目报错 SyntaxError: Unexpected token ‘??=‘ 和node-sass报python错误;nuxt、vue项目
院人冲冲冲
前端javascript开发语言
前提:node14.21.3项目报错SyntaxError:Unexpectedtoken'??='1.仔细看错误代码位置,发现是在node_modules文件中(找来源)2.node_modules文件报错Unexpectedtoken'??='15:59:58constlist=obj[list]??=[];^^^SyntaxError:Unexpectedtoken'??='atnewScr
- Linux的TTY子系统(TTY框架)的重要结构体termios的详解(串口通信参数的配置)
昊虹AI笔记
嵌入式Linux系统linux
前言通常,我们开发串口驱动和应用时,就是以Linux的TTY子系统(TTY框架)为基础进行的,而TTY子系统(TTY框架)的结构体termios就与串口通信参数的配置紧密相关,所以这篇博文就对结构体termios进行详解。structtermios是LinuxTTY(终端)子系统用于配置串口终端设备的结构体,位于头文件中。它用于设置串口通信参数,如波特率、数据位、校验位、控制模式等。1.termi
- 【前端】【nuxt】几种在 Nuxt 客户端使用console的方式
患得患失949
Nuxt面试考题专栏(前后端)前端Nuxtconsole.log客户端
方法1:在Vue生命周期钩子中使用只在客户端执行的钩子(如mounted)中打印:exportdefault{mounted(){console.log('仅在客户端显示',this.$route.path)}}方法2:通过环境判断使用process.client判断当前环境:if(process.client){console.log('客户端环境变量:',process.env.NODE_EN
- nuxt vue websocket接入
maybe啊
vue.jswebsocket前端
import{Component,Vue}from"vue-property-decorator";importAxiosfrom'axios'//当前长链接的实例exportletwsInstance:WebSocket|null=nullexporttypeStateType='connecting'|'connected'|'closing'|'closed'//检查长链接状态exportf
- nuxt2 打包优化使用“compression-webpack-plugin”插件
webYin
nuxtwebpack前端node.js
在使用Nuxt.js构建项目时,为了提高性能,通常会考虑对静态资源进行压缩。compression-webpack-plugin是一个常用的Webpack插件,用于在生产环境中对文件进行Gzip压缩。这对于减少网络传输时间和提高页面加载速度非常有帮助。下面是如何在Nuxt.js项目中配置compression-webpack-plugin的步骤:1.安装compression-webpack-pl
- Zabbix启动后访问报错502 Bad Gateway
奔跑吧邓邓子
常见问题解答(FAQ)gatewaynginxzabbix
提示:“奔跑吧邓邓子”的常见问题专栏聚焦于各类技术领域常见问题的解答。涵盖操作系统(如CentOS、Linux等)、开发工具(如AndroidStudio)、服务器软件(如Zabbix、JumpServer、RocketMQ等)以及远程桌面、代码克隆等多种场景。针对如远程桌面无法复制粘贴、Kubernetes报错、自启动报错、各类软件安装报错、内存占用问题、网络连接问题等提供了详细的问题描述与有效
- RustDesk开源远程桌面工具部署【图文详解】
岚天start
开源云原生ruskdesk桌面远程远程
目录1.服务端安装1.1服务器环境1.2安装docker1.3配置docker加速器1.4安装docker-compose2.客户端安装3.映射或防火墙配置4.客户端配置1.服务端安装1.1服务器环境[root@test~]#cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)[root@test~]#uname-aLinuxtest3.10
- nuxt、vue树形图d3.js
小一梦
vueNuxtjavascriptvue.js前端nuxt.js
直接上代码//安装npmid3--saveimport*asd3from"d3";exportdefault{props:{data:Object,nodeWidth:{type:Number,default:340,},nodeHeight:{type:Number,default:40,},active:{type:String,default:"",},},data(){return{id:
- SpringBoot 启动报错 Sactive: @spring.profiles.active@
JefferyAnd
springspringboot后端
org.yaml.snakeyaml.scanner.ScannerException:whilescanningforthenexttokenfoundcharacter'@'thatcannotstartanytoken.(Donotuse@forindentation)in'reader',line25,column13:active:@spring.profiles.active@^解决办
- Nginx给Vue和Java后端做代理
入职啦
实战项目知识vue.jsnginxjava
本文发表于入职啦(公众号:ruzhila)可以访问入职啦查看更多技术文章网站架构入职啦采用了Nuxt.js、Vue3、Go的混合架构开发,包括了官网、简历工具、职位搜索、简历搜索等功能。为三个部分:官网:采用Nuxt.js+Vue3+TailwindCSS开发,属于SSR渲染简历工具:采用Vue3+TailwindCSS开发,属于SPA渲染后端:采用Gin+Gorm+MySQL开发,提供API接口
- 视频教育网站开源系统的部署安装 (roncoo-education)服务器为ubuntu22.04.05
浪淘沙jkp
开源AlmaLinux视频教育网
一、说明前端技术体系:Vue3+Nuxt3+Vite5+Vue-Router+Element-Plus+Pinia+Axios后端技术体系:SpringCloudAlibaba2021+MySQL8+Nacos+Seata+Mybatis+Druid+redis后端系统:roncoo-education(核心框架:SpringCloudAlibaba):码云|Github门户系统:roncoo-e
- vue3 - 最新详细实现上传视频后智能截取多张封面图功能教程,视频上传截取多帧画面并生成jpg/png图片展示和供用户选取,vue如何截取获取视频画面任意一帧、第一帧、几帧(当做视频封面,详细代码
街尾杂货店&
前端组件与功能(开箱即用)vue3.jsvide视频截取第一帧作为封面获取视频长度并分段截取某几帧vue获取整个视频的某几个画面把视频画面截取生成图片教程视频上传后截取指定某帧并导出nuxt3.js截取视频
效果图在vue3、nuxt3项目开发中,详解实现从上传的视频中“智能分段截取”多帧图片,并且生成图片展示由用户选择其中一张作为封面的需求,获取用户上传视频的部分画面,video视频组件如何截取里面的图片画面,vue3捕获视频中的截图用于视频封面的详细教程,支持截取视频的某一帧、多帧、固定秒数的帧画面、自动应用封面等,多维度根据视频长度智能分段截取,类似各大短视频平台用户上传视频后自动截取几帧画面,
- 阿里微服务注册中心 Nacos 启动报错 Unable to start embedded Tomcat
FH-Admin
Nacosspringbootspringcloudjava
报错内容如下org.springframework.context.ApplicationContextException:Unabletostartwebserver;nestedexceptionisorg.springframework.boot.web.server.WebServerException:UnabletostartembeddedTomcatatorg.springfram
- mac下载nacos启动报错
总是幸福的老豌豆
日常工作总结macosjavaspring
前言今天下载nacos后,启动报错错误信息如下org.springframework.context.ApplicationContextException:Unabletostartwebserver;nestedexceptionisorg.springframework.boot.web.server.WebServerException:UnabletostartembeddedTomca
- nacos启动报错Unable to start embedded Tomcat
xsj_592523829
javajavaspringboot
项目场景:准备使用nacos做配置中心,版本1.3.1(官方推荐稳定版本–2021-01-11)mysql版本:5.7版本(听说5.8改动很大),否则运行不了nacos-mysql.sql文件JDK版本:1.8.0_144(版本低了也不行)问题描述:1、本地idea运行springcloudalibabanacos源码报错UnabletostartembeddedTomcatorg.springf
- nuxt常用组件库html-validator应用解析
垣宇
vue.js
html-validator主要用于自动验证nuxt服务器呈现的HTML(SSR和SSG),以检测可能导致水合错误的HTML常见问题,有助于减少水合错误,检测常见的可访问性错误。安装npxnuxi@latestmoduleaddhtml-validator配置若自动更新nuxt.config.ts配置文件失败,可手动添加下面代码:nuxt3defineNuxtConfig({modules:['@
- Linux 测试必须知道的命令
那片海还在吗
testlinux
Linux测试必须知道的命令一、系统信息查看命令1.1uname-查看系统基本信息作用:用于显示系统的相关信息,如内核名称、主机名、内核版本等。常用参数及示例-a:显示所有信息。uname-a#输出示例:Linuxtest-server5.4.0-109-generic#123-UbuntuSMPFriApr2116:52:16UTC2023x86_64x86_64x86_64GNU/Linux1
- Vue2 - 判断接口返回的二进制文件流 Blob 是二进制文件流对象还是 JSON 错误提示信息,当请求设置 responseType: blob 时捕获后端状态码返回的是可下载文件还是下载失败提示
王二红
+Vuevue2判断blob对象是否是文件流调接口拿文件流下载后是jsonvue下载二进制文件流blob下载文件流怎么知道接口返回错成功还是失败都是blob对象是文件就下载
前言如果您需要Vue3版本教程,请访问这篇文章。在vue2|nuxt2项目开发中,解决下载Blob二进制文件流对象时,无法区分是正常文件流还是错误的json数据信息问题,默认无论成功还是失败永远返回blob对象,但使用本方法后,您可以轻松判断接口返回了【二进制文件流】还是【失败对象错误信息】。如下图所示(调用同一个接口),当是正常的文件流时进行下载,否则就用接口返回的错误信息提示用户,当把请求re
- Docker_启动redis,容易一启动就停掉
weixin_40877388
dockerdockerredis容器
现象以及排查过程最近在使用docker来搭建redis服务,但是在启动redis哨兵容器时,总是发现这个容器启动后立马就停止了。首先想到的是不是服务器资源不够用了导致的这个现象,排查后发现不是资源问题。再者猜测是不是启动报错了,查看log后,发现启动正常,且在启动完成后redis服务就停掉了。最后分析应该是redis容器的问题。Docker需要一个前台进程要保证Docker容器的运行,必须需要一个
- 基于nodejs+vuetify3+ts+nuxt框架集成模块组件解析-seo优化第二章节+
垣宇
开发框架/组件vue.jsnode.jstypescriptvscodexhtml中间件性能优化
一.身份验证请参考身份验证二.SEO优化+谷歌等开源文档示例SEO优化第一章节三.SEO优化第二章节1.Schema.org介绍nuxt提供的Schema.org可能不会提供直接的排名提升,但它允许您在搜索结果中呈现丰富的片段。丰富的片段已经被证明可以提高点击率,并在用户点击你的网站之前为他们提供更多的信息。Schema.org提供了一个简单的API来为您的next应用程序构建Schema.org
- Vite 和 Webpack 的区别和选择
垣宇
开发框架/组件webpack前端node.js
简介Nuxt3默认使用Vite作为构建工具,但也可以配置为使用Webpack。关于两者的区别和详细结构化解析可以参考文章:vite和webpack底层逻辑差异两者实例化案例可以参考文章:Webpack和Vite插件的开发与使用_vite使用webpack-CSDN博客简而言之,Vite和Webpack的区别和选择Vite:优点:Vite提供闪电般的热模块替换(HMR),开发体验极佳。它使用
- 使用yarn创建Nuxt项目报错,改用npm命令
rock——you
npmchrome前端
[email protected]'tfindapackage.jsonfilein"/Users/baoge/WebstormProjects/windowshost.nuxt"infoVisithttps://yarnpkg.com/en/docs/cli/runfordocumentationabo
- 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