- helm安装kubernetes-dashboard(2,Linux运维开发技巧
2401_83974783
2024年程序员学习kuberneteslinux运维开发
当前k8s集群版本1.23.61.1添加repo[root@masterhelm]#helmrepoaddkubernetes-dashboardhttps://kubernetes.github.io/dashboard/[root@masterhelm]#helmsearchrepokubernetes-dashboard/kubernetes-dashboardNAMECHARTVERSIO
- 手机号码归属地API:助力数字化服务的利器
api
前言在当今数字化时代,手机号码已成为人们日常生活中不可或缺的一部分,而手机号码归属地API作为一种高效、便捷的网络服务接口,正逐渐成为众多行业提升用户体验和服务质量的重要工具。什么是手机号码归属地API?手机号码归属地API是一种允许开发者通过编程方式查询手机号码注册地信息的网络服务接口。它通常由第三方服务提供商通过HTTP请求的方式提供。通过这种API,开发者可以快速获取手机号码的归属地信息,包
- 这些搜索技巧你不会?
前端后端
Hey,我是沉浸式趣谈本文首发于【沉浸式趣谈】,我的个人博客https://yaolifeng.com也同步更新。转载请在文章开头注明出处和版权信息。如果本文对您有所帮助,请点赞、评论、转发,支持一下,谢谢!每天搜索,你却只会简单输入几个词?搜索结果总被广告和无关内容淹没?掌握这些搜索技巧,让你不再在信息海洋中迷失,直达目标信息!基础搜索技巧1.多关键词搜索方式:关键词1关键词2关键词3例如:Py
- 前端解决跨域的几种方案
爱分享的程序员
前端前端
以下是前端解决跨域问题的7种主流方案,根据应用场景和实现难度排序,附详细实现示例:一、开发环境解决方案1.WebpackDevServer代理(推荐)//vue.config.js/webpack.config.jsmodule.exports={devServer:{proxy:{'/api':{target:'http://backend-domain.com',//后端地址changeOri
- 基于AT89C52单片机的智能导盲杖报警设计
七月小卖铺
单片机单片机嵌入式硬件
点击链接获取Keil源码与ProjectBackups仿真图:https://download.csdn.net/download/qq_64505944/90498287?spm=1001.2014.3001.5503C+22部分参考设计如下:摘要超声波测距技术因其具有较强的指向性、低能耗、较长的传播距离等优点,已成为广泛应用于各类传感器技术和自动控制技术相结合的测距方案之一。超声波传感器利用声
- 【DeepSeek】 全方位使用指南————简版
諰.
人工智能aiAI写作
一、平台概述DeepSeek(深度求索)是专注实现AGI的中国的人工智能公司,提供多款AI产品:智能对话(Chat)文生图(Art)代码助手(Coder)API开发接口企业定制解决方案二、注册与登录2.1账号创建访问官网https://www.deepseek.com点击右上角「注册」支持三种方式:手机号+短信验证邮箱注册(需验证邮件)第三方登录(微信/Google账号)2.2订阅计划套餐类型免费
- WinPcap编程——APR欺骗
4ct10n
VC++winpcap编程arp
一实验要求利用WinPcap编程,实现基于ARP欺骗的中间人攻击。1)利用WinPcap,分别向被欺骗主机和网关发送APR请求包,达到同时欺骗目标主机和网关的目的;2)所有目标主机和网关之间的数据都会被我们劫持,过滤两者之间的所有http交互数据包,并保存为文件。(http包的过滤可用80端口来标识)二实验原理1选择网卡及过滤规则在这里特别注以下几点:1.charpacket_filter[]="
- cherry-studio - 多模型支持的跨平台 AI 桌面助手
小众AI
AI开源人工智能AI编程
GitHub:https://github.com/CherryHQ/cherry-studio更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现-小众AI一款支持多种大语言模型服务的跨平台桌面客户端,兼容Windows、Linux和macOS系统。它支持主流云端模型(如OpenAI、Anthropic等)以及本地模型(如Ollama、LMStudio),能够满足文本生成、
- Open-Sora - 为所有人实现高效的视频制作大众化
小众AI
AI开源音视频人工智能AI编程
GitHub:https://github.com/hpcaitech/Open-Sora更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现-小众AI这是一款开源的SOTA(State-of-the-Art)视频生成模型,仅用20万美元(224张GPU)就能训练出商业级11B参数的视频生成大模型。它采用Python语言和PyTorch深度学习框架开发,具有生成速度快、资源消
- OWL - 优化劳动力学习的通用智能体
小众AI
AI开源学习人工智能AI编程
GitHub:https://github.com/camel-ai/owl更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现-小众AIOWL是一个前沿的多智能体协作框架,推动任务自动化的边界,构建在CAMEL-AIFramework。愿景是彻底变革AI智能体协作解决现实任务的方式。通过利用动态智能体交互,OWL实现了跨多领域更自然、高效且稳健的任务自动化。OWL在GAIA
- AnythingLLM - 任何文档资源内容转换为任何LLM
小众AI
AI开源人工智能AI编程
更多AI开源软件:AI开源-小众AIhttps://www.aiinn.cn/sources一个全栈应用程序,使您能够将任何文档、资源或内容转换为任何LLM都可以在聊天期间用作参考的上下文。此应用程序允许您选择要使用的LLM或矢量数据库,并支持多用户管理和权限。AnythingLLM是一个全栈应用程序,您可以在其中使用商用现成的LLM或流行的开源LLM和vectorDB解决方案来构建一个不折不扣的
- Visual C++从入门到精通第三版 PDF 下载
范武心Lucinda
VisualC++从入门到精通第三版PDF下载【下载地址】VisualC从入门到精通第三版PDF下载VisualC++从入门到精通第三版PDF下载项目地址:https://gitcode.com/open-source-toolkit/f4bb4资源介绍本仓库提供《VisualC++从入门到精通第三版》的PDF版本下载。这本书是一本非常适合初学者的入门书籍,内容涵盖了从C++基础知识到Visual
- Ubuntu20.04安装并配置Pycharm2020.2.5
搬砖的打工人!!!
ubuntupycharmpython
一.下载pycharm社区版1.下载地址:PyCharm:thePythonIDEfordatascienceandwebdevelopmentThePythonIDEfordatascienceandwebdevelopmentwithintelligentcodecompletion,on-the-flyerrorchecking,quick-fixes,andmuchmore.https:/
- Virtual Machine Platform is not enabled. Enable it using the following PowerShell script (in an admi
朋也透william
docker
DockerDesktop安装指南以及Windows下WSL2和Hyper-V相关问题追查-寂寞姜大虎-博客园(cnblogs.com)https://www.cnblogs.com/qfl-blog/p/18200575
- 代码管理工具——SVN
weixin_33728708
git开发工具python
2019独角兽企业重金招聘Python工程师标准>>>SVN版本控制的作用:记录若干文件内容变化,以便将来查阅特定版本修订情况。版本管理工具发展简史,cvs-->svn-->Git(参考:http://luckypoem14.github.io/test/2012/04/24/scm-history/)。svn全称subversion,是一个开源版本控制系统(C/S架构),始于2000年;git(
- LeetCode第98题_验证二叉搜索树
@蓝莓果粒茶
算法leetcodelinux算法链表c++数据结构python
LeetCode第98题:验证二叉搜索树题目描述给你一个二叉树的根节点root,判断其是否是一个有效的二叉搜索树。有效二叉搜索树定义如下:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。难度中等问题链接https://leetcode.cn/problems/validate-binary-search-tree/示例示例1:输入:
- 基于BCLinux制作Apache HTTPD 2.4.63 的RPM安装包
IT布道
apache
在这之前,我写过一篇《基于CentOS7制作ApacheHTTPD2.4.58的RPM安装包》的文章。本文大部分内容和之前差不多,但因为操作系统由CentOS7变成了BC-Linux,所以,有些内容就可以删减了。编译环境:操作系统:BC-Linuxhttpd版本:2.4.63制作工具:rpmbuild(这个之前的文章有介绍,看这里)下载httpd源码:官网目前的最新版本是2.4.63(2025.1
- 实用工具-Another Redis Desktop Manager介绍
吕海洋
数据库工具redis数据库
GitHub:https://github.com/qishibo/AnotherRedisDesktopManager/releasesGitee:AnotherRedisDesktopManager发行版-Gitee.comAnotherRedisDesktopManager是一款免费的Redis可视化管理工具,具有以下特点和功能:特点跨平台支持:兼容Windows、Mac、Linux等操作系
- linux emqx安装和配置
冰下一度12138
linux服务器运维
1、获取安装包可以网上下载,解压安装,解压目录自选,我这里安装位置是/usr/local/emqx/2、安装成功验证/usr/local/emqx/bin/emqxstart输入网址http://{ip}:18083初始用户名密码:admin/public登录后修改指定密码,开启授权认证,防止非法登录3、系统级别自启创建文件emqx.service放在/etc/systemd/system目录下[
- 141.HarmonyOS NEXT系列教程之3D立方体旋转轮播案例讲解之IDataSource接口实现
harmonyos-next
温馨提示:本篇博客的详细代码已发布到git:https://gitcode.com/nutpi/HarmonyosNext可以下载运行哦!HarmonyOSNEXT系列教程之3D立方体旋转轮播案例讲解之IDataSource接口实现效果演示1.IDataSource接口概述1.1接口作用IDataSource接口定义了数据源的标准接口,提供了:数据访问方法数据操作方法监听器管理方法1.2接口实现e
- 10篇R1相关的研究全面汇总,万字思考!
datawhale
原创长琴DatawhaleDatawhale干货作者:长琴,Datawhale成员本文通过10篇R1相关的研究,介绍R1后LLM的新范式。其核心就是如何进一步增强LLM的能力。本文中的相关阅读,可以在主页找到对应文章:主页地址:https://yam.gift/基本框架首先是整体的框架,如下所示。•Base+SFT•R1冷启动•LIMO(817DataSelection)•s1(1000)•Bas
- 浏览器工作原理深度解析(阶段一):从 URL 到页面渲染的完整流程
码农的时光故事
javascript前端
一、浏览器工作流程概述作为前端开发者,我们每天都在与浏览器打交道,但多数人对其内部工作机制却知之甚少。实际上,浏览器的核心功能就是将用户输入的URL转换为可视化的网页。这一过程大致分为六个关键步骤:网络请求:通过HTTP/HTTPS协议获取页面资源构建DOM树:解析HTML代码生成文档对象模型样式计算:解析CSS规则并应用到对应元素布局渲染:计算元素位置和尺寸生成渲染树合成优化:将渲染层合并为位图
- JAVA学习-练习试用Java实现“实现一个Spark应用,对大数据集中的文本数据进行情感分析和关键词筛选”
守护者170
java学习java学习
问题:实现一个Spark应用,对大数据集中的文本数据进行情感分析和关键词筛选。解答思路:要实现一个Spark应用,对大数据集中的文本数据进行情感分析和关键词筛选,需要按照以下步骤进行:1.环境准备确保的环境中已经安装了ApacheSpark。可以从[ApacheSpark官网](https://spark.apache.org/downloads.html)下载并安装。2.创建Spark应用以下是
- S-function模块案例详解(MATLAB程序)
常岱昶Salena
S-function模块案例详解(MATLAB程序)【下载地址】S-function模块案例详解MATLAB程序S-function模块案例详解(MATLAB程序)本仓库提供了一个详细的S-function模块案例,主要内容为编写的蹦极系统的S-function案例详解项目地址:https://gitcode.com/open-source-toolkit/a6c52本仓库提供了一个详细的S-fu
- 【面试场景题-你知道readTimeOutException,会引发oom异常吗】
F_windy
java面试
今天面试,我讲一个oom的场景。大致是这样:因为我们有一个需要调用第三方接口的http请求,然后因为线程池配置不合理,并且超时时间设置过长,导致线程堆积,最终oom异常。我觉得这个很好理解,然后,面试官一直问,我好像没有讲很清楚。他也有点呆,问我进阻塞队列的线程会运行吗?怎么就oom了?我说,大哥,线程创建出来就要占用内存了呀。他好像还是不懂。然后总结了一下。当系统出现readtimeout异常时
- Redhat7.6下安装Ruby on Rails环境
后青春期的诗go
经验分享rubyonrails后端
一、前置准备操作系统说明RedHatEnterpriseLinux(RHEL)7.6带GUI安装(勾选开发工具),配置好网络下载与配置yum源相关安装包下载:wgethttp://mirrors.163.com/centos-vault/7.6.1810/os/x86_64/Packages/rpm-4.11.3-35.el7.x86_64.rpmwgethttp://mirrors.163.co
- 基于koajsAdmin+mongodb的后台管理快速开发框架安装运行记录
后青春期的诗go
经验分享mongodb数据库node.jsvue.jselementui
前置操作下载源码源码地址:https://gitee.com/zhoushuigui/koajs-admin安装mongodb数据库并连接安装yarnnpminstallyarn-g安装nodemonnpminstallnodemon-g前端运行安装依赖进入项目根目录,在命令行执行如下命令安装依赖:yarn--registry=https://registry.npmmirror.com启动服务y
- python中的构造函数
weixin_30770495
python
python中构造函数可以这样写classclassname():def——init——(self):#构造函数函数体转载于:https://www.cnblogs.com/begoogatprogram/p/4649076.html
- HBuilderX的下载、安装
听海边涛声
HBuilderX
HBuilderX简称HX,是一款轻量级的、免费的IDE。它具有强大的语法提示和vue支持。访问HBuilderX的官网:https://www.dcloud.io/hbuilderx.html选择要下载的版本,我下载的是v4.08版本:将压缩包下拉以后解压到某个目录下就可以了,不需要安装过程,例如,我解压到D:\HBuilderX目录下面:双击HBuilderX.exe,就可以运行了:注意:HB
- FDTD:基于Python的电磁场模拟开源库教程
邱进斌Olivia
FDTD:基于Python的电磁场模拟开源库教程项目地址:https://gitcode.com/gh_mirrors/fd/fdtd项目介绍FDTD(Finite-DifferenceTime-Domain)是一个致力于电磁场仿真的开源项目,由flaport维护。此项目基于Python语言,提供了一套灵活且强大的工具集,用于解决各种电磁学问题,包括但不限于光学、射频以及微波工程中的传播、散射等问
- 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独立出来,数据持