- Ceph存储阈值调整:优化nearfull_ratio参数
mixboot
Cephceph
Ceph存储阈值调整:优化nearfull_ratio参数前言在Ceph存储系统的管理中,合理设置存储阈值参数对于确保系统稳定运行至关重要。如何调整nearfull_ratio参数,以及这一参数对Ceph集群的影响。Ceph存储阈值概述Ceph存储系统主要有三个与容量相关的重要阈值参数:近满阈值(nearfull_ratio):默认为0.85或85%,当集群使用空间达到此比例时,Ceph会发出警告
- Ceph OSD.419 故障分析
CephOSD.419故障分析1.问题描述在Ceph存储集群中,OSD.419无法正常启动,系统日志显示服务反复重启失败。2.初始状态分析观察到OSD.419服务启动失败的系统状态:systemctlstatusceph-osd@419●
[email protected]:loaded(/usr/lib/systemd
- 【ceph】坏盘更换,osd的具体操作
向往风的男子
cephceph
本站以分享各种运维经验和运维所需要的技能为主《python零基础入门》:python零基础入门学习《python运维脚本》:python运维脚本实践《shell》:shell学习《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战《k8》暂未更新《docker学习》暂未更新《ceph学习》ceph日常问题解决分享《日志收集》ELK+各种中间件《运维日常》运维日常《l
- ceph报错整理
时空无限
Kubernetescephlinux运维kubernetes
xxdaemonshaverecentlycrashedceph-scluster:id:d82dfc33-6a35-4fa4-b5f0-c32979b714cdhealth:HEALTH_WARN74daemonshaverecentlycrashedcephcrashlsIDENTITYNEW2024-07-26T06:17:34.480675Z_bd4c30b7-2347-4307-a9e6
- 使用ceph-ansible部署分布式存储Ceph-octopus版本
降世神童
云计算技术专栏分布式cephansible
使用ceph-ansible部署分布式存储Ceph-octopus版本1.Ceph基础概念及部署方式1.1.Ceph基本概念1.2.Ceph部署方式2.系统初始化配置3.Ceph集群部署3.1.Ansible安装与配置3.2.ceph-ansible安装与配置3.2.1.下载ceph-ansible3.2.2.安装ceph-ansible依赖3.2.3.修改ceph配置文件3.3.开始部署ceph
- 2024年运维最新分布式存储ceph osd 常用操作_ceph查看osd对应硬盘(1),2024年最新Linux运维编程基础教程
2401_83944328
程序员运维分布式ceph
最全的Linux教程,Linux从入门到精通======================linux从入门到精通(第2版)Linux系统移植Linux驱动开发入门与实战LINUX系统移植第2版Linux开源网络全栈详解从DPDK到OpenFlow第一份《Linux从入门到精通》466页====================内容简介====本书是获得了很多读者好评的Linux经典畅销书**《Linu
- 【ceph】ceph集群更换osd时,找不到坏盘位置,怎么查找坏盘对应的序列号---业内称“点灯”
本站以分享各种运维经验和运维所需要的技能为主《python零基础入门》:python零基础入门学习《python运维脚本》:python运维脚本实践《shell》:shell学习《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战《k8》从问题中去学习k8s《docker学习》暂未更新《ceph学习》ceph日常问题解决分享《日志收集》ELK+各种中间件《运维日常》
- Ceph集群管理实战
wespten
OpenStackvSphere虚拟化云平台SDN数据库存储块存储文件存储对象存储分布式网络存储linux运维服务器
配置完Ceph集群后,我们即可对Ceph集群进行数据存储。在后续使用过程中,Ceph提供了常用的命令对Ceph集群进行必要的运维。常见的集群状态查看、磁盘使用率查看、添加磁盘、删除坏盘等操作。详情可参考:WelcometoCeph—CephDocumentation1、Ceph的常用命令本节给出的Ceph常用命令可以作为最基本的集群运维命令。1)查看集群状态命令。[root@installer~]
- 深度剖析:Ceph分布式存储系统架构
TechVision大咖圈
ceph分布式架构分布式存储
一文带你彻底搞懂Ceph的架构奥秘,从小白到架构师的进阶之路!文章目录1.Ceph简介:存储界的"多面手"什么是Ceph?为什么选择Ceph?2.核心组件架构:四大金刚的分工合作Monitor(MON):集群的"大脑"ObjectStorageDevice(OSD):数据的"家园"MetadataServer(MDS):文件系统的"管家"Manager(MGR):集群的"助手"3.三大存储接口:一
- 【无标题】
KellenKellenHao
tomcatjava
一、tomcat安装 #关闭防火墙与SELinux [root@proxy_host~]#rz rzwaitingtoreceive.**[root@proxy_host~]#ls anaconda-ks.cfg ceph-release-1-1.el7.noarch.rpm apache-tomcat-8.5.40.tar.gznginx-1.27.3.tar.gz #解压到指定路径
- 【mongodb】mongodb数据备份与恢复
向往风的男子
运维日常DBAmongodb数据库
本站以分享各种运维经验和运维所需要的技能为主《python零基础入门》:python零基础入门学习《python运维脚本》:python运维脚本实践《shell》:shell学习《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战《k8》暂未更新《docker学习》暂未更新《ceph学习》ceph日常问题解决分享《日志收集》ELK+各种中间件《运维日常》运维日常《l
- rook-ceph配置dashboard代理无法访问
在ceph-tools的pod中看看dashboard是否开启kubectl-nrook-cephexec-itrook-ceph-tools-7b75b967db-jn68d–bashcephmgrservices查看集群内地址使用curl测试能否访问cephmgrmoduledisabledashboard关闭cephmgrmoduleenabledashboard开启rook中关于ceph部
- 速通Ceph分布式存储(含超详细图解)
来自于狂人
云计算
前言云计算存储架构图示例存储节点集群RAID控制层物理存储层分布式存储管理层存储接口层接入层OSD主机1OSD主机2OSD主机N磁盘1磁盘2磁盘3磁盘4磁盘5磁盘6RAID0/10/5RAID控制器1RAID0/10/5RAID控制器2RAID0/10/5RAID控制器NMonitor集群大脑OSD数据守护进程MDS元数据服务对象存储块存储文件存储对象网关RBDMDS客户端接入层存储接口层分布式存
- 【请关注】真实案例pg及kong安装部署
DoWeixin6
kong
#前提需要安装好nfsKONG_NAMESPACE="kong-api"PG_NAMESPACE="pg-ha"HARBOR_IP="harbor.rancher.com"一、安装pg高可用#######################################################################################kubectlcreatenames
- 使用kolla安装OPENSTACK
qhqh310
openstack
安装centos7一、根据这个做一个模板1、编辑host文件10.103.129.146control-110.103.129.147node-110.103.129.148node-210.103.129.149network-110.103.129.150ceph-110.103.129.151ceph-210.103.129.152control-210.103.129.153network
- ceph计算PG
计算公式:pg_num={(TargetPGsperOSD)x(OSD#)x(%Data)}/Size注释:TargetPGsperOSD:预估每个OSD的PG数,一般取100计算。当预估以后集群OSD数不会增加时,一般取100计算OSD#:集群OSD数量。%Data:预估该pool占该OSD集群总容量的近似百分比。Size:该pool的副本数。
- 分布式存储Ceph之PG状态详解
jiangxi_
ceph运维cephpgp分布式linux
1.PG介绍一,PG的复杂如下:在架构层次上,PG位于RADOS层的中间。a.往上负责接收和处理来自客户端的请求。b.往下负责将这些数据请求翻译为能够被本地对象存储所能理解的事务。是组成存储池的基本单位,存储池中的很多特性,都是直接依托于PG实现的。面向容灾域的备份策略使得一般而言的PG需要执行跨节点的分布式写,因此数据在不同节点之间的同步、恢复时的数据修复也都是依赖PG完成。2.PG状态表正常的
- ceph创建pool时pg_num的配置
lvbibir
数据库
pg_num用此命令创建存储池时:cephosdpoolcreate{pool-name}pg_num确定pg_num取值是强制性的,因为不能自动计算。常用的较为通用的取值:少于5个osd,pg_num设置为128osd数量在5到10个时,pg_num设置为512osd数量在10到50个时,pg_num=4096osd数量大于50是,需要理解ceph的权衡算法,自己计算pg_num取值自行计算pg
- ceph 通过 crush rule 修改故障域
时空无限
cephceph
创建故障域为osd的crushrulecephosdcrushrulecreate-replicatedreplicated_osd_leveldefaultosd设置pool使用新创建的crushrulecephosdpoolsetceph-filesystem-data0crush_rulereplicated_osd_level查看有哪些crushrulecephosdcrushruleli
- Rsync实操
KellenKellenHao
excel
Rsync实操一.rsync命令 #类似于cp [root@user2~]#
[email protected]:/root
[email protected]'spassword: [root@user1~]#ls anaconda-ks.cfgceph-release-1-1.el7.noarch.rpminfo.sh二、使用rsync备份push方式服务器:
- 离线部署openstack 2024.1需求说明、初始化及实例创建过程分析
查士丁尼·绵
openstackopenstack
背景在ubuntu22.04离线部署openstack2024.1集群,外置存储为cephreef,提供:1、计算虚拟化;2、网络虚拟化,支持协议flat、vlan、vxlan;3、存储对接ceph;4、webUI;5、management网络为bond0,对应vlan10;6、self-service网络为bond0,对应vlan15;7、external网络对应bond1,对应vlan20、2
- Openssl生成自签名证书并导入浏览器脚本
zhangpfly
运维linuxhttpsopenssl自签名证书
Openssl生成自签名证书并导入浏览器使用说明1.准备工作2.脚本3.导入浏览器4.使用证书使用说明环境:Centos7运行脚本后可以生成根证书、自签名证书(可以指定域名或泛域名)1.准备工作yum-yinstallhttpd-tools.x86_64openssl.x86_64openssl-devel.x86_64openssl-libs.x86_642.脚本这个脚本是从Rancher官网上
- 安装ceph时,出现Some monitors have still not reached quorum
现象:安装ceph时,在获取节点的证书时,也即下面这条语句时遇到问题ceph-deployadminceph1ceph2ceph3报错如下:[ceph3][INFO]Runningcommand:sudoceph--cluster=ceph--admin-daemon/var/run/ceph/ceph-mon.ceph3.asokmon_status[ceph3][ERROR]admin_soc
- OpenStack私有云实战答案:Heat编排+KVM优化+Ceph存储对接与排障全解
行家说竞赛
#云计算应用赛项openstackceph
【题目1】1.2.1Heat编排-创建用户[1分]编写Heat模板create_user.yaml,创建名为heat-user的用户。使用自己搭建的OpenStack私有云平台,使用heat编写摸板(heat_template_version:2016-04-08)创建名为”chinaskills”的domain,在此domain下创建名为beijing_group的租户,在此租户下创建名为clo
- 无需手动输入命令,简单3步即可在K8S集群中启用GPU
2401_83916283
程序员kubernetes容器云原生
在本文中,我将阐述在Kubernetes集群中使用GPU的简单方法。在未来的文章中,我们还将GPU推向至边缘并向你展示如何完成这一步骤。为了真正地简化步骤,我将用RancherUI来操作启用GPU的过程。RancherUI只是RancherRESTfulAPIs的一个客户端。你可以在GitOps、DevOps和其他自动化解决方案中使用其他API的客户端,比如Golang、Python和Terraf
- 【k8s安装redis】k8s环境无pvc的情况下安装redis哨兵集群
汪碧康
kubernetesdockerrediskubernetesredisdocker容器哨兵pvc
文章目录简介一.条件及环境说明:二.需求说明:三.实现原理及说明四.详细步骤4.1.规划节点标签4.2.创建configmap配置4.3.创建三个statefulset和serviceheadless配置4.4.创建哨兵deployment配置和service配置五.安装说明简介k8s集群中搭建有状态的服务会相对较麻烦,像搭建redis目前比较主流的做法主要是采用共享存储ceph、nas来实现数据
- springboot2.6+awssdk2访问ceph bucket
版本信息:SpringBoot2.6.6awssdk2.17.100Ceph:Quincyv17.2.01、添加cephmaven依赖:父pom文件:。。。。。。2.17.100。。。。。。software.amazon.awssdkbom${awssdk.version}pomimport子pom文件:
- rancher 解决拉取dashboard-shell镜像失败的问题
问题背景在Kubernetes集群中部署Rancher后,点击右上角的"Shell"按钮时,Rancher会动态创建一个dashboard-shell-xxxxxPod,用于提供Web终端功能。然而,由于默认镜像rancher/shell:v0.1.21托管在DockerHub(docker.io),国内用户可能会遇到拉取失败的问题,报错如下:Failedtopullimage"rancher/s
- 【SCI论文写作】机器学习与时间序列医疗健康预测——(EEG)的获取与预处理:Python 实现
LIUDAN'S WORLD
医学AIpython人工智能前端
当前时间:2025-05-29脑电图(Electroencephalography,EEG)作为一种非侵入性的神经生理监测技术,在医疗健康领域,尤其是在神经科学研究、疾病诊断(如癫痫、睡眠障碍)、脑机接口(BCI)等方面扮演着至关重要的角色。原始EEG信号通常包含复杂的生理信息,但也极易受到各种噪声和伪迹的污染,这为后续的数据分析和解读带来了巨大挑战。因此,对EEG数据进行系统有效的预处理是确保分
- ES将快照仓库创建到ceph
Nobe_yt
es6elasticsearch
这是在ES6.8.7环境进行的,测试7.6.2也是可以的。注意:所有的ES节点都需要安装对应版本的repository-s3插件。步骤一:提前准备好对象存储,和bukect"access_key":"xxxxxx""secret_key":"xxxxxx""bucket":"xxxxxx"步骤二:设置访问s3账号密码,根据步骤一中准备好的bukect的access_key,secret_key。#
- Enum 枚举
120153216
enum枚举
原文地址:http://www.cnblogs.com/Kavlez/p/4268601.html Enumeration
于Java 1.5增加的enum type...enum type是由一组固定的常量组成的类型,比如四个季节、扑克花色。在出现enum type之前,通常用一组int常量表示枚举类型。比如这样:
public static final int APPLE_FUJI = 0
- Java8简明教程
bijian1013
javajdk1.8
Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。
一.允许在接口中有默认方法实现
Java 8 允许我们使用default关键字,为接口声明添
- Oracle表维护 快速备份删除数据
cuisuqiang
oracle索引快速备份删除
我知道oracle表分区,不过那是数据库设计阶段的事情,目前是远水解不了近渴。
当前的数据库表,要求保留一个月数据,且表存在大量录入更新,不存在程序删除。
为了解决频繁查询和更新的瓶颈,我在oracle内根据需要创建了索引。但是随着数据量的增加,一个半月数据就要超千万,此时就算有索引,对高并发的查询和更新来说,让然有所拖累。
为了解决这个问题,我一般一个月会进行一次数据库维护,主要工作就是备
- java多态内存分析
麦田的设计者
java内存分析多态原理接口和抽象类
“ 时针如果可以回头,熟悉那张脸,重温嬉戏这乐园,墙壁的松脱涂鸦已经褪色才明白存在的价值归于记忆。街角小店尚存在吗?这大时代会不会牵挂,过去现在花开怎么会等待。
但有种意外不管痛不痛都有伤害,光阴远远离开,那笑声徘徊与脑海。但这一秒可笑不再可爱,当天心
- Xshell实现Windows上传文件到Linux主机
被触发
windows
经常有这样的需求,我们在Windows下载的软件包,如何上传到远程Linux主机上?还有如何从Linux主机下载软件包到Windows下;之前我的做法现在看来好笨好繁琐,不过也达到了目的,笨人有本方法嘛;
我是怎么操作的:
1、打开一台本地Linux虚拟机,使用mount 挂载Windows的共享文件夹到Linux上,然后拷贝数据到Linux虚拟机里面;(经常第一步都不顺利,无法挂载Windo
- 类的加载ClassLoader
肆无忌惮_
ClassLoader
类加载器ClassLoader是用来将java的类加载到虚拟机中,类加载器负责读取class字节文件到内存中,并将它转为Class的对象(类对象),通过此实例的 newInstance()方法就可以创建出该类的一个对象。
其中重要的方法为findClass(String name)。
如何写一个自己的类加载器呢?
首先写一个便于测试的类Student
- html5写的玫瑰花
知了ing
html5
<html>
<head>
<title>I Love You!</title>
<meta charset="utf-8" />
</head>
<body>
<canvas id="c"></canvas>
- google的ConcurrentLinkedHashmap源代码解析
矮蛋蛋
LRU
原文地址:
http://janeky.iteye.com/blog/1534352
简述
ConcurrentLinkedHashMap 是google团队提供的一个容器。它有什么用呢?其实它本身是对
ConcurrentHashMap的封装,可以用来实现一个基于LRU策略的缓存。详细介绍可以参见
http://code.google.com/p/concurrentlinke
- webservice获取访问服务的ip地址
alleni123
webservice
1. 首先注入javax.xml.ws.WebServiceContext,
@Resource
private WebServiceContext context;
2. 在方法中获取交换请求的对象。
javax.xml.ws.handler.MessageContext mc=context.getMessageContext();
com.sun.net.http
- 菜鸟的java基础提升之道——————>是否值得拥有
百合不是茶
1,c++,java是面向对象编程的语言,将万事万物都看成是对象;java做一件事情关注的是人物,java是c++继承过来的,java没有直接更改地址的权限但是可以通过引用来传值操作地址,java也没有c++中繁琐的操作,java以其优越的可移植型,平台的安全型,高效性赢得了广泛的认同,全世界越来越多的人去学习java,我也是其中的一员
java组成:
- 通过修改Linux服务自动启动指定应用程序
bijian1013
linux
Linux中修改系统服务的命令是chkconfig (check config),命令的详细解释如下: chkconfig
功能说明:检查,设置系统的各种服务。
语 法:chkconfig [ -- add][ -- del][ -- list][系统服务] 或 chkconfig [ -- level <</SPAN>
- spring拦截器的一个简单实例
bijian1013
javaspring拦截器Interceptor
Purview接口
package aop;
public interface Purview {
void checkLogin();
}
Purview接口的实现类PurviesImpl.java
package aop;
public class PurviewImpl implements Purview {
public void check
- [Velocity二]自定义Velocity指令
bit1129
velocity
什么是Velocity指令
在Velocity中,#set,#if, #foreach, #elseif, #parse等,以#开头的称之为指令,Velocity内置的这些指令可以用来做赋值,条件判断,循环控制等脚本语言必备的逻辑控制等语句,Velocity的指令是可扩展的,即用户可以根据实际的需要自定义Velocity指令
自定义指令(Directive)的一般步骤
&nbs
- 【Hive十】Programming Hive学习笔记
bit1129
programming
第二章 Getting Started
1.Hive最大的局限性是什么?一是不支持行级别的增删改(insert, delete, update)二是查询性能非常差(基于Hadoop MapReduce),不适合延迟小的交互式任务三是不支持事务2. Hive MetaStore是干什么的?Hive persists table schemas and other system metadata.
- nginx有选择性进行限制
ronin47
nginx 动静 限制
http {
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;...
server {...
location ~.*\.(gif|png|css|js|icon)$ {
- java-4.-在二元树中找出和为某一值的所有路径 .
bylijinnan
java
/*
* 0.use a TwoWayLinkedList to store the path.when the node can't be path,you should/can delete it.
* 1.curSum==exceptedSum:if the lastNode is TreeNode,printPath();delete the node otherwise
- Netty学习笔记
bylijinnan
javanetty
本文是阅读以下两篇文章时:
http://seeallhearall.blogspot.com/2012/05/netty-tutorial-part-1-introduction-to.html
http://seeallhearall.blogspot.com/2012/06/netty-tutorial-part-15-on-channel.html
我的一些笔记
===
- js获取项目路径
cngolon
js
//js获取项目根路径,如: http://localhost:8083/uimcardprj
function getRootPath(){
//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath=window.document.locati
- oracle 的性能优化
cuishikuan
oracleSQL Server
在网上搜索了一些Oracle性能优化的文章,为了更加深层次的巩固[边写边记],也为了可以随时查看,所以发表这篇文章。
1.ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾。(这点本人曾经做过实例验证过,的确如此哦!
- Shell变量和数组使用详解
daizj
linuxshell变量数组
Shell 变量
定义变量时,变量名不加美元符号($,PHP语言中变量需要),如:
your_name="w3cschool.cc"
注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)。
中间不能有空格,可以使用下划线(_)。
不能使用标点符号。
不能使用ba
- 编程中的一些概念,KISS、DRY、MVC、OOP、REST
dcj3sjt126com
REST
KISS、DRY、MVC、OOP、REST (1)KISS是指Keep It Simple,Stupid(摘自wikipedia),指设计时要坚持简约原则,避免不必要的复杂化。 (2)DRY是指Don't Repeat Yourself(摘自wikipedia),特指在程序设计以及计算中避免重复代码,因为这样会降低灵活性、简洁性,并且可能导致代码之间的矛盾。 (3)OOP 即Object-Orie
- [Android]设置Activity为全屏显示的两种方法
dcj3sjt126com
Activity
1. 方法1:AndroidManifest.xml 里,Activity的 android:theme 指定为" @android:style/Theme.NoTitleBar.Fullscreen" 示例: <application
- solrcloud 部署方式比较
eksliang
solrCloud
solrcloud 的部署其实有两种方式可选,那么我们在实践开发中应该怎样选择呢? 第一种:当启动solr服务器时,内嵌的启动一个Zookeeper服务器,然后将这些内嵌的Zookeeper服务器组成一个集群。 第二种:将Zookeeper服务器独立的配置一个集群,然后将solr交给Zookeeper进行管理
谈谈第一种:每启动一个solr服务器就内嵌的启动一个Zoo
- Java synchronized关键字详解
gqdy365
synchronized
转载自:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html
多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。
同步机制可以使用synchronized关键字实现。
当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。
当s
- js实现登录时记住用户名
hw1287789687
记住我记住密码cookie记住用户名记住账号
在页面中如何获取cookie值呢?
如果是JSP的话,可以通过servlet的对象request 获取cookie,可以
参考:http://hw1287789687.iteye.com/blog/2050040
如果要求登录页面是html呢?html页面中如何获取cookie呢?
直接上代码了
页面:loginInput.html
代码:
<!DOCTYPE html PUB
- 开发者必备的 Chrome 扩展
justjavac
chrome
Firebug:不用多介绍了吧https://chrome.google.com/webstore/detail/bmagokdooijbeehmkpknfglimnifench
ChromeSnifferPlus:Chrome 探测器,可以探测正在使用的开源软件或者 js 类库https://chrome.google.com/webstore/detail/chrome-sniffer-pl
- 算法机试题
李亚飞
java算法机试题
在面试机试时,遇到一个算法题,当时没能写出来,最后是同学帮忙解决的。
这道题大致意思是:输入一个数,比如4,。这时会输出:
&n
- 正确配置Linux系统ulimit值
字符串
ulimit
在Linux下面部 署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用 其实很容易就达到这个数量。下面说的是,如何通过正解配置来改正这个系统默认值。因为这个问题是我配置Nginx+php5时遇到了,所以我将这篇归纳进
- hibernate调用返回游标的存储过程
Supanccy2013
javaDAOoracleHibernatejdbc
注:原创作品,转载请注明出处。
上篇博文介绍的是hibernate调用返回单值的存储过程,本片博文说的是hibernate调用返回游标的存储过程。
此此扁博文的存储过程的功能相当于是jdbc调用select 的作用。
1,创建oracle中的包,并在该包中创建的游标类型。
---创建oracle的程
- Spring 4.2新特性-更简单的Application Event
wiselyman
application
1.1 Application Event
Spring 4.1的写法请参考10点睛Spring4.1-Application Event
请对比10点睛Spring4.1-Application Event
使用一个@EventListener取代了实现ApplicationListener接口,使耦合度降低;
1.2 示例
包依赖
<p