- 前端页面实现table可拖动改变列宽
牧 码 人
jsjQueryjs表格拖动csscolResizable
此处实现页面的table表格可以自由拖动列宽,拖动时表格内文字不换行,超出部分以...代替,实现步骤如下:1.首先引入jQuery和colResizable的js文件,colResizable支持表格拖动改变列宽,但基于jQuery,(1)colResizable可以去:http://www.bacubacu.com/colresizable/#rangeSlider下载(2)引入文件:2.编写j
- 鸿蒙(HarmonyOS)应用层开发知识点汇总
OH五星上将
移动开发鸿蒙开发HarmonyOSharmonyos鸿蒙开发移动开发分布式arkui组件化性能优化
由于不少粉丝朋友反馈,说网上的有些知识点记录的比较杂乱,学习起来很费时间!小编下面针对【鸿蒙】应用开发中的一些技术点做的整理归纳,希望下面的能够有效的帮助到大家:基础组件基础组件(text开发)基础组件(input开发)基础组件(button开发)基础组件(picker开发)基础组件(image开发)基础组件(image-animator开发)基础组件(rating开发)基础组件(slider开发
- Flutter学习记录-基础控件
薰舞空
statelesswidget没有内部状态.Icon、IconButton,和Text都是无状态widget,他们都是StatelessWidget的子类。statefulwidget是动态的.用户可以和其交互(例如输入一个表单、或者移动一个slider滑块),或者可以随时间改变(也许是数据改变导致的UI更新).Checkbox,Radio,Slider,InkWell,Form,andTextF
- CSS选择器的命名规范
前端_小智
HTML
1.模块化命名例如:与布局相关的样式以“g”为开头。如“g-content”和“g-header”;与挂钩相关的样式以“j”为开头。如“j-open”和“j-request”;与元件相关的样式以“m”为开头。如“m-dropMenu”和“m-slider”;与状态相关的样式以“s”为开头。如“s-current”和“s-selected”;与工具相关的样式以“u”为开头。如“u-clearfix”
- Qt自定义滑动条
sensetime阿清
Qtqtc++
最近要用到滑动条,Qt自带的QSlider虽然能满足需求,但是操作起来有很多不舒服的地方,于是在它的基础上改了改,分享给大家使用。先放效果图:在QSlider的基础上,改变了样式,绘制了刻度,增加了取整功能,只需要微调就能适应各种需求。头文件。需要包含下面的东西#include#include#include#include#include声明。需要继承QSlider,并重写两个鼠标事件mouse
- qt实现三原色滑动条变色
杨~friendship
qt开发语言学习c++ubuntulinux
在qt中有这样一个控件:就是这个HorizontalSlider他的作用相信大家都知道了,也就是通过滑动来改变数值。今天我们就使用这个控件实现一个三原色滑动变色。实现效果:1.创建UI界面这个就不用多说了,这个大家就按照我的这个去创建就好了。2.编写代码首先我们要初始话我们的属性://初始化红色滑动条ui->hsred->setMaximum(255);ui->hsred->setMinimum(
- unity中的动态绑定、赋值等
hhsass
unity游戏引擎
1.动态给游戏对象赋值//声明私有变量GameObjectobj;//在Strart事件中:obj=GameObject.Find("obj_name");2.动态给UI组件赋值以及绑定响应事件这里以Slider为例,Button,Toggle和Text之类的也一样//虽然直接声明我们的slider对象是一个Slider类的实例很方便地可以调用Slider的用法,但是无法动态地初始化(其实是我不会
- Qt Phonon多媒体框架详解及简单实例分享
dvlinker
C/C++实战专栏qtPhonon多媒体框架
目录1、Phonon简介2、Phonon基本类2.1、VideoPlayer类2.2、MediaObject类2.3、Phonon::createPath()2.4、AudioOutput类2.5、VideoWidgetClass2.6、SeekSlider类2.7、VolumeSlider类3、Phonon完整使用实例4、总结C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更
- Input输入
BacteriumFox
Input——输入Basic——基本Boolean——布尔Color——颜色Constant——常数Integer——整数Slider——滑块Time——时间Time是游戏开始到当前的时间SineTime与CosineTime可以获得波形时间DeltaTime指两帧之间的时间SmoothDelta可以获得一个稳定的DeltaTimeVector1-4——向量1-4Geometry——几何Bitan
- 后端使用Spring Boot框架 + 前端VUE 实现滑动模块验证码
八百码
前端html
在现在常用的登录验证码方式有很多种,但是都不可避免被攻击,但是有很多方式可以防止被攻击,从而进行维护。现在我就讲解一下滑动块验证码的实现方式:这个是前端代码,我使用的是vue,在使用的时候注意:注意几个关键点:使用Vue的data函数来存储组件的状态,如isDragging、sliderPosition等。使用Vue的mounted生命周期钩子来获取容器和滑块的宽度。使用Vue的ref属性来方便地
- android13 隐藏状态栏里面的背光调节 隐藏下拉栏背光调节
黑暗大法师晚上吃午餐肉
android13rom系统开发定制安卓13隐藏状态栏背光调节安卓13隐藏下拉栏背光调节rk3588隐藏下拉栏背光调节安卓13去掉下拉栏背光调节安卓13删除下拉栏背光调节安卓13删除背光调节安卓13去掉状态栏背光调节
总纲android13rom开发总纲说明目录1.前言2.问题分析3.修改方法4.编译运行5.彩蛋1.前言隐藏下拉栏里面的背光调节,禁止用户在这里调节背光亮度。2.问题分析我们找到对应的布局,然后在里面隐藏掉。使用之前文章介绍的布局查找工具,查找亮度条idid/brightness_slider./frameworks/base/packages/SystemUI/res/layout/quick_
- 【vue】【audio】audio标签播放样式改写
mooonyuan
JSvuejavascriptvue
{{audio.currentTime|realFormatSecond}}/{{audio.maxTime|realFormatSecond}}exportdefault{props:{data:{type:Object,default(){return{};},},},data(){return{isPlay:false,//播放暂停按钮sliderTime:0,silderNone:0,au
- 开源一个Flutter版WanAndroid客户端
2301_79098336
程序员开源flutter
然后bean类在声明的时候是混入了JsonConvert的,可以直接使用JsonConvert里面的方法,完美.5.5FlutterScrollView(滚动视图)ScrollView是一个带有滚动的视图组件,它本身由三部分组成Scrollable-它监听各种用户手势并实现滚动的交互设计。Viewport-它通过在滚动视图内仅显示一部分小部件来实现滚动的可视化设计。Slider-它们是可以组合以创
- HTML+CSS+JS:动态滑块组件
若冰说
若冰说CSScssjavascriptcss前端若冰说CSS
效果演示实现了一个简单的滑块效果,其中包括一个滑块(slider)和一个可以拖动的球(ball)。当用户拖动球时,球会在滑块内部左右移动,同时改变颜色。CodeHaveyoubeennaughtyornicethisyear?*{transition:all1sease-in-out;/*对所有元素应用过渡效果,持续1秒,缓动函数为ease-in-out*/}body{margin:0;/*设置页
- Unity 官方教程 Tanks (二)
迷途小路
坦克的血条这一章我们现在制作坦克的血条,效果如图我们先在场景里生成一个Slider,重命名,然后连着Canvas一起放在Tank下,删去HandleSliderArea,然后设置canvas如下在这里把canvas把当成了一个UI来处理,在前面的教程SurvivalShooter中给主句加血条也用到了。然后设置Slider,我们选中HealthSlider、Background、FillArea、
- Vscode python pyside6 制作视频播放器
__lost
Python编程和应用实现QTpython音视频开发语言
一、界面如下包含控件qcombox、qtablewidget、qpushbotton、qverticalslider二、运行代码media_player.pyimportsysfromPySide6importQtWidgetsfromPySide6.QtWidgetsimport*fromPySide6.QtMultimediaimport*fromPySide6.QtMultimediaWid
- 【PyQt】12-滑块、计数控件
R三哥哥啊
PyQt5pyqt
文章目录前言一、滑块控件QSlider运行结果二、计数器控件QSpinBox运行结果总结前言1、滑块控件2、计数控件一、滑块控件QSlider'''#Author:susocool#Creattime:2024/2/15#FileName:28-滑块控件#Description:通过滑块选择字体大小'''importsysfromPyQt5.QtCoreimport*fromPyQt5.QtWid
- mac vuepress搭建博客
Miruna
前端学习macoswebpackjavascriptvue.js前端
文章目录一、安装vuepress二、初始化项目三、页面内容配置遇到的问题:四、设置封面页五、配置导航栏nav六、配置侧边栏slider七、配置插件1.UI插件2.支持PWA八、github部署1.创建github仓库2.配置仓库名称3.在项目根目录中,创建一个如下的脚本文件deploy.sh4.运行deploy.sh脚本5.settingGithubPages九、Copy自动加版权信息安装配置自定
- Flutter Weekly Issue 59
脉脉不得语
插件flutter-carousel-sliderAfluttercarouselwidget,supportinfinitescroll,andcustomchildwidget.code-builderAfluentAPIforgeneratingvalidDartsourcecodesocial-media-widgetsAnewflutterpackageforcollectionofco
- qt4gui-chapter1
yshi2017
QApplication用来管理整个应用程序所用到的资源。QT中任何窗口部件都可以作为窗口。窗口部件都i有哪些?{QMenuBar,QToolBar,QStatusBar,QDialog,QSpinBox,QSlider,QWidget,QPushButton,QLabel,QCheckBox,QLineEdit,QTextEdit,QCombBox,QSplitter以及一些其他窗口部件}app
- Compose之Slider全面解析
左大星
JetpackComposeAndroid进阶androidandroidjetpackandroid-jetpack
JetPackCompose系列(14)—SliderSlider,即拖动条,默认包含了一个滑块和一个滑动轨道。允许用户在一个数值范围内进行选择。按照惯例,先观察其构造函数:@ComposablefunSlider(value:Float,onValueChange:(Float)->Unit,modifier:Modifier=Modifier,enabled:Boolean=true,valu
- 项目02《游戏-13-开发》Unity3D
__water
【游戏开发】Unity3DUnity3D一集一功能陷阱人物被造成伤害UI血条SliderUI头像Mask
基于项目02《游戏-12-开发》Unity3D,任务:宠物系统及人物头像血条首先在主面板MainPanel预制体中新建一个Panel,命名为PlayerInfo新建Image,作为头像新建Slider,作为血条对Panel组件添加一个水平划分,修改Slider1的长度与宽度,在Slider1添加空父物体命名为Slider,对Slider添加组件纵向对齐,再复制一份Slider1命名为Slider2
- HarmonyOS 开发学习笔记
Smulll_
harmonyos学习笔记
HarmonyOS开发学习笔记一、开发准备1.1、了解ArkTs语言1.2、TypeScript语法1.2.1、变量声明1.2.2、条件控制1.2.3、函数1.2.4、类和接口1.2.5、模块开发1.3、快速入门二、ArkUI组件2.1、Image组件2.2、Text文本显示组件2.3、TextInput文本输入框组件2.4、Button按钮组件2.5、Slider滑动条组件2.6、Column和
- 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Slider组件
灬沙海灬
harmonyos
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Slider组件一、操作环境操作系统:Windows10专业版、IDE:DevEcoStudio3.1、SDK:HarmonyOS3.1+二、Slider组件滑动条组件,通常用于快速调节设置值,如音量调节、亮度调节等应用场景。子组件无。接口Slider(options?:{value?:number,min?:number,max?:numbe
- 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Slider组件
记忆的小河
harmonyos
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Slider组件一、操作环境操作系统:Windows10专业版、IDE:DevEcoStudio3.1、SDK:HarmonyOS3.1+二、Slider组件滑动条组件,通常用于快速调节设置值,如音量调节、亮度调节等应用场景。子组件无。接口Slider(options?:{value?:number,min?:number,max?:numbe
- 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Slider组件
自动化新人
开发语言
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Slider组件一、操作环境操作系统:Windows10专业版、IDE:DevEcoStudio3.1、SDK:HarmonyOS3.1+二、Slider组件滑动条组件,通常用于快速调节设置值,如音量调节、亮度调节等应用场景。子组件无。接口Slider(options?:{value?:number,min?:number,max?:numbe
- 实现滑动拼图验证登录vue
与月儿漫邀
vue.js前端javascript
1、效果图2、引入滑动拼图验证组件安装组件npminstall--savevue-monoplasty-slide-verify配置组件lib/slide-verify.vue{{sliderText}}constPI=Math.PI;functionsum(x,y){returnx+y;}functionsquare(x){returnx*x;}exportdefault{name:"Slide
- vtkSliderWidget动态调整vtkCellLocator空间单元切分level
XX風
vtkc++计算机视觉
开发环境:Windows11家庭中文版MicrosoftVisualStudioCommunity2019VTK-9.3.0.rc0vtk-exampledemo解决问题:使用VTK创建一个交互式的可视化场景,并通过滑块部件动态调整单元定位器的参数,调整定位器空间单元切分的层次关键点:创建单元定位器,构建level=0的搜索空间,并locatorTreeActor->GetProperty()->
- 请用uniapp写一个音乐播放器 使用 slider组件控制audio组件的播放进度(播放)(暂停)(实时显示播放时长)(实时显示进度时长)
王家视频教程图书馆
uni-appjavascript开发语言
{{music.name}}{{isPlaying?'暂停':'播放'}}{{formatTime(currentTime)}}{{formatTime(totalTime)}}exportdefault{data(){return{audioId:'music',musicList:[{name:'音乐1',url:'https://atand.oss-cn-beijing.aliyuncs.c
- echarts 统计图 x 轴实现拉伸滑动
UserGuan
前端类echarts前端javascript
效果图核心代码dataZoom:[{type:"slider",//滑动条型数据区域缩放组件show:true,//是否显示组件(用于x轴使用)start:70,//数据窗口范围的起始百分比(范围是:0~100。表示0%~100%)end:100,//数据窗口范围的结束百分比(范围是:0~100。表示0%~100%)height:30,//组件的高度(水平布局默认30,竖直布局默认自适应)hand
- 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独立出来,数据持