- 聊聊SpringBoot事件机制
沉梦听雨.
#消息队列springboot后端java
SpringBoot事件机制使用背景考虑到部分项目对消息队列的要求不高,又不想引入额外部署的消息队列,这时候就可以使用SpringEvent实现【内存】级别的消息队列。简单介绍Spring基于观察者模式,实现了自身的事件机制,由三部分组成:事件ApplicationEvent:通过继承它,实现自定义事件。另外,通过它的source属性可以获取事件源,timestamp属性可以获得发生时间。事件发布
- 深度解析:Oracle数据库SYSDATE到PostgreSQL数据库最佳转换
数据和云
本文讨论了在AmazonRDS和Aurora中使用PostgreSQL数据库时,与日期/时间相关的函数,并确定PostgreSQL数据库里的clock_timestamp()函数与Oracle中的SYSDATE函数最匹配。同时我们可以自定义基于clock_timestamp()的改进函数(设置迁移的Oracle数据库服务器时区),具体参考“建议”部分中所述。作者:BajiShaikandSudip
- 【mongodb】mongodb的字段类型
王佑辉
mongodbmongodb
目录1.基本数据类型1.1String1.2Number1.3Boolean1.4Date1.5Null1.6ObjectId1.7Array1.8BinaryData1.9Object2.特殊数据类型2.1RegularExpression2.2JavaScript2.3Symbol2.4Decimal1282.5Timestamp2.6MinKey/MaxKey2.7DBPointer3.常用
- Elixir语言的数据类型
常清瑶
包罗万象golang开发语言后端
Elixir语言的数据类型详解Elixir是一种基于Erlang虚拟机(BEAM)构建的函数式编程语言,主要用于构建并发、分布式和容错的应用程序。Elixir的设计理念使得它非常适合于构建大规模、高可用的系统。在Elixir中,数据类型是语言的基石之一,理解这些数据类型对于编写高效且正确的Elixir程序至关重要。本文将深入探讨Elixir中的基本数据类型,包括:原子、数字、字符串、列表、元组、图
- Elixir语言的函数定义
淳于韻珊
包罗万象golang开发语言后端
Elixir语言的函数定义Elixir是一种基于Erlang虚拟机(BEAM)的函数式编程语言,因其并发特性及可扩展性而受到广泛欢迎。在Elixir中,函数是程序的基本构建块,了解如何定义和使用函数对于掌握这门语言至关重要。本文将深入探讨Elixir语言的函数定义,包括函数的基本语法、参数处理、模式匹配、高阶函数、递归等。希望通过这篇文章能够为学习Elixir的开发者提供一个全面的指南。一、函数基
- 时间戳格式转换鸿蒙示例代码
本文原创发布在华为开发者社区。介绍本示例展示了一个日期格式转化的Demo,其功能为将一个时间戳转换为当前的时间。时间戳格式转换源码链接效果预览使用说明输入要格式化的时间,组件会实时更新格式化后的时间。实现思路构造formatDate方法。formatDate(timestamp:number,format='yyyy-mm-dd'){letres="";try{constdate=newDate(
- 时间戳格式转换鸿蒙示例代码
本文原创发布在华为开发者社区。介绍本示例展示了一个日期格式转化的Demo,其功能为将一个时间戳转换为当前的时间。时间戳格式转换源码链接效果预览使用说明输入要格式化的时间,组件会实时更新格式化后的时间。实现思路构造formatDate方法。formatDate(timestamp:number,format='yyyy-mm-dd'){letres="";try{constdate=newDate(
- Python标准库time深度解析:从基础到高阶应用
Aerkui
python基础python开发语言
一、time模块概述time模块是Python处理时间的核心标准库,提供了各种时间相关的函数。它主要包含三类功能:时间获取与表示(time()、ctime()、gmtime()等)时间格式化(strftime()、strptime())程序控制(sleep())二、核心函数详解1.时间获取函数importtime#1.时间戳(自1970-01-0100:00:00UTC起的秒数)timestamp
- Mybatis配置问题(Type handler was null)
喻卿卿
前后端分离项目java开发语言
1、Typehandlerwasnull这个问题可能是因为你的User类中createdAt字段的类型是java.security.Timestamp,但MyBatis默认不支持这种非标准类型。通常应该使用java.util.Date或java.sql.Timestamp。2、错误:Preparing:update`users`setusername=?,password=?,email=?,ro
- RabbitMQ消息队列
临桥
rabbitmq分布式
一:RabbitMQ介绍RabbitMQ是一款在全球范围内使用非常广泛的开源消息队列中间件。它轻量级、易部署、并支持多种协议。它基于Erlang开发,天生拥有高并发的能力。1:RabbitMQ相关术语(1)生产者产生消息的进程或服务(2)消费者接收消息的进程或服务(3)队列RabbitMQ是消息队列中间件,而真正储存消息数据的就是队列,队列可以有很多。(4)交换器类似于网络设备交换机,它可以根据不
- RabbitMQ安装与使用教程(含Spring Boot整合)
Kale又菜又爱玩
java-rabbitmqrabbitmqspringboot
RabbitMQ安装与使用教程(含SpringBoot整合)一、RabbitMQ简介RabbitMQ是一个开源的消息代理软件,实现了高级消息队列协议(AMQP),在分布式系统中广泛用于异步通信、解耦组件以及流量削峰等场景。它支持多种消息模式,如点对点、发布/订阅等,具备高可靠性、可扩展性和丰富的功能特性。二、RabbitMQ安装1.安装Erlang环境RabbitMQ是用Erlang语言编写的,因
- Erlang语言的游戏引擎
阮瑭雅
包罗万象golang开发语言后端
Erlang语言的游戏引擎:架构与应用引言在游戏开发的世界里,选择合适的编程语言和引擎是至关重要的。随着技术的发展,越来越多的开发者开始探索不同的语言与引擎组合。在众多的选择中,Erlang语言由于其独特的并发性、高可用性和分布式特性,逐渐被认可为游戏开发中的一匹黑马。本文将深入探讨Erlang语言的游戏引擎,包括其架构、优缺点、以及在实际游戏开发中的应用案例。一、Erlang语言简介Erlang
- linux删除指定日志文件的通用脚本
药尘师
常用工具类前端javascript
linux删除指定日志文件的通用脚本#!/bin/sh#获取删除文件目录MAIN_DIR="/home/user_shell/"DELETE_TIME=`date+%Y-%m-%d\%H:%M:%S`#获取近五天前日期TIMESTAMP1=`date+"%Y-%m-%d"-d"-4days"`TIMESTAMP2=`date+"%Y-%m-%d"-d"-3days"`TIMESTAMP3=`dat
- rabitemq php,rabbitmq详解,什么是rabbitmq?支持哪些编程语言?
Cookie Young
rabitemqphp
关于rabbitmq你了解吗?那么究竟什么是rabbitmq?rabbitmq又支持哪些编程语言呢?下面就一起和小编来了解一下这几个方面的内容吧。一、rabbitmq是什么?rabbitmq其实就是一套开源的消息队列服务软件。它是由LShif提供的一个AdvancedMessageQueuingProtocol(AMQP)的开源实现,由以高性能、健壮以及可伸缩性出名的Erlang写成。二、rabb
- WebView加载URL时添加时间戳可以防止缓存问题方案
高林雨露
androidwebview
在WebView加载URL时添加时间戳可以防止缓存问题,以下是实现方法:1.对于加载网页URL的情况:MainActivity.java//...existingcode...StringoriginalUrl="https://example.com/page.html";StringurlWithTimestamp=originalUrl+(originalUrl.contains("?")?
- Linux系统安装RabbitMQ
awei0916
AIlinuxrabbitmqruby运维
本文主要讲解Linux系统安装rabbitmq服务一、使用YUM存储库进行安装1.导入签名密钥##primaryRabbitMQsigningkeyrpm--import'https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc'##modernErlangrepo
- Docker学习--容器操作相关命令--docker logs 命令
geek_super
docker
dockerlogs命令的作用:用于获取和查看容器的日志输出,非常有用,可以帮助用户调试和监控运行中的容器。语法:dockerlogs[参数选项]CONTAINER(要操作的容器)。参数解释:-f,--follow:跟随日志输出(类似于tail-f)。–since:从指定时间开始显示日志。-t,--timestamps:显示日志时间戳。–tail:仅显示日志的最后部分,例如--tail10显示最后
- vue项目上线后强制清除缓存
babywenever
vue.js前端javascript
有时前端代码上线后,用户无法获取最新的代码显示,需要清除浏览器缓存,比较麻烦。我们可以通过给打包编译后的js文件、css文件名称添加时间戳来达到用户刷新时重新获取最新的js、css文件,进而获得最新代码vue.config.js文件lettimeStamp=newDate().getTime();module.exports={filenameHashing:false,configureWebp
- centos 配置 rabbitmq环境(zookeeper单机环境配置)
hongdu_dudua1
javajavazookeeperrabbitmqerlangcentos
在安装环境之前,相信已经了解了为什么要使用中间件?以及使用中间件的好处?主要优势:1:系统解耦2:异步调用3:容纳流量中间件的主要用来:存储消息和转发消息的,这个消息可以定义为通信载体--》通信载体可以定义为任何的请求报文和响应报文。rabbitmq使用erlang语言开发,所以无论在哪个系统上面,想要使用rabbitmq中间件,必须先安装依赖erlang。安装过很多次erlang和mq,但是最后
- python---linux系统CPU、内存、磁盘监控,钉钉告警
大眼、不聚光
pythonpythonlinux钉钉
使用以下公式生成签名:importtimeimporthmacimporthashlibimportbase64timestamp=str(int(time.time()*1000))secret='你的加签密钥'string_to_sign=timestamp+"\n"+secrethmac_code=hmac.new(secret.encode('utf-8'),string_to_sign.
- 【RabbitMQ】Linux安装RabbitMQ详细步骤
杰肥啊
RabbitMQrabbitMqlinux系统centos消息队列rpm
RabbitMQ安装本次演示的安装步骤是RabbitMQ在Linux上的安装第一步:根据自己的linux版本下载对应的rpm包erlang-18.2-1.el7.centos.x86_64.rpm网址:http://www.rabbitmq.com/releases/erlang首先先安装erlang的包,因为我的版本是centos6.8.x86_64,所以下载的是这个erlang包。rabbit
- Oracle数据库数据编程SQL<2.1 DDL、DCL表、列及约束>
Tyler先森
Oracle数据库oraclesql
目录一、对表的操作(一)复制表1、语法2、练习3、仅复制表格式--在where后加一个不成立的条件(二)自建表1、数据类型(1)字符类型:char2、varchar/varchar2char(数)固定长度类型varchar/varchar2(数)可变长度类型(2)数值类型:number、intnumber(数1,数2)int(数)(3)日期类型:date、timestampdate不用加长度tim
- nginx-rtmp-module之ngx_rtmp_live_module.c代码详解
音视频牛哥
流媒体服务器大牛直播SDK软件开发nginxc语言ffmpeg运维nginxrtmp代码nginxrtmp服务器大牛直播SDK
ngx_rtmp_live_module.h头文件分析这个头文件定义了直播模块相关的结构体、函数声明和一些常量,主要用于支持RTMP协议中的直播流。1.核心数据结构:ngx_rtmp_live_chunk_stream_t:该结构体用于表示一个数据流中的“块”,包含:active:标记该块是否处于活动状态。timestamp:数据块的时间戳。csid:流的标识符。dropped:表示被丢弃的字节数
- 使用 Chromedp 监听网页请求和响应
Clown95
go#go爬虫gochromedp
使用Chromedp监听网页请求和响应在进行网络爬虫的时候,有很多网站都有反爬机制,比如你想抓点数据,结果发现每次请求都带一堆奇奇怪怪的参数——什么timestamp签名、AES加密的字段,还有各种Token令牌,跟密码本似的。你直接看网页源代码吧,那些JS代码被混淆得亲妈都不认识,像一团乱麻似的根本理不清头绪。这时候我们可以使用chromedp来监听网页请求,它的核心价值在于:第一不用费劲巴拉地
- Flink 源码解读系列 DataStream 带 Watermark 生成的时间戳分配器
@SmartSi
Flink源码解读Flinkflinkjava大数据Watermark
传送门:Flink系统性学习笔记Flink1.10这篇文章主要从源码角度讲一下FlinkDataStream中带Watermark生成的时间戳分配器。我们通常通过DataStream的assignTimestampsAndWatermarks方法分配时间戳并生成Watermark。assignTimestampsAndWatermarks方法可以传入两种时间戳分配器:周期性生成Watermark的
- tar包部署rabbitMQ
TheBiiigBlue
Linuxrabbitmqruby分布式
部署erlang:有网使用:sudoapt-getupdatesudoapt-getinstalllibncurses5-devlibncursesw5-devsudoyuminstallncurses-devel无网使用tarzxvfncurses.tar.gzmkdirncursescdncurses-6.3/./configure--with-shared--without-debug--w
- Elixir语言的学习路线
2401_90032081
包罗万象golang开发语言后端
Elixir语言的学习路线Elixir是一种动态、通用的编程语言,特别适合用于构建可扩展和维护性强的应用程序。它基于Erlang虚拟机(BEAM),因其高并发性和容错能力而广受欢迎。近年来,Elixir在Web开发(特别是与Phoenix框架结合使用时)和分布式系统中逐渐获得了越来越多的关注。如果你对Elixir感兴趣,想要深入学习,本文将为你提供一条系统的学习路线。一、基础知识1.1理解编程语言
- 探索未来编程的奇境:Fancy编程语言
蒋素萍Marilyn
探索未来编程的奇境:Fancy编程语言fancyFancyisadynamic,object-orientedprogramminglanguageinspiredbySmalltalk,Ruby,IoandErlangthatrunsontheRubiniusVM.项目地址:https://gitcode.com/gh_mirrors/fa/fancy在浩瀚的编程语言星空中,有一种名为Fancy
- oracle 时间格式化 to——datetime,精通 Oracle+Python,第 2 部分:处理时间和日期
照月鱼yoyi
oracle时间格式化to——datetime
作者:PrzemyslawPiotrowskiOracle和Python的日期处理介绍2007年9月发布从Python2.4版开始,cx_Oracle自身可以处理DATE和TIMESTAMP数据类型,将这些列的值映射到Python的datetime模块的datetime对象中。因为datetime对象支持原位的运算操作,这可以带来某些优势。内置的时区支持和若干专用模块使Python成为一台实时机器
- K8S遇到过的比较深刻的Pod问题
Gold Steps.
技术博文分享kubernetes容器云原生故障处理
第一案:Pod集体自杀凌晨12点的告警总是格外刺眼。值班群里突然炸出一连串消息:"支付服务全部下线!但Pod日志显示一切正常!"运维组赶到战场时,发现大量Pod像多米诺骨牌般接连消失,监控面板上却全是绿色对勾。错误排查:#查看案发时间线kubectlgetevents--sort-by='.lastTimestamp'|grep-ikilled#查看Pod详细信息kubectldescribepo
- 基本数据类型和引用类型的初始值
3213213333332132
java基础
package com.array;
/**
* @Description 测试初始值
* @author FuJianyong
* 2015-1-22上午10:31:53
*/
public class ArrayTest {
ArrayTest at;
String str;
byte bt;
short s;
int i;
long
- 摘抄笔记--《编写高质量代码:改善Java程序的151个建议》
白糖_
高质量代码
记得3年前刚到公司,同桌同事见我无事可做就借我看《编写高质量代码:改善Java程序的151个建议》这本书,当时看了几页没上心就没研究了。到上个月在公司偶然看到,于是乎又找来看看,我的天,真是非常多的干货,对于我这种静不下心的人真是帮助莫大呀。
看完整本书,也记了不少笔记
- 【备忘】Django 常用命令及最佳实践
dongwei_6688
django
注意:本文基于 Django 1.8.2 版本
生成数据库迁移脚本(python 脚本)
python manage.py makemigrations polls
说明:polls 是你的应用名字,运行该命令时需要根据你的应用名字进行调整
查看该次迁移需要执行的 SQL 语句(只查看语句,并不应用到数据库上):
python manage.p
- 阶乘算法之一N! 末尾有多少个零
周凡杨
java算法阶乘面试效率
&n
- spring注入servlet
g21121
Spring注入
传统的配置方法是无法将bean或属性直接注入到servlet中的,配置代理servlet亦比较麻烦,这里其实有比较简单的方法,其实就是在servlet的init()方法中加入要注入的内容:
ServletContext application = getServletContext();
WebApplicationContext wac = WebApplicationContextUtil
- Jenkins 命令行操作说明文档
510888780
centos
假设Jenkins的URL为http://22.11.140.38:9080/jenkins/
基本的格式为
java
基本的格式为
java -jar jenkins-cli.jar [-s JENKINS_URL] command [options][args]
下面具体介绍各个命令的作用及基本使用方法
1. &nb
- UnicodeBlock检测中文用法
布衣凌宇
UnicodeBlock
/** * 判断输入的是汉字 */ public static boolean isChinese(char c) { Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
- java下实现调用oracle的存储过程和函数
aijuans
javaorale
1.创建表:STOCK_PRICES
2.插入测试数据:
3.建立一个返回游标:
PKG_PUB_UTILS
4.创建和存储过程:P_GET_PRICE
5.创建函数:
6.JAVA调用存储过程返回结果集
JDBCoracle10G_INVO
- Velocity Toolbox
antlove
模板toolboxvelocity
velocity.VelocityUtil
package velocity;
import org.apache.velocity.Template;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.c
- JAVA正则表达式匹配基础
百合不是茶
java正则表达式的匹配
正则表达式;提高程序的性能,简化代码,提高代码的可读性,简化对字符串的操作
正则表达式的用途;
字符串的匹配
字符串的分割
字符串的查找
字符串的替换
正则表达式的验证语法
[a] //[]表示这个字符只出现一次 ,[a] 表示a只出现一
- 是否使用EL表达式的配置
bijian1013
jspweb.xmlELEasyTemplate
今天在开发过程中发现一个细节问题,由于前端采用EasyTemplate模板方法实现数据展示,但老是不能正常显示出来。后来发现竟是EL将我的EasyTemplate的${...}解释执行了,导致我的模板不能正常展示后台数据。
网
- 精通Oracle10编程SQL(1-3)PLSQL基础
bijian1013
oracle数据库plsql
--只包含执行部分的PL/SQL块
--set serveroutput off
begin
dbms_output.put_line('Hello,everyone!');
end;
select * from emp;
--包含定义部分和执行部分的PL/SQL块
declare
v_ename varchar2(5);
begin
select
- 【Nginx三】Nginx作为反向代理服务器
bit1129
nginx
Nginx一个常用的功能是作为代理服务器。代理服务器通常完成如下的功能:
接受客户端请求
将请求转发给被代理的服务器
从被代理的服务器获得响应结果
把响应结果返回给客户端
实例
本文把Nginx配置成一个简单的代理服务器
对于静态的html和图片,直接从Nginx获取
对于动态的页面,例如JSP或者Servlet,Nginx则将请求转发给Res
- Plugin execution not covered by lifecycle configuration: org.apache.maven.plugin
blackproof
maven报错
转:http://stackoverflow.com/questions/6352208/how-to-solve-plugin-execution-not-covered-by-lifecycle-configuration-for-sprin
maven报错:
Plugin execution not covered by lifecycle configuration:
- 发布docker程序到marathon
ronin47
docker 发布应用
1 发布docker程序到marathon 1.1 搭建私有docker registry 1.1.1 安装docker regisry
docker pull docker-registry
docker run -t -p 5000:5000 docker-registry
下载docker镜像并发布到私有registry
docker pull consol/tomcat-8.0
- java-57-用两个栈实现队列&&用两个队列实现一个栈
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;
/*
* Q 57 用两个栈实现队列
*/
public class QueueImplementByTwoStacks {
private Stack<Integer> stack1;
pr
- Nginx配置性能优化
cfyme
nginx
转载地址:http://blog.csdn.net/xifeijian/article/details/20956605
大多数的Nginx安装指南告诉你如下基础知识——通过apt-get安装,修改这里或那里的几行配置,好了,你已经有了一个Web服务器了。而且,在大多数情况下,一个常规安装的nginx对你的网站来说已经能很好地工作了。然而,如果你真的想挤压出Nginx的性能,你必
- [JAVA图形图像]JAVA体系需要稳扎稳打,逐步推进图像图形处理技术
comsci
java
对图形图像进行精确处理,需要大量的数学工具,即使是从底层硬件模拟层开始设计,也离不开大量的数学工具包,因为我认为,JAVA语言体系在图形图像处理模块上面的研发工作,需要从开发一些基础的,类似实时数学函数构造器和解析器的软件包入手,而不是急于利用第三方代码工具来实现一个不严格的图形图像处理软件......
&nb
- MonkeyRunner的使用
dai_lm
androidMonkeyRunner
要使用MonkeyRunner,就要学习使用Python,哎
先抄一段官方doc里的代码
作用是启动一个程序(应该是启动程序默认的Activity),然后按MENU键,并截屏
# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRun
- Hadoop-- 海量文件的分布式计算处理方案
datamachine
mapreducehadoop分布式计算
csdn的一个关于hadoop的分布式处理方案,存档。
原帖:http://blog.csdn.net/calvinxiu/article/details/1506112。
Hadoop 是Google MapReduce的一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同ja
- 以資料庫驗證登入
dcj3sjt126com
yii
以資料庫驗證登入
由於 Yii 內定的原始框架程式, 採用綁定在UserIdentity.php 的 demo 與 admin 帳號密碼: public function authenticate() { $users=array( &nbs
- github做webhooks:[2]php版本自动触发更新
dcj3sjt126com
githubgitwebhooks
上次已经说过了如何在github控制面板做查看url的返回信息了。这次就到了直接贴钩子代码的时候了。
工具/原料
git
github
方法/步骤
在github的setting里面的webhooks里把我们的url地址填进去。
钩子更新的代码如下: error_reportin
- Eos开发常用表达式
蕃薯耀
Eos开发Eos入门Eos开发常用表达式
Eos开发常用表达式
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2014年8月18日 15:03:35 星期一
&
- SpringSecurity3.X--SpEL 表达式
hanqunfeng
SpringSecurity
使用 Spring 表达式语言配置访问控制,要实现这一功能的直接方式是在<http>配置元素上添加 use-expressions 属性:
<http auto-config="true" use-expressions="true">
这样就会在投票器中自动增加一个投票器:org.springframework
- Redis vs Memcache
IXHONG
redis
1. Redis中,并不是所有的数据都一直存储在内存中的,这是和Memcached相比一个最大的区别。
2. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。
3. Redis支持数据的备份,即master-slave模式的数据备份。
4. Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
Red
- Python - 装饰器使用过程中的误区解读
kvhur
JavaScriptjqueryhtml5css
大家都知道装饰器是一个很著名的设计模式,经常被用于AOP(面向切面编程)的场景,较为经典的有插入日志,性能测试,事务处理,Web权限校验, Cache等。
原文链接:http://www.gbtags.com/gb/share/5563.htm
Python语言本身提供了装饰器语法(@),典型的装饰器实现如下:
@function_wrapper
de
- 架构师之mybatis-----update 带case when 针对多种情况更新
nannan408
case when
1.前言.
如题.
2. 代码.
<update id="batchUpdate" parameterType="java.util.List">
<foreach collection="list" item="list" index=&
- Algorithm算法视频教程
栏目记者
Algorithm算法
课程:Algorithm算法视频教程
百度网盘下载地址: http://pan.baidu.com/s/1qWFjjQW 密码: 2mji
程序写的好不好,还得看算法屌不屌!Algorithm算法博大精深。
一、课程内容:
课时1、算法的基本概念 + Sequential search
课时2、Binary search
课时3、Hash table
课时4、Algor
- C语言算法之冒泡排序
qiufeihu
c算法
任意输入10个数字由小到大进行排序。
代码:
#include <stdio.h>
int main()
{
int i,j,t,a[11]; /*定义变量及数组为基本类型*/
for(i = 1;i < 11;i++){
scanf("%d",&a[i]); /*从键盘中输入10个数*/
}
for
- JSP异常处理
wyzuomumu
Webjsp
1.在可能发生异常的网页中通过指令将HTTP请求转发给另一个专门处理异常的网页中:
<%@ page errorPage="errors.jsp"%>
2.在处理异常的网页中做如下声明:
errors.jsp:
<%@ page isErrorPage="true"%>,这样设置完后就可以在网页中直接访问exc