- centos8 卸载go_Linux下Go的安装、配置 、升级和卸载
weixin_39987313
centos8卸载go
本文同时发布于个人CSDN博客:https://blog.csdn.net/ggq89/article/details/82682171#1.手动安装Go由于大家使用的Linux版本不尽相同,也不见得是最新版本或需要版本的Go语言包,所以我们说一下如何手动安装指定版本。*1.下载Go发行版从官方地址:https://golang.org/dl/上下载合适的二进制发行版(例如:go1.10.4.li
- 月之暗面今日发布k1.5多模态思考模型
百态老人
笔记人工智能
月之暗面k1.5多模态思考模型的问世一、月之暗面k1.5多模态思考模型介绍2025年1月20日,月之暗面发布了k1.5多模态思考模型。这一模型在基准测试成绩方面展现出了非凡的性能,它实现了SOTA(state-of-the-art)级别的多模态推理和通用推理能力。多模态推理即模型能够对多种类型的数据(如文本、图像等)进行整合分析推理,通用推理能力则表明它可以广泛应用于多种任务场景进行有效的逻辑推理
- python selenium canvas_selenium webdriver 实现Canvas画布自动化测试
我不勇敢
pythonseleniumcanvas
https://blog.csdn.net/xiaoguanyusb/article/details/80324210由借鉴意义,转过来canvas是一个画布,定位元素时只能定位到画布上,如下乳所示,网页上有一张类似于下图的eChart报表图片。selenium的基本定位方式只能定位到该画布上,画布上的子元素通过selenium的基础定位方式是定位不到的,此时就需要使用selenium的js注入的
- 四、Go 依赖管理
weiwei8213
Go全栈开发golang开发语言后端
Go全栈开发文章目录Go全栈开发四、Go依赖管理1.go.mod文件说明2.gomod命令3.goinstall/get/clean四、Go依赖管理1.go.mod文件说明//指定module名modulegomod//指定gosdk版本go1.19//当前module(项目)依赖的包,通过require指定require(github.com/bytedance/sonicv1.8.0//ind
- 【SQL Server】超详细SQLServer日期转换、字符串、数学、聚合等常用函数大全(最新版)
web13093320398
面试学习路线阿里巴巴sqlserver数据库
文章目录一、字符串函数1、获取uuid2、字符串截取3、字符串拼接4、字符串去空格5、大小写转换6、格式化数字为字符串7、字符串替换、转换8、查找与定位9、ISNULL判空取值二、日期时间函数1、获取当前日期和时间2、提取日期部分3、DATENAME(datepart,date_expr)函数,返回指定日期的指定部分,返回字符串。获取年、月、日、星期、周数、时、分、秒4、DATEPART(date
- n8n 全面实战指南:从零开始构建强大的自动化工作流
ivwdcwso
运维开发自动化运维开发
1.引言在当今快节奏的数字世界中,自动化已成为提高效率和减少重复工作的关键。n8n作为一款强大的开源工作流自动化工具,为开发者和业务用户alike提供了一个灵活的平台,用于连接各种应用和服务,创建复杂的自动化流程。本文将带您深入了解n8n,从基础安装到高级应用,全面掌握这个强大工具的使用方法。©ivwdcwso(ID:u012172506)2.n8n基础n8n(发音为“n-eight-n”)是一个
- Kafka系列5-Kafka 常见面试题
只是甲
大数据和数据仓库#KafkaKafka面试题Kafka分区Kafka性能
文章目录一.常见面试题1.1Kafka中的ISR(InSyncRepli)、OSR(OutSyncRepli)、AR(AllRepli)代表什么?1.2Kafka中的HW、LEO等分别代表什么?1.3Kafka中是怎么体现消息顺序性的?1.4Kafka中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序是什么?1.5Kafka生产者客户端的整体结构是什么样子的?使用了几个线程来处理?分别是什么
- 【转】ASP.NET Core 实战:基于 Jwt Token 的权限控制全揭露
GoToDinner
core
【转】https://www.cnblogs.com/danvic712/p/10331976.html?tdsourcetag=s_pcqq_aiomsgASP.NETCore实战:基于JwtToken的权限控制全揭露一、前言#在涉及到后端项目的开发中,如何实现对于用户权限的管控是需要我们首先考虑的,在实际开发过程中,我们可能会运用一些已经成熟的解决方案帮助我们实现这一功能,而在Grapefru
- 1052. 爱生气的书店老板
xiaolin0333
#滑动窗口算法滑动窗口
【题目】:1052.爱生气的书店老板classSolution{public:intmaxSatisfied(vector&customers,vector&grumpy,intminutes){intmaxAddCount=0;//在minutes长度内,还能增加的最大顾客满意人数intcurAddCount=0;//当前窗口内还能增加的顾客满意数intcurCount=0;//原本有的顾客满意
- 使用VUE的axios解决调用百度地图api的跨域访问问题
知忆_IS
vuehtmlnpmjavascriptchrome
在构建一个vue前后端分离的项目时候,需要用到百度地图提供的web服务,但是在使用axios方式发送get请求的时候,web页面不显示相应结果,在Google中按F12进入开发者模式之后,发现提示如下:XMLHttpRequestcannotloadOriginhttp://localhost:8080isnotallowedbyAccess-Control-Allow-Origin.根据网上的搜
- Springboot——整合SpringSecurity
发量堪忧的小伙子
springbootspringjava
目录一、核心概念二、Springboot整合SpringSecurity核心流程三、Springboot整合SpringSecurity3.1引入依赖3.2创建SecurityConfig配置文件3.3重写UserDetailsService参考文献一、核心概念SpringSecurity的核心包括认证和授权两个部分。认证认证过程主要是实现AuthenticationManager,Authent
- 终于有人把西门子PLC通信说清楚了
上位机付工
上位机技术分享c#自动化
一、前言大家好!我是付工。西门子PLC是工控领域使用非常多的一种PLC品牌,对于上位机开发人员来说,对于西门子PLC的通信,我们一般可以采取哪些通信方式呢?今天跟大家分享一下上位机实现与西门子PLC的通信方案。二、串口通信西门子PLC早期主要以S7-200、S7-300/400为主,后面逐步被S7-200Smart、S7-1200/1500所替代。目前只有S7-200与S7-200Smart是自带
- 一行代码搞定加载glove预训练词向量
peanutwang
python机器学习人工智能
加载glove预训练词向量再也不用glove2word2vec转换啦!以前加载glove预训练词向量的方法fromgensim.scripts.glove2word2vecimportglove2word2vecglove2word2vec('glove.6B.50d.txt','word2vec50d.txt')其实就是在原来的txt文件前面加上了一行信息,行和列。word10.1230.134
- embed版Python如何安装第三方包
peanutwang
python开发语言
embed版本相当于一个纯Python运行环境,解压之后在命令行就可以Python.exexxx.py。但是涉及到使用第三方包的情况,还是需要安装的。以下是安装方法(整个过程无需配置环境变量):1.解压python-3.8.10-embed-amd642.配置包导入搜索路径默认的包导入搜索路径由根目录内pythonXX._pth,打开它把它前面的#注释去掉#importsite3.配置pip国内源
- 用Python实现概率语言模型(2-元语法模型)
peanutwang
python语言模型
首先构造一个语料库,由6句话组成,每句话3个字。corpus='她很香她很菜她很好他很菜他很好菜很好'.split()构造一个字典,存储一元的字数Count1={}遍历语料库,把每个字出现的次数存储在字典中。forsentenceincorpus:forwordinsentence:ifwordinCount1:Count1[word]+=1#如果word在字典中存在else:Count1[wor
- Node.js 版本管理工具完全指南
九情丶
node.js
Node.js版本管理工具完全指南目录1.nvm(NodeVersionManager)2.n(NodePackageManager)3.fnm(FastNodeManager)4.Volta5.工具对比1.nvm(NodeVersionManager)1.1安装指南macOS/Linux#使用curl安装curl-o-https://raw.githubusercontent.com/nvm-s
- vue项目打印网页功能-vue-print-nb
九情丶
vue.js前端javascript
Printtheentirepage描述:支持两种打印方式,直接打印页面HTML、打印URL简单易用,支持兼容Vue的浏览器版本在线Demo:测试DEMO地址安装:Vue2版本npminstallvue-print-nb--saveVue3版本npminstallvue3-print-nb--savev-printAPI使用方法打印整个页面:Printtheentirepage打印指定范围:Pri
- 【贪心算法】洛谷P4995 - 跳跳
仟濹
算法学习笔记贪心算法算法
2025-01-21-第44篇【洛谷】贪心算法题单-【贪心算法】-【学习笔记】作者(Author):郑龙浩/仟濹(CSND账号名)目录文章目录目录洛谷P4995跳跳!题目描述输入格式输出格式样例#1样例输入#1样例输出#1样例#2样例输入#2样例输出#2提示样例解释数据范围思路代码洛谷P4995跳跳!题目描述你是一只小跳蛙,你特别擅长在各种地方跳来跳去。这一天,你和朋友小F一起出去玩耍的时候,遇到
- 第八篇:监视`ref`定义的【基本类型】数据 和对象类型
小画家~
前端vue.js
一:【watch】监视`ref`定义的【基本类型】数据作用:监视数据的变化(和Vue2中的watch作用一致)特点:Vue3中的watch只能监视以下四种数据:ref定义的数据。reactive定义的数据。函数返回一个值(getter函数)。一个包含上述内容的数组。我们在Vue3中使用watch的时候,通常会遇到以下几种情况,在一定情况下,停止监控:stopWatchwatch(第一个参数,第二个
- go语言安装与卸载
kankan231
golanggolanglinux
Linux下go语言的安装1在https://studygolang.com/dl上下载相应的系统版本下载Linux版本压缩包:wgethttps://studygolang.com/dl/golang/go1.17.linux-amd64.tar.gz2解压到/usr/local/gotar-C/usr/local-xzfgo1.17.linux-amd64.tar.gz3添加/usr/loca
- 小白学JVM调优一: 三种场景模拟OOM获得dump文件
hinsss
Javajvmjavalinux
小白学JVM调优一:三种场景模拟OOM获得dump文件三种场景模拟OOM获得dump文件实操一.mac用idea启动main方法导致堆内存溢出,使用EclipseMemoryAnalyzer分析://VMoption:-Xms20m-Xmx20m-XX:+HeapDumpOnOutOfMemoryError//while循环往list对象中放对象publicclassHeapOOM{staticc
- mac环境下安装webdriver/selenium/python
hp15
macpythonmacwebdriverselenium
1、安装python3.9https://www.python.org/downloads/2、添加环境变量cd~vim.bash_profile3、.bash_profile添加如下内容:PATH="/Library/Frameworks/Python.framework/Versions/3.9/bin:${PATH}"exportPATHaliaspython="/Library/Frame
- ASP.NET Core JWT身份验证实战教程
司莹嫣Maude
ASP.NETCoreJWT身份验证实战教程ASPNETCore2JwtAuthenticationJwtAuthenticationwithoutASP.NETCoreIdentity项目地址:https://gitcode.com/gh_mirrors/as/ASPNETCore2JwtAuthentication项目介绍本教程基于VahidN的ASPNETCore2JwtAuthentica
- 【Vim Masterclass 笔记22】S09L40 + L41:同步练习11:Vim 的配置与 vimrc 文件的相关操作(含点评课内容)
安冬的码畜日常
VimMasterclassvim笔记vim配置vim同步练习vimoptionsvimoption-list
文章目录S09L40Exercise11-VimSettingsandtheVimrcFile1训练目标2操作指令2.1.打开vimrc-sample文件2.2.尝试各种选项与设置2.3.将更改内容保存到vimrc-sample文件2.4.将文件vimrc-sample的内容复制到寄存器2.5.创建专属vimrc文件2.6.对于Mac、Linux或Unix用户2.7.对于Windows用户2.8.
- C#远程获取标签方案,减少测试等人员重复配置或复制标签的功能:一次配置,终身使用
小黄人软件
c#javaandroid
减少测试等人员重复配置或复制标签的功能:一次配置,终身使用【开发人员】放标签到远程并手工配置好【使用人员】只需选择型号和group,点从远程获取,所有标签与pdf自动从远程复制到本地。(比如F20标准版)远程获取标签方案用C#写一个程序:读取config.ini文件里的Model和TEMPLATE_GROUP,在label.ini文件中读取[Model@TEMPLATE_GROUP]下所有key-
- 【水果识别】SVM水果成熟检测系统(含苹果 香蕉 橙子)【含GUI Matlab源码 11052期】含报告
Matlab武动乾坤
Matlab图像处理(进阶版)matlab
Matlab武动乾坤博客之家博主简介:985研究生,Matlab领域科研开发者;座右铭:行百里者,半于九十。代码获取方式:CSDNMatlab武动乾坤—代码获取方式更多Matlab图像处理仿真内容点击①Matlab图像处理(进阶版)⛳️关注CSDNMatlab武动乾坤,更多资源等你来!!⛄一、SVM水果成熟检测系统SVM(支持向量机)水果成熟检测系统的原理和流程如下:原理:1SVM是一种监督学习算
- 解决vscode连接docker容器没有权限的问题
Ivy_Hu677
vscodedockeride
问题描述为了用VSCode打开容器内的代码,方便调试,安装VSCode中的Docker扩展。但是发现显示如下报错:ERROR:GotpermissiondeniedwhiletryingtoconnecttotheDockerdaemonsocketatunix:///var/run/docker.sock:Gethttp://%2Fvar%2Frun%2Fdocker.sock/v1.24/in
- ubuntu安装、升级、卸载go语言
aspirinnil
linuxgolanglinuxubuntugolang
ubuntu安装、升级、卸载golang一、安装go二、升级go1.卸载go2.重新安装新版本的golangubuntu安装、升级、卸载golang一、安装go下载go方法一:官网下载:https://golang.org/dl/方法二:打开ubuntu输入:wgethttps://dl.google.com/go/go1.15.3.linux-amd64.tar.gz
- GUI登录窗口3(程序备份)
Cc_zhH
GUI登录窗口GUI开发python开发语言
importrandomfromtkinterimport*fromtkinterimportmessageboximportstring#注册属性defname_12():#账号输入框字符数量限制deflimit_entry11_length(*args):value=entry11_var.get()iflen(value)>25:entry11_var.set(value[:25])else
- GUI登录界面
Cc_zhH
GUI开发GUI登录窗口python开发语言
源代码部分importrandomfromtkinterimport*fromtkinterimportmessageboxdefname_12():button1.place_forget()entry1.place_forget()button2.place_forget()entry2.place_forget()button3.place_forget()entry3.place_forg
- 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独立出来,数据持