- ROS:机器人描述--URDF和XACRO
通哈膨胀哈哈哈
ROSurdf
1URDF文件1.1link和joint图中机器人的描述方式以上描述只能够描述机器人的大致样子,不能够确定link的位置关系和具体形状。1.2位置在定义好了机器人的骨架后,进一步我们可以使用origin子标签进行定义link所应该在的位置.但是有一点应该注意到,link和link之间是使用joint进行连接,那么link的位置,就由连接他的joint确定.所以,该子标签是定义在joint内.在三维
- JointJs 在 Vue 中的使用探索(一): Hello JointJS
Lovely Ruby
vue.js
文章目录前言根本问题探索过程安装jointjs测试@joint/coredemo代码jointjs@joint/core前言最近需要用到JointJs做一些东西,但是官方文档的@joint/core跑下来后发现并不太好使,空白一片…(这是个误会…)所以开了个贴给自己做个笔记,也给需要用到的人一个参考根本问题@joint/core是可以正常使用的,猜测是我没有放到onMounted()里探索过程安装
- 2021-12-21
地科七班郑丽丽
Part11.本单元中我学到的最重要的理念精读:一个伟大的杰作视听说:由于工作距离不同,上班方式不同。2.我在本文中所学到的怦然心动的单词精读studio,chicory,tune,joint,pneumonia,stalk,icy,,merry,subtract,nonsense,bosh,lay,scarcely,bushy,funeral,procession,march,scarcely,
- 第四单元复盘
地科7宋世浩
Part11,从本单元中我学到的最重要的理念(精读和视听说分别总结)精读:人生在世要有信念,要对未来充满希望,明白生命的意义,要勇敢的活下去.视听说:不同的交通工具有各自的好处与坏处,要根据情况选择交通工具.2,我在本片文章/音频/视频中学到的怦然心动的单词(精读和视听说分别总结)精读:joint.pneumonia.stalk.scarcely.blank.accomplish.subtract
- U4复盘
教育学一班35袁欣怡
Part11,从本单元中我学到的最重要的理念(精读和视听说分别总结)精读:珍爱生命,无论什么时候都不要放弃活着的希望,珍惜友情视听说:交通方式多种多样,各具特点2,我在本片文章/音频/视频中学到的怦然心动的单词(精读和视听说分别总结)精读:joint,pneumonia,victim,subtract,whistle,nonsense,masterpiece,fragile,cling,sin,a
- ROS:URDF、Gazebo与Rviz结合使用
Hello xiǎo lěi
ROS入门学习机器人自动驾驶人工智能ROS
目录一、机器人运动控制以及里程计信息显示1.1ros_control简介1.2运动控制实现流程(Gazebo)1.2.1为joint添加传动装置以及控制器1.2.2xacro文件集成1.2.3启动gazebo并控制机器人运动1.3Rviz查看里程计信息1.3.1启动Rviz1.3.2添加组件二、雷达信息仿真以及显示2.1流程分析2.2Gazebo仿真雷达2.2.1新建Xacro文件,配置雷达传感器
- 【Paper Reading】VideoBERT: A Joint Model for Videoand Language Representation Learning
Joyner2018
数据准备:New_HOINew_verbNew_objectPaperreading:Title:VideoBERT:AJointModelforVideoandLanguageRepresentationLearningAuthor:ChenSun,AustinMyers,CarlVondrick,KevinMurphy,andCordeliaSchmid摘要:Self-supervisedle
- 人文二班 南少敏
Nnn_7299
Part11,从本单元中我学到的最重要的理念(精读和视听说分别总结)精读:生命可贵视听说:时代在发展,交通方式在改变2,我在本片文章/音频/视频中学到的怦然心动的单词(精读和视听说分别总结)精读:joint:共同的;共有的brick:砖unseen:看不见的pneumonia:肺炎stalk:可怕地蔓延或游荡(于);潜行,偷偷接近stalker:跟踪者icy:极冷的;冰冷的victim:受害者sc
- ROS方向第二次汇报(3)
碳酸不酸鸭
ROSpython机器人
文章目录1.本方向学习内容:1.1.URDF:1.1.1.连杆Link的描述:1.1.2.关节Joint描述:1.1.3.创建机器人模型:1.2.ROS1HelloWorld实现:(暂时转向,重新学习):1.2.1.一点小插曲:1.2.2.流程:1.创建工作空间并初始化:2.在src中创建功能包:3.创建并编写代码文件:首先需要声明解释器:再进行主体编写:然后修改权限:修改配置文件:(新版本py也
- 【ACL 2023】A Novel Table-to-Graph Generation Approach for Document-Level Joint Entity and RE
Trouble..
信息抽取自然语言处理信息抽取关系抽取
【ACL2023】ANovelTable-to-GraphGenerationApproachforDocument-LevelJointEntityandRelationExtraction论文:https://aclanthology.org/2023.acl-long.607/代码:https://github.com/ridiculouz/TaG/https://github.com/to
- 睿尔曼超轻量仿人机械臂-- RM65-B添加夹持器和转接板URDF使用说明
睿尔曼学院
机器人linux开源
一、URDF文件简介URDF(UnifiedRobotDescriptionFormat),统一机器人描述格式,是一种特殊的xml格式,用来描述一个机器人.在ROS中,urdf功能包包含一个urdf格式文件的C++解析器,这样,任何通过统一编码格式设计的机器人都可以通过该解析器得到一个可视化的模型。URDF创造的机器人模型包含的内容有:连杆link关节joint运动学参数axis动力学参数dyna
- UR5正向动力学控制
kissgoodbye2012
MatlabUR5VrepMatlab动力学仿真运动学控制
--Thisisathreadedscript,andisjustanexample!jointHandles={-1,-1,-1,-1,-1,-1}fori=1,6,1dojointHandles[i]=simGetObjectHandle('UR5_joint'..i)end--Set-upsomeoftheRMLvectors:vel=180accel=40jerk=80currentVel
- 【论文解读】V2VNet: Vehicle-to-Vehicle Communication for Joint Perception and Prediction
我叫两万块
目标检测自动驾驶
V2VNet摘要引言方法WhichInformationshouldbeTransmittedLeveragingMultipleVehicles实验结论摘要在本文中,我们探索了使用车对车(V2V)通信来提高自动驾驶车辆的感知和运动预测性能。通过智能聚合来自附近多辆车辆的信息,我们可以从不同的角度观察同一个场景。这使我们能够透过遮挡物,并在远距离探测到物体,而在远距离观察到的物体非常稀疏或根本不存
- 论文阅读[2023ToN]Joint Upload-Download Transmission Scheme for Low-Latency Mobile Live Video Streaming
woshicaiji12138
论文阅读笔记论文阅读视频强化学习
JointUpload-DownloadTransmissionSchemeforLow-LatencyMobileLiveVideoStreaming会议信息:Publishedin:2023IEEE/ACM31stInternationalSymposiumonQualityofService(IWQoS)1背景移动视频流量和用户需求的快速增长,导致多个视频流客户端共享一个瓶颈链路的可能性增大
- Ultraleap 3Di新建项目之给所有的Joint挂载物体
望有恒
VR3d
工程文件Ultraleap3Di给所有的Joint挂载物体前期准备参考上一期文章,进行正确配置Ultraleap3Di配置以及在Unity中使用Ultraleap3Di手部跟踪新建项目初始项目如下:新建CreateEmpty将新建的CreateEmpty,重命名为LeapProvider,并添加新的组件新添加的组件如下,参数默认,不需要修改继续新建CreateEmpty,并重命名为HandMode
- [小脚本] maya 命令行常用操作
长虹剑
常用代码备份maya动作生成
其实这些代码大部分是从chatgpt中生成的。骨骼命名importmaya.cmdsascmdsdefrename_bones():selected_bones=cmds.ls(type="joint")#获取选中的骨骼forboneinselected_bones:if"_"inbone:new_name=bone.split("_")[0]#获取下划线前面的部分作为新的骨骼名称cmds.ren
- Span-based Joint Entity and Relation Extraction with Transformer Pre-training
自然语言处理CS
论文笔记自然语言处理深度学习神经网络transformer关系抽取
Abstract本文介绍了一种基于span的联合实体和关系提取的注意力模型。主要贡献是在BERT嵌入上的轻量级推理,能够进行实体识别和过滤,以及使用本地化的,无标记的上下文表示的关系分类。该模型使用强句内负样本进行训练,这些负样本在一次BERT中被有效的提取,这有助于对句子中的所有span进行搜索,在消融试验中,本文证明了预训练、负采样和局部环境的好处。Instruction利用transform
- DSNet: Joint Semantic Learning for Object Detection in Inclement Weather Conditions
暗魂b
目标检测人工智能计算机视觉
AbstractDSNet可以端到端的解决三个任务:可见性提升,目标分类,目标定位。DSNet包含两个子网络:检测子网和恢复子网。恢复子网通过与检测子网共享特征提取层并采用特征恢复模块来增强可见性Introduction使用先进的去雾模型做预处理的图像作为目标检测器的输入并不总是保证提高对象检测性能。此外,由于额外的去雾任务,将去雾所使用的的模型与检测方法相结合会降低检测速度主要贡献如下:1、所提
- 英语复盘
张云叶
part1.1精读:人的心理作用很强大,有时积极向上的心理可以救人,因此要保持积极向上的心理视听说:人们的通勤距离决定他们的通勤时间,通勤距离近真的值得被羡慕2.精读:diagnose,roundly,waive,tune,joint,stalker,icy,victim,scarcely,blank,bosh,accomplish,procession,subtract,merry,backwa
- 论文-Multi-Domain Joint Semantic Frame Parsing using Bi-directional RNN-LSTM(Joint Seq)
魏鹏飞
1.简称论文《Multi-DomainJointSemanticFrameParsingusingBi-directionalRNN-LSTM》简称SeqJoint,作者DilekHakkani-Tür(Microsoft),经典的NLU论文(SemanticFrame)。2.摘要序列到序列深度学习是近年来在口语理解的监督学习中出现的一种新范式。然而,以前的大多数研究都是探索这一框架来为每个任务
- 2021-12-20 - 草稿
21卫怡芬
Part11,从本单元中我学到的最重要的理念(精读和视听说分别总结)精读:关爱患癌的人群。视听说:学会描述乘车时的风景。2,我在本片文章/音频/视频中学到的怦然心动的单词(精读和视听说分别总结)精读:joint共同的,共有的stalk可怕地蔓延和游荡victim受害者scarcely几乎没有,几乎不inawhisper低声地fancy幻想fragile易碎的,虚弱的standout显著突出视听说:
- catkin_make文件更新经验
chch2010523
ros经验分享
先列出文件树└──smartcar_description├──CMakeLists.txt├──config│├──arm_controller_ur5.yaml│├──joint_state_controller.yaml│└──myrviz.rviz├──launch│├──base.urdf.rviz.launch│├──controller_utils.launch│└──scout_w
- ros笔记 URDF仿真 3.joint
豆包公子
机器人
1.属性name--->为关节命名type--->关节运动形式continuous:旋转关节,可以绕单轴无限旋转revolute:旋转关节,类似于continues,但是有旋转角度限制prismatic:滑动关节,沿某一轴线移动的关节,有位置极限planer:平面关节,允许在平面正交方向上平移或旋转floating:浮动关节,允许进行平移、旋转运动fixed:固定关节,不允许运动的特殊关节2.子标
- ROS2自学笔记:URDF机器人建模
Raine_Yang
实习记录ROS2学习笔记python统一建模语言
一般机器人可以分为以下四个部件:硬件系统,驱动系统,传感系统,控制系统URDF(统一机器人描述格式):1使用xml文件格式2包含link和joint,link为刚体部分,joint为连杆,驱动部分link:描述机器人外观,物理属性,碰撞体积,每个link会成为一个坐标系joint描述两个link间关系,有以下6类:continuous:绕轴无限旋转revolute:绕轴旋转,有角度限制prisma
- 【数据库】SQL执行顺序
程序猿夏夏夏
数据库sqljava
SQL语句执行有一定的执行顺序,接下来我们看一个常用的SQL语句selectdistinctx,max(id)fromt1joint2ont1.x=t2.xwhere1=1groupbyxhavingcount(x)>2orderbyxlimit11、FROM查询表数据,执行笛卡尔积先确定从哪个表中取数据,所以最先执行fromtab。对FROM子句中的前两个表执行笛卡尔积(交叉联接),生成虚拟表V
- ROS-机器人仿真urdf-rviz、xacro
彐雨
ROS机器人
文章目录一、urdf集成rviz1.1基本流程1.2优化rviz启动二、urdf语法详解2.1robot2.2link2.3joint2.4urdf练习2.5urdf工具三、URDF优化_xacro3-1Xacro_语法详解3-2Xacro_完整使用流程示例3-Xacro_实操一、urdf集成rviz1.1基本流程需求描述:在Rviz中显示一个盒状机器人实现流程:1.创建功能包,导入依赖创建一个新
- 关于joint_state_publisher与robot_state_publisher安装
geniusNMRobot
ros2gazebo机器人
ros2完整版自带robot_state_publisher,但是没有joint_state_publisher安装包,所以如果需要这2个包的话,只需要安装joint_state_publisher就可以了,下载方式:我采用源码安装:sudogitclone-bros2https://gitee.com/geniuschinahn/joint_state_publisher.git然后切换到这个文
- (ros2)rviz2中显示机器人模型最小系统
geniusNMRobot
机器人ros2rviz2
3个包一个都不能少可以看到rviz订阅了/robot_description所以我们才需要param参数robot_description来看看是谁发布的/robot_description/joint_state_publisher订阅了/robot_state_publisher/robot_state_publisher是发布了/robot_description,另外2个节点(rviz2和
- 连接点(Joint Point)和切入点(Point cut)是什么?
wanbf
连接点是程序执行的一个点。例如,一个方法的执行或者一个异常的处理。在SpringAOP中,一个连接点总是代表一个方法执行。举例来说,所有定义在你的EmpoyeeManager接口中的方法都可以被认为是一个连接点,如果你在这些方法上使用横切关注点的话。切入点是一个匹配连接点的断言或者表达式。Advice与切入点表达式相关联,并在切入点匹配的任何连接点处运行(比如,表达式execution(*Empl
- smplify-x笔记
平丘月初
smplpython机器学习人工智能
SMPL模型关节点定义如下图每个不同的2d数据集都会涉及到joint_mapper,即re-ordertheSMPLjointstosomeotherconvention,例如coco数据集。from.vertex_idsimportvertex_idsasVERTEX_IDSifvertex_idsisNone:#SMPLandSMPL-Hsharethesametopology,soanyex
- 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独立出来,数据持