- Nightingale滴滴夜莺监控系统入门(四)--聊聊夜莺的后端储存
运维翁
Nightingalelinux运维服务器
Nightingale滴滴夜莺监控系统入门(四)—聊聊夜莺的后端储存1-默认版本默认是使用夜莺的两个组件来实现:TSDB+INDEXTSDB实际上使用的是老牌的图形数据库rrdtool,记录ts和value,有很多老牌的监控使用比如Cacti;INDEX是索引模块,夜莺把监控metric记录在这里,查询数据的时候是通过索引去查询;存储目录分别对应TSDB:/home/n9e/dataINDEX:/
- vscode从本地安装插件
看山不是山a
VisualStudioCodevscodeide编辑器
1.打开VSCode。2.点击左侧菜单中的“扩展”(或按Ctrl+Shift+X)。3.点击“更多操作”(三个点)>“从VSIX安装”。4.选择下载的.vsix文件。5.点击“安装”即可安装插件。
- vscode连接docker容器
梦想成为大佬的王老八
vscodedockeride
需安装插件Docker和RemoteDevelopment。连接时报错:Failedtoconnecttotheremoteextensionhostserver(Error:Theoperationwasaborted)解决方案:卸载重装,重新打开
- 通过前端实现导出生成pdf文件并下载
银河小铁皮
vue原生JS前端javascriptvue.js
通过前端实现导出生成pdf文件并下载使用jspdf.js+html2canvas插件,实现前端生成pdf并下载的功能步骤如下1、先通过npm安装插件npminstalljspdf.jsnpminstallhtml2canvas2、单独在utils文件夹下,新建文件,存放处理代码/*eslint-disable*///不使用JQuery版的importhtml2canvasfrom'html2can
- vue-i18n 国际化
A o尐懶猫o
vue.js前端javascript
插件基本思路定义语言包:需要几种语言展示,就定义几个语言包。组合语言包对象:创建对象,对语言包进行组合,对象的key为语言包引用,值为语言包对象。创建实例:创建vue-i18n类的对象,添加message和locale属性。挂载:挂载创建的实例对象。安装插件vue-i18n使用
[email protected]使用
[email protected]定义和组合
- Pinia持久化插件:pinia-plugin-persistedstate
正小安
vue杂谈vue.js前端
Pinia持久化插件pinia-plugin-persistedstate是一个Pinia插件,用于持久化Piniastore的状态到本地存储(如localStorage或sessionStorage)。以下是关于pinia-plugin-persistedstate的使用及配置的详细说明:使用步骤安装插件使用以下命令安装pinia-plugin-persistedstate:pnpmaddpin
- vscode自动生成文件头部注释和函数注释
飞羽殇情
vscode
vscode笔记(一)-vscode自动生成文件头部注释和函数注释安装插件KoroFileHeader设置在vscode左下角点击设置按钮,选择“设置”,然后输入“fileheader”文件头部注释:Fileheader:customMade函数注释:Fileheader:cursorMode随便点击哪个"在setting.json"中编辑,输入以下设置后保存,然后重启vscode更新设置://文
- PyCharm配置教程,手把手教你如何配置
E绵绵
Everythingpycharmidepython
文章目录引言1.安装PyCharm1.1下载和安装1.2初次启动2.基本配置2.1设置界面2.2常用配置项3.项目配置3.1创建新项目3.2配置解释器4.虚拟环境配置4.1创建虚拟环境4.2使用已有虚拟环境4.3管理依赖5.插件和扩展5.1安装插件5.2推荐插件6.调试配置6.1配置调试器6.2设置断点和启动调试7.版本控制集成7.1配置Git7.2克隆仓库7.3使用Git插件8.代码风格和检查8
- 浅析网页不安装插件播放RTSP/FLV视频的方法
点量云实时渲染-小芹
云流化像素流云渲染音视频rtsp无插件网页播放rtmpflv视频网页播放webrtc
早期很多摄像头视频流使用的是RTSP、RTMP协议,播放这类协议的视频通常是在网页上安装插件。但现在越来越多的用户,对于网页安装插件比较反感,且随着移动设备的普及,用户更多的希望使用手机、平板等移动设备,直接可以查看这些协议的视频。那是否有什么方案可以直接网页打开RTSP、RTMP协议的视频,直接观看不用安装插件呢?而且对于摄像头的数据,尽可能低延迟的获取实时画面。其实很多摄像头厂家也注意到这个问
- Jenkins 通过 Version Number Plugin 自动生成和管理构建的版本号
让梦想疯狂
Jenkinsjenkins
步骤1:安装VersionNumberPlugin登录Jenkins的管理界面。进入“ManageJenkins”->“ManagePlugins”。在“Available”选项卡中搜索“VersionNumberPlugin”。选中并安装插件,完成后可能需要重启Jenkins。步骤2:配置版本号生成打开项目配置页面。在下方找到“BuildEnvironment”,勾选“Createaformat
- SublimeText3 + Markdown + 实时预览
TomGui
SublimeText3是一款给力的文本编辑器,通过安装插件可以编辑Markdown文本,在编辑Markdown文本的同时可以实时预览编辑效果。安装准备:找到菜单栏:Preferences→PackageControl→PackageControl:InstallPackage;没有找到PackageControl,那么点击PackageControl安装吧,安装完重启Sublime。安装过程:需
- IntelliJ IDEA 中安装 Groovy 插件 && 添加 Groovy SDK
秋夫人
intellij-ideaGroovy
一、在IntelliJIDEA中安装Groovy插件可以按照以下步骤进行:打开IntelliJIDEA:启动IntelliJIDEA。打开插件市场:进入File->Settings(在macOS上是IntelliJIDEA->Preferences)。在左侧菜单中选择Plugins。搜索Groovy插件:在插件市场的右上角搜索框中输入Groovy。找到Groovy插件。安装插件:点击Install
- VS Code与SVN关联
汽车软件工程师001
VSCodevscodeSVN
VSCode是一款轻量级的集成开发环境,可通过安装插件与SVN进行关联。以下是将VSCode与SVN关联的步骤:安装SVN插件:在VSCode中打开Extensions(快捷键:Ctrl+Shift+X),搜索并安装"svn"插件。安装SVN命令行工具:在计算机上安装SVN命令行工具,确保在命令行中可以运行svn命令。配置SVN路径:在VSCode中打开用户设置(快捷键:Ctrl+Comma),搜
- Ae全套插件一键安装包,免费视频教程安装包网盘资源
全网优惠分享君
随着数字媒体的普及,视频制作和后期处理变得越来越重要。AdobeAfterEffects(简称Ae)作为一款专业的视频特效制作软件,被广泛应用于电影、电视、广告等领域。然而,Ae的功能非常强大,也因此需要安装许多插件来扩展其功能。对于许多新手来说,手动安装插件可能会有些困难。为此,本文将介绍如何一键安装Ae全套插件,并提供免费视频教程安装包网盘资源。一、Ae全套插件一键安装包对于想要快速安装Ae全
- Cortex-M3(2) 汇编启动文件分析
keven-wang
Cortex-M3Cortex-M3启动文件STM32F429汇编
1、汇编文件理解与分析参考:https://blog.csdn.net/cacti_one/article/details/72811281由于启动代码是用汇编语言写的,并且启动代码中有大量的伪指令(Directives),所以,在正式介绍启动代码前,先来介绍下相关的伪指令。一、伪指令(Directives)由于MDK中的汇编器(汇编编译器)用的是ARM的汇编器,所以可以从ARM官网下载汇编器的用
- pycharm安装本地插件
看山不是山a
Pycharmpycharmidepython
参考:分享pycharm如何安装插件(Plugins)-腾讯云开发者社区-腾讯云1.下载插件的zip文件到本地2.File=>settings=>plugins3.点击小齿轮选择nstallpluginfromdisk(从硬盘下载),选择刚刚下载的zip文件就可以了4.重启pycharm
- 前端配置环境
葱头的故事
前端
工具类配置一、下载GitBash下载地址二、下载google浏览器下载地址三、下载微信开发者工具下载地址四、下载vscode下载地址1、安装中文包安装中文包教程2、安装插件3、vscode中使用git教程4、setting.json我自己常用的:{"editor.fontSize":18,"[scss]":{"editor.defaultFormatter":"esbenp.prettier-vs
- 使用CACTI监控H3C设备的CPU和内存使用率
deflag
h3ctemplatesgraphsession搜索引擎工具
使用CACTI监控H3C设备的CPU和内存使用率H3C的CPU和内存没有公开,无法使用通用的OID找到其CPU和内存使用率.不过,H3C网站上已经将H3C的MIB库文件公开,下面就讲讲如何通过公开的MIB库文件找到需要的OID信息。首先使用OID查看工具来查看一下OID库文件里面到底包含有什么东西。我使用的是:ByteSphereOidView,其官方网站有30天试用版下载,大家到搜索引擎里面搜索
- vue3+ts 中使用mitt进行跨组件通信
我胡为喜呀
vue.js前端框架前端
mitt插件的使用安装插件进行封装一个模块,对外暴露一个Mitt实例使用安装插件官方文档pnpmimitt--s//我用的pnpm或npmi--smitt或yarnaddmitt进行封装一个模块,对外暴露一个Mitt实例1、在utils文件夹下新建mitt(例如mitt.ts),用于初始化并导出mitt实例://src/eventBus.tsimportmittfrom'mitt';//定义事件类
- 为gRPC-Server添加自定义中间件
userxxcc
gogrpc中间价
1.目标:a.欲自定义一个捕捉grpc-server里面的全局代码500报错(panic报错)的中间件。b.grpc中间件与http-gin定义中间件不一样,gin可以用use或handlerFunc启用中间件,grpc用不了。这里以go-grpc-middleware插件来演示。c.gRPC-Client只作为主动调用接口没必要去做中间件。2.书写中间件:安装插件依赖:gogetgithub.c
- jenkins发送html邮件配置步骤与注意事项?
danplus
jenkinsSMTP服务器服务器邮件推送邮件接口触发式邮件API接口
jenkins发送html邮件如何实现?Jenkins的配置方法?通过jenkins发送html邮件,开发团队可以及时获取构建状态的详细报告,从而快速响应问题,提高工作效率。AokSend将详细介绍jenkins发送html邮件的配置步骤与注意事项,帮助读者更好地利用这一功能。jenkins发送html邮件:安装插件要实现jenkins发送html邮件,首先需要在jenkins中安装相应的插件。进
- wordpress网站静态缓存插件之WP-Super-Cache详细安装与配置说明教程
Alextao_0a86
关于WP-Super-Cache教程网上有很多,但大多质量不高无实际作用,今天转载一篇个人认为比较不错的文章。原文地址:http://blog.az009.com/15209.html一、安装插件首先,到wordpress后台插件项中点击安装插件列表里面搜索“WPSuperCache”,第一个即是安装即可。二、详细配置安装好WP-Super-Cache并启用后到Settings选项中进行设置,具体
- vscode 脑图插件mindmap
赶路人儿
web前端工具
在日常办公中,我们经常使用脑图工具来说明一个复杂的“事情”,百度提供了一个在线的脑图工具,https://naotu.baidu.com/今天,我们来看下vscode中如何通过安装插件,来使用脑图功能。1、在vscode中搜索mindmap:这两个插件作者是同一个(大搜车公司开发的),这里选择第二个安装(第一个使用中有bug)。2、使用:创建km结尾的文件,vscode会自动识别该文件,打开后即可
- 在线免费预览查看 Axure rp 原型
未来的嗒嘀嗒
photoshopui
AxureRP不仅可以绘制详细的产品概念,还可以在浏览器中生成html页面进行参考,但需要安装插件才能打开。安装Axurerpchrome插件之后,还需要在扩展程序中选择“允许访问文件网站”,否则无法在Axure中成功。在线查看原型。听起来很麻烦吗?如果您真的不想安装插件,不妨尝试使用Axure在线工具来代替它即时设计打开!https://ad.js.design/online/prototype
- Vscode 搭建 Golang 项目
抢钱——小子
golangvscodegolang编辑器开发语言
安装vscode扩展->go,安装安装go依赖工具集command+shift+p,输入go:install,然后选中Install/UpdateTools,按回车进行安装连接远程服务器开发command+shift+x,打开安装插件Remote-SSH,安装完了之后,左下角绿色的地方点击为单独项目设置gopathcode->首选项->设置->搜索gopath->在setting.json中编辑-
- VSCODE将界面设置设置成中文
可厉害的土豆
软件安装软件快捷方式配置vscodeide编辑器
1、在应用商店安装插件搜索"Chinese",点击安装如下图2、使用快捷键组合【Ctrl+Shift+p】,在搜索框中输入“configuredisplaylanguage”,点击确定,选择中文(zh-cn)
- 在 conda 中配置Python虚拟环境
Sup星月★然
Python学习condapython
conda中配置Python虚拟环境1.下载并安装miniconda32.在conda中创建test_env虚拟环境3.安装test_env框架4.为服务器联网5.本地安装vscode6.安装vscode远程开发组件7.使用本地的vscode连接到远程服务器8.在服务器上的vscode安装插件9.写一个简单的python程序1.下载并安装miniconda3浏览器打开Anaconda|镜像站使用帮
- postgresql版本升级
kmblack1
postgresql数据库
从postgresql12升级至postgresql14。同一大版本的小版本无需更新数据目录,直接更新程序目录,但是要注意重新编译安装插件。个人建议大版本中的小版本更新至5以上再使用,例如发稿时最新稳定版为16.4,建议至16.5以后再考虑升级。升级成功后,旧的程序目录和数据目录暂时不要删除,待运行一段时候稳定后再删除。升级成功后,需要重新配置postgresql.conf和pg_hba.conf
- jenkins 新手入门插件安装失败
N_P_E
jenkins运维ci
今天在搭建jenkins的时候新手入门插件直接卡住了(死活下不了)解决方案:正常启动到了数据初始化密码的时候先输入密码但是不要急着安装插件(不然那都是白整的)进入到jenkins安装的位置cd/var/lib/jenkins/updates执行以下命令切换源即可sed-i's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.t
- Python 的一个警告:WARNING: Ignoring invalid distribution -andas (d:\python3.10\lib\site-packages)
流星不逝
python开发语言
一、问题:每次pip新插件的时候老出现标题所示的警告(WARNING:Ignoringinvaliddistribution-andas(d:\python3.10\lib\site-packages),是警告而非错误,本介绍主要针对强迫症,去不去掉不影响功能,但是每次提示实在是讨厌。二、问题产生原因:是因为之前安装插件失败或者中途退出导致插件安装出现异常所致。三、解决掉WARNING:根据警告信
- PHP,安卓,UI,java,linux视频教程合集
cocos2d-x小菜
javaUIPHPandroidlinux
╔-----------------------------------╗┆
- 各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。
bozch
.net.net mvc
在.net mvc5中,在执行某一操作的时候,出现了如下错误:
各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。
经查询当前的操作与错误内容无关,经过对错误信息的排查发现,事故出现在数据库迁移上。
回想过去: 在迁移之前已经对数据库进行了添加字段操作,再次进行迁移插入XXX字段的时候,就会提示如上错误。
&
- Java 对象大小的计算
e200702084
java
Java对象的大小
如何计算一个对象的大小呢?
 
- Mybatis Spring
171815164
mybatis
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
CustomerService userService = (CustomerService) ac.getBean("customerService");
Customer cust
- JVM 不稳定参数
g21121
jvm
-XX 参数被称为不稳定参数,之所以这么叫是因为此类参数的设置很容易引起JVM 性能上的差异,使JVM 存在极大的不稳定性。当然这是在非合理设置的前提下,如果此类参数设置合理讲大大提高JVM 的性能及稳定性。 可以说“不稳定参数”
- 用户自动登录网站
永夜-极光
用户
1.目标:实现用户登录后,再次登录就自动登录,无需用户名和密码
2.思路:将用户的信息保存为cookie
每次用户访问网站,通过filter拦截所有请求,在filter中读取所有的cookie,如果找到了保存登录信息的cookie,那么在cookie中读取登录信息,然后直接
- centos7 安装后失去win7的引导记录
程序员是怎么炼成的
操作系统
1.使用root身份(必须)打开 /boot/grub2/grub.cfg 2.找到 ### BEGIN /etc/grub.d/30_os-prober ### 在后面添加 menuentry "Windows 7 (loader) (on /dev/sda1)" { 
- Oracle 10g 官方中文安装帮助文档以及Oracle官方中文教程文档下载
aijuans
oracle
Oracle 10g 官方中文安装帮助文档下载:http://download.csdn.net/tag/Oracle%E4%B8%AD%E6%96%87API%EF%BC%8COracle%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3%EF%BC%8Coracle%E5%AD%A6%E4%B9%A0%E6%96%87%E6%A1%A3 Oracle 10g 官方中文教程
- JavaEE开源快速开发平台G4Studio_V3.2发布了
無為子
AOPoraclemysqljavaeeG4Studio
我非常高兴地宣布,今天我们最新的JavaEE开源快速开发平台G4Studio_V3.2版本已经正式发布。大家可以通过如下地址下载。
访问G4Studio网站
http://www.g4it.org
G4Studio_V3.2版本变更日志
功能新增
(1).新增了系统右下角滑出提示窗口功能。
(2).新增了文件资源的Zip压缩和解压缩
- Oracle常用的单行函数应用技巧总结
百合不是茶
日期函数转换函数(核心)数字函数通用函数(核心)字符函数
单行函数; 字符函数,数字函数,日期函数,转换函数(核心),通用函数(核心)
一:字符函数:
.UPPER(字符串) 将字符串转为大写
.LOWER (字符串) 将字符串转为小写
.INITCAP(字符串) 将首字母大写
.LENGTH (字符串) 字符串的长度
.REPLACE(字符串,'A','_') 将字符串字符A转换成_
- Mockito异常测试实例
bijian1013
java单元测试mockito
Mockito异常测试实例:
package com.bijian.study;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import org.junit.Assert;
import org.junit.Test;
import org.mockito.
- GA与量子恒道统计
Bill_chen
JavaScript浏览器百度Google防火墙
前一阵子,统计**网址时,Google Analytics(GA) 和量子恒道统计(也称量子统计),数据有较大的偏差,仔细找相关资料研究了下,总结如下:
为何GA和量子网站统计(量子统计前身为雅虎统计)结果不同?
首先:没有一种网站统计工具能保证百分之百的准确出现该问题可能有以下几个原因:(1)不同的统计分析系统的算法机制不同;(2)统计代码放置的位置和前后
- 【Linux命令三】Top命令
bit1129
linux命令
Linux的Top命令类似于Windows的任务管理器,可以查看当前系统的运行情况,包括CPU、内存的使用情况等。如下是一个Top命令的执行结果:
top - 21:22:04 up 1 day, 23:49, 1 user, load average: 1.10, 1.66, 1.99
Tasks: 202 total, 4 running, 198 sl
- spring四种依赖注入方式
白糖_
spring
平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依赖注入的另一种说法是“控制反转”,通俗的理解是:平常我们new一个实例,这个实例的控制权是我
- angular.injector
boyitech
AngularJSAngularJS API
angular.injector
描述: 创建一个injector对象, 调用injector对象的方法可以获得angular的service, 或者用来做依赖注入. 使用方法: angular.injector(modules, [strictDi]) 参数详解: Param Type Details mod
- java-同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待
bylijinnan
Integer
public class PC {
/**
* 题目:生产者-消费者。
* 同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待。
*/
private static final Integer[] val=new Integer[10];
private static
- 使用Struts2.2.1配置
Chen.H
apachespringWebxmlstruts
Struts2.2.1 需要如下 jar包: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar commons-logging-1.0.4.jar freemarker-2.3.16.jar javassist-3.7.ga.jar ognl-3.0.jar spring.jar
struts2-core-2.2.1.jar struts2-sp
- [职业与教育]青春之歌
comsci
教育
每个人都有自己的青春之歌............但是我要说的却不是青春...
大家如果在自己的职业生涯没有给自己以后创业留一点点机会,仅仅凭学历和人脉关系,是难以在竞争激烈的市场中生存下去的....
&nbs
- oracle连接(join)中使用using关键字
daizj
JOINoraclesqlusing
在oracle连接(join)中使用using关键字
34. View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables.
Evaluate the following SQL statement:
SELECT oi.order_id, product_id, order_date
FRO
- NIO示例
daysinsun
nio
NIO服务端代码:
public class NIOServer {
private Selector selector;
public void startServer(int port) throws IOException {
ServerSocketChannel serverChannel = ServerSocketChannel.open(
- C语言学习homework1
dcj3sjt126com
chomework
0、 课堂练习做完
1、使用sizeof计算出你所知道的所有的类型占用的空间。
int x;
sizeof(x);
sizeof(int);
# include <stdio.h>
int main(void)
{
int x1;
char x2;
double x3;
float x4;
printf(&quo
- select in order by , mysql排序
dcj3sjt126com
mysql
If i select like this:
SELECT id FROM users WHERE id IN(3,4,8,1);
This by default will select users in this order
1,3,4,8,
I would like to select them in the same order that i put IN() values so:
- 页面校验-新建项目
fanxiaolong
页面校验
$(document).ready(
function() {
var flag = true;
$('#changeform').submit(function() {
var projectScValNull = true;
var s ="";
var parent_id = $("#parent_id").v
- Ehcache(02)——ehcache.xml简介
234390216
ehcacheehcache.xml简介
ehcache.xml简介
ehcache.xml文件是用来定义Ehcache的配置信息的,更准确的来说它是定义CacheManager的配置信息的。根据之前我们在《Ehcache简介》一文中对CacheManager的介绍我们知道一切Ehcache的应用都是从CacheManager开始的。在不指定配置信
- junit 4.11中三个新功能
jackyrong
java
junit 4.11中两个新增的功能,首先是注解中可以参数化,比如
import static org.junit.Assert.assertEquals;
import java.util.Arrays;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runn
- 国外程序员爱用苹果Mac电脑的10大理由
php教程分享
windowsPHPunixMicrosoftperl
Mac 在国外很受欢迎,尤其是在 设计/web开发/IT 人员圈子里。普通用户喜欢 Mac 可以理解,毕竟 Mac 设计美观,简单好用,没有病毒。那么为什么专业人士也对 Mac 情有独钟呢?从个人使用经验来看我想有下面几个原因:
1、Mac OS X 是基于 Unix 的
这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。如果你是个 wi
- 位运算、异或的实际应用
wenjinglian
位运算
一. 位操作基础,用一张表描述位操作符的应用规则并详细解释。
二. 常用位操作小技巧,有判断奇偶、交换两数、变换符号、求绝对值。
三. 位操作与空间压缩,针对筛素数进行空间压缩。
&n
- weblogic部署项目出现的一些问题(持续补充中……)
Everyday都不同
weblogic部署失败
好吧,weblogic的问题确实……
问题一:
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: URL [zip:E:/weblogic/user_projects/domains/base_domain/serve
- tomcat7性能调优(01)
toknowme
tomcat7
Tomcat优化: 1、最大连接数最大线程等设置
<Connector port="8082" protocol="HTTP/1.1"
useBodyEncodingForURI="t
- PO VO DAO DTO BO TO概念与区别
xp9802
javaDAO设计模式bean领域模型
O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO。
它们的关系应该是相互独立的,一个VO可以只是PO的部分,也可以是多个PO构成,同样也可以等同于一个PO(指的是他们的属性)。这样,PO独立出来,数据持