- 转:Spark RDD算子练习题
爱萨萨
技术-大数据sparkRDD练习
版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/qq_40825218/article/details/83720732给定数据如下:12张三25男chinese5012张三25男math6012张三25男english7012李四20男chinese5012李四20男math5012李四20男e
- 配置cri-docker使kubernetes1.24以docker作为运行时
萌褚
Linux
镜像下载、域名解析、时间同步请点击阿里云开源镜像站从kubernetes1.24开始,dockershim已经从kubelet中移除,但因为历史问题docker却不支持kubernetes主推的CRI(容器运行时接口)标准,所以docker不能再作为kubernetes的容器运行时了,即从kubernetesv1.24开始不再使用docker了。但是如果想继续使用docker的话,可以在kubel
- 软件工程 案例分析作业
SoftwareTeacher
编程语言人工智能javapython大数据
现代软件工程构建之法作业https://bbs.csdn.net/forums/SoftwareEngineering?typeId=1723软件工程作业案例分析很多同学有疑惑:软件工程课是否就是枯燥的理论课?或者是几个牛人拼命写代码,其他人抱大腿的课?要不然就是学习一个程序语言,练习某个框架,搞一个职业培训的课?都不对!软件工程有理论,有实践,更重要的是分析,思辨,总结。在课程中,同学们自己组织
- 训练入口+保存模型
如若123
深度学习python人工智能
importargparsefromtorch.utils.dataimportDataLoaderfromtesting.testingimport*frommodels.model_coupled_v1importUnetfromdata.data_loadimport*importglobfromcollectionsimportOrderedDictdevice="cuda:0"iftor
- 转帖-在Eclipse中开发JSF
ren_z_q
JSFEclipseBeanJSPOracle
(转自http://www.blogjava.net/gaofeng/articles/127842.html作者:Java.net)Eclipse3.3刚刚发布,正在学习JSF,于是使用Eclipse3.3做了一个JSF的Demo,很简单,主要是页面的跳转、组件和Bean的绑定等基础...1、工具准备:Eclipse3.3WTP2.0(最好下载一个all-in-one的版本..省的麻烦)...依
- paddleseg推理预测文件解析predict.py
weightOneMillion
图像分割每天一篇PaddleSeg学习python人工智能
1预测命令格式predict.py脚本是专门用来可视化预测案例的,命令格式如下所示:pythonpredict.py\--configconfigs/quick_start/bisenet_optic_disc_512x512_1k.yml\--model_pathoutput/iter_1000/model.pdparams\--ima
- 关于网络标准协会
hailuoing
1.IETF互联网工程任务组(InternetEngineeringTaskForce,IETF)负责互联网标准的开发和推动IETF由互联网结构委员会(InternetArchitectureBoard,IAB)监督,IAB向互联网协会(InternetSociety,ISOC)负责。现任IETF主席是BrianCarpenter。相关机构:互联网协会(ISOC-InternetSociety)I
- Java 和 JavaScript 的区别
大乔乔布斯
javajavascript开发语言
尽管名字相似,JavaScript的名字中带有“Java”,确实让很多人误以为它与Java有紧密联系。但实际上,它们是完全不同的语言,只是在JavaScript的发展历史中与Java有一定的关联。1.JavaScript的诞生背景时间点:1995年,网景公司(Netscape)开发了一种轻量级的脚本语言,用于增强网页的交互性。开发者:JavaScript的发明者是布兰登·艾奇(BrendanEic
- golang-实现自己的事件驱动
小屋子大侠
服务端golang
golang实现自己的事件驱动众所周知,go中的异步操作都已经封装在了运行时的过程中,有关socket的网络的异步操作都封装到了go的netpoll中,从而简化了编程形式。本文也就根据evio库总结而来。golang跨平台库如何编写golang的跨平台库,现在主流的方式如下:evserver│go.mod│main.go│└───show││show.go││show_darwin.go││sho
- 贪吃蛇游戏(代码篇)
星霜旅人
项目代码c语言开发语言游戏
我们并不是为了满足别人的期待而活着。前言这是我自己做的第五个小项目---贪吃蛇游戏(代码篇)。后期我会继续制作其他小项目并开源至博客上。上一小项目是贪吃蛇游戏(必备知识篇),没看过的同学可以去看看:有关贪吃蛇必备知识的小项目https://blog.csdn.net/hsy1603914691/article/details/142455297?sharetype=blogdetail&share
- 计算机网络(北邮信息工程期末速通)
arbelite
计算机网络
计算机网络计算机网络概述⭐计算机网络的组成和功能计算机网络的组成:从组成看,计算机网络主要由三大部分组成:硬件(hardware),软件(software),协议(protocol)。从工作方式看:可分为边缘部分(edgepart)和核心部分(corepart)。从功能组成来看:计算机网络由通信子网(CommunicationSubnetwork)和资源子网(ResourceSubnetwork)
- 从零开始学设计模式(四):工厂模式(Factory Pattern)
江夏、
JavaJava基础设计模式java工厂模式设计模式
作者平台:|CSDN:blog.csdn.net/qq\_4115394…|掘金:juejin.cn/user/651387…|知乎:www.zhihu.com/people/1024…|GitHub:github.com/JiangXia-10…|公众号:1024笔记本文大概11588字,读完共需25分钟定义工厂模式(FactoryPattern)也是Java中最常用的设计模式之一。这种类型的设
- rockylinux9.4单master节点k8s1.28集群部署
大白菜和MySQL
k8s集群kubernetes容器云原生
kubernetes集群部署常见的k8s部署方式包括:二进制包、kubeadm工具、云服务提供商、或通过一些开源的工具搭建,例如:sealos、kuboard、Runcher、kubeSphere。本文使用kubeadm的部署方式,部署k8s1.28版本我本地安装资源规划如下:IP地址主机名称角色操作系统主机配置参考192.168.3.92master1masterrockylinux9.4(最小
- 华为云云原生王者之路集训营(黄金-第五章)
※网络笨猪※
云厂商-公有云华为云云原生
华为云云原生王者之路集训营(黄金-第五章)1.11.1Kubernetes工作负载(Workload)介绍工作负载是在Kubernetes上运行的应用程序。无论你的负载是单一组件还是由多个一同工作的组件构成,在Kubernetes中你可以在一组Pods中运行它。在Kubernetes中,Pod代表的是集群上处于运行状态的一组容器。四种负载:无状态工作负载:管理的Pod集合是相互等价的,需要的时候可
- 【愚公系列】二十三种设计模式(一)-工厂方法模式(Factory Method Pattern)
愚公搬代码
(完)C#版设计模式和原则设计模式工厂方法模式microsoft.netc#.netcore
标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度博客之星TOP2,2023年度博客之星TOP2,2022年华为云十佳博主,2023年华为云十佳博主等。博客内容.NET、Jav
- 【深度学习|变化检测孪生网络】基于共享权重的双流 U-Net 变化检测网络架构,附代码(一)
努力学习的大大
深度学习基础深度学习网络架构人工智能python
【深度学习|变化检测孪生网络】基于共享权重的双流U-Net变化检测网络架构,附代码(一)【深度学习|变化检测孪生网络】基于共享权重的双流U-Net变化检测网络架构,附代码(一)文章目录【深度学习|变化检测孪生网络】基于共享权重的双流U-Net变化检测网络架构,附代码(一)基于共享权重的双流U-Net变化检测网络架构1.双流网络(SiameseNetwork)概述2.双流网络的应用——变化检测3.U
- Ubuntu Server连接wifi
Young4Dream
Linuxubuntulinux运维
背景家里服务器放在客厅太吵了,准备挪到阳台,所以买了TPwifi接收器,因此需要配置wifi连接.刚开始买了TendaAx300,结果不支持服务器系统,买前还是得和客服交流交流.准备驱动安装对于windows系统来说,这款接收器是免驱的,但在linux上需要安装相应型号驱动安装完成后,使用ipa查看网卡情况,一般wl开头的就是我们的主角.配置nmcli命令是配置的主要工具,需要先安装network
- H3C-交换机telnet远程配置案例
仓鼠OO
网络配置(H3C)H3C网络运维
目录1.telnet简述2.网络拓扑3.实验需求4.配置步骤4.1网络基本配置4.2telnet配置5.telnet测试远程6.小结1.telnet简述Telnet是远程登录服务的一个协议,该协议定义了远程登录用户与服务器交互的方式。它允许用户在一台联网的计算机上登录到一个远程分时系统中,然后像使用自己的计算机一样使用该远程系统。Telnet使用客户-服务器模式进行工作。在用户端,需要启动一个Te
- WPF常见面试题解答
源之缘-OFD解决方案之道
WPFwpf
以下是WPF(WindowsPresentationFoundation)面试中常见的问题及解答,涵盖基础概念、高级功能和实际应用,帮助你更好地准备面试:基础概念什么是WPF?WPF是微软开发的用于构建桌面应用程序的UI框架,基于XAML(可扩展应用程序标记语言)和.NETFramework。它支持2D和3D图形、动画、数据绑定、多媒体等功能。WPF支持哪些类型的文档?WPF支持流格式和固定格式文
- springcloud nacos 负载均衡 权重
牛马狗猪猴
springbootspringcloud负载均衡java
springcloudnacos负载均衡权重项目搭建代码在这里https://blog.csdn.net/weixin_45730866/article/details/128930496?spm=1001.2014.3001.5502假设我们consumer-order要调用consumer-user(这个服务启动了两个);不知道怎么在idea启动两个相同的服务可以看看下面这个https://b
- C# Json字符串生成工具的实现与应用
徐子贡
本文还有配套的精品资源,点击获取简介:JSON是一种轻量级的数据交换格式,被广泛用于Web服务中,用以替代XML,因其简洁易处理特性。本课程主要介绍如何在C#中使用Json.NET库生成JSON字符串,并提供源码分析,帮助开发者理解并根据需求定制自己的Json字符串生成工具。课程将涵盖数据类型、库的使用、源码解析、工具定制、效率提升、扩展性以及如何将工具集成到项目中,从而加深对JSON生成原理的理
- 从 TCP/IP 演进看按序流与性能
dog250
tcp/ip网络协议网络
前面谈到互联网从早期对等通信模型转入后来内容分发模型后的一系列问题,诸如拥塞,安全等,本文谈谈关于性能的更普遍方面。TCP/IP祖师爷1974年的开山论文AProtocolforPacketNetworkIntercommunication以及随后RFC675,标志着TCP/IP的正式诞生,在此之前还有一个里程碑事件,即RFC33NCP标准化。RFC33解决了分布式通信问题,而RFC675解决了异
- GET、POST请求工具类
Mr.xie1024
服务器javahttp
HttpRequestUtil工具类importio.micrometer.core.instrument.util.StringUtils;importorg.slf4j.Logger;importorg.slf4j.LoggerFactory;importjava.io.*;importjava.net.HttpURLConnection;importjava.net.URL;importja
- 【报错】 拉基础镜像: Error response from daemon: Get “https://registry-1.docker.io/v2/“: net/http: request ca
Jackilina_Stone
【EH】报错处理#docker报错docker
背景:#拉基础镜像dockerpullubuntu:20.04报错如下:Errorresponsefromdaemon:Get"https://registry-1.docker.io/v2/":net/http:requestcanceledwhilewaitingforconnection(Client.Timeoutexceededwhileawaitingheaders)解决方法:sudo
- Golang 进阶4—— 网络编程
小吴同学(wlx)
golang
Golang进阶4——网络编程注意,该文档只适合有编程基础的同学,这里的go教程只给出有区别的知识点网络编程:把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大,功能强的网络系统,从而使众多的计算机可以方便的相互通信、共享硬件、软件等资源1.1客户端//客户端import("fmt""net"//所有网络编程都在这个包下)funcmain(){//打印fmt.Println("
- centos7安装jumpserver堡垒机
落花_忆流年
运维项目linux
堡垒机简介跳板机属于内控堡垒机范畴,是一种用于单点登陆的主机应用系统。跳板机就是一台服务器,维护人员在维护过程中,首先要统一登录到这台服务器上,然后从这台服务器再登录到目标设备进行维护。但跳板机的缺点是没有实现对运维人员操作行为的控制和审计,出现误操作或违规操作难以定位到原因和责任人;并且跳板机存在严重的安全风险,如果跳板机系统被攻入,则后端资源完全暴露无遗。对于个别资源(如telnet)可以通过
- Golang实现一个简单的网络编程
xlxingff
golang网络golang网络
Server:packagemainimport("fmt""io""net")funchandle(connnet.Conn){deferconn.Close()ip:=conn.RemoteAddr().String()fmt.Printf("newclient:%s\n",ip)for{buff:=make([]byte,128)bufflen,err:=conn.Read(buff)ife
- golang网络编程之UDP可靠传输协议QUIC
SMILY12138
网络golang
Golang是一种高效、简洁的编程语言,在网络编程中,Golang通过其强大的标准库支持QUIC协议的UDP可靠传输。QUIC(QuickUDPInternetConnections)是一个基于UDP协议的可靠传输协议,它通过使用TLS1.3实现了端到端加密。在Golang中,我们可以使用quic-go包来实现QUIC协议的UDP可靠传输。下面是一个简单的例子:packagemainimport(
- AlphaFold2的思路总结(十五)
xiaofengzihhh
蛋白质结构预测深度学习人工智能神经网络
2021SC@SDUSC这学期的代码分析工作接近尾声了,我想简单总结一下AlphaFold2的总体思路 具体来看,AlphaFold2主要利用多序列比对(MSA),把蛋白质的结构和生物信息整合到了深度学习算法中。它主要包括两个部分:神经网络EvoFormer和结构模块(Structuremodule)。一、EvoFormer 在EvoFormer中,主要是将图网络(Graphnetworks)
- 轻量级网络应用 服务生活
MhZhou0412
生活
LostNet:AsmartwayforlostandfindMeihuaZhou,IvanFung,LiYang,NanWan,KekeDi,TingtingWangDuetotheenormouspopulationgrowthofcitiesinrecentyears,objectsarefrequentlylostandunclaimedonpublictransportation,inr
- 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独立出来,数据持