- 通过 Docker openssl 容器生成生成Nginx证书文件
JunLan~
LinuxDockerdockernginx容器linux运维
使用alpine/openssl镜像生成证书1.拉取容器[root@localhost~]#dockerrun--rmalpine/opensslversionOpenSSL3.3.311Feb2025(Library:OpenSSL3.3.311Feb2025)2.运行alpine/openssl生成证书(Nginx)#生成1个.key私钥文件,1个.crt的证书文件,存放在当前路径[root@
- Ubuntu-22.04安装MegaCLI并查看MegaRAID的配置
洛克希德马丁
linuxubuntu运维ubuntulinux运维MegaRAIDMegaCLI
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、MegaRAID二、安装MegaCLI1.Ubuntu-18.042.Ubuntu-22.043.Ubuntu-20.044.CentOS-75.其它发行版三、使用MegaCLI1.查看所有适配器信息2.查看所有物理磁盘信息四、方便的脚本五、配置方法1.BIOS方式2.MegaCLI方式1.查看RAID控制器管控的所有
- Zabbix启动后访问报错502 Bad Gateway
奔跑吧邓邓子
常见问题解答(FAQ)gatewaynginxzabbix
提示:“奔跑吧邓邓子”的常见问题专栏聚焦于各类技术领域常见问题的解答。涵盖操作系统(如CentOS、Linux等)、开发工具(如AndroidStudio)、服务器软件(如Zabbix、JumpServer、RocketMQ等)以及远程桌面、代码克隆等多种场景。针对如远程桌面无法复制粘贴、Kubernetes报错、自启动报错、各类软件安装报错、内存占用问题、网络连接问题等提供了详细的问题描述与有效
- CentOS 7 aarch64上制作kernel rpm二进制包 —— 筑梦之路
筑梦之路
linux系统运维centoslinux运维
环境说明centos7aarch64gcc8.3.1kernel5.4.290准备编译制作#安装必要的工具和包yuminstallrpm-develrpmdevtoolsyumgroupinstall"DevelopmentTools"yuminstallncurses-develbcelfutils-libelf-developenssl-devel#安装gcc8.3.1#修改repo文件cd/
- CENTOS7.6在台式机安装网卡驱动
符桃君
centos
文章目录前言一、获取驱动1.装载centos系统2.查询网卡驱动3.获取网卡驱动二、安装驱动1.解压驱动2.可能遇到的问题a.错误提示:/src/r8125.h:68:20error:redefinitionof'ether_addr_copy'staticinlinevoidether_addr_copyb.错误提示:r8125_n.c:12245:9error:unknownfield'ndo
- CentOS7.9内核离线升级内核
一直前行
linux运维服务器
升级前内核版本:[root@vrgv252~]#uname-aLinuxvrgv252.com3.10.0-957.el7.x86_64#1SMPThuNov823:39:32UTC2018x86_64x86_64x86_64GNU/Linux下载内核文件:建议使用清华源Indexof/elrepo/kernel/el7/x86_64/RPMS/|清华大学开源软件镜像站|TsinghuaOpenS
- CentOS Docker 安装指南
lly202406
开发语言
CentOSDocker安装指南引言Docker是一个开源的应用容器引擎,它允许开发者打包他们的应用以及应用的依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。Docker容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app)而且更轻量级。本指南旨在为CentOS用户详细讲解Docker的安装过程。系统要求在安装Docker之前,请确保您的Ce
- 阿里云 LAMP环境配置(centos7.6+apache+mysql5.7+php7.3.4)
坚持到底就能逆袭
linuxlinuxapachecentos服务器运维
在安装配置环境的时候遇到了些问题,网上的基本没有一篇就能跟着做完的,所以自己也整理了一下,从开始安装到完成查询的一些资料,如果这篇文章能帮到你,我真的很高兴!!查看系统信息cat/etc/redhat-releaseuname-a安装apache参考这篇:用yum快速搭建LAMP平台安装mysql5.7先参考这篇卸载原来的mariadb:阿里云(Linux)Centos7上安装Mysql5.7步骤
- Linux(Centos 7.6)命令详解:vi
豆是浪个
linuxcentos运维
1.命令作用vi/vim是Linux系统内置不可或缺的文本编辑命令,vim是vi的加强版本,兼容vi的所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性。2.命令语法usage:vim[arguments][file..]editspecifiedfile(s)编辑指定文件or:vim[arguments]-readtextfromstdin从标准输
- Linux(Centos 7.6)命令详解:unzip
豆是浪个
linuxcentos运维
1.命令作用unzip用于在一个ZIP存档压缩文件中进行陈列/检测/提取文件(list,testandextractcompressedfilesinaZIParchive);unzip命令是Linux系统中用于解压缩ZIP格式压缩文件的常用工具。它能够快速、方便地将ZIP文件解压到当前目录或指定目录。2.命令语法Usage:unzip[-Z][-opts[modifiers]]file[.zip
- Linux(Centos 7.6)基本信息查看
豆是浪个
linuxcentos运维
1.服务器硬件信息查看1.1.服务器厂商、产品名称查看dmidecode-ssystem-manufacturer:查看服务器厂商信息dmidecode-ssystem-product-name:查看服务器产品名称信息1.Windows使用VMware安装的Linux(Centos7.6)后,服务器厂商、产品名称信息查看。[root@localhost~]#dmidecode-ssystem-ma
- Linux(Centos 7.6)命令详解:rename
豆是浪个
linux运维服务器centos
1.命令作用通常被用来重命名文件扩展名、删除文件前缀或后缀、替换特定字符等操作两个版本:C版本(默认版本)Perl版本(需要另行安装,安装执行perl-MCPAN-e'installFile::Rename')版本查看:执行manrename查看C版本manrename输出第一行提示:RENAME(1)UserCommandsRENAME(1)Perl版本manrename输出第一行提示:RENA
- Centos 7.9内核升级
TransPlus
centos服务器运维
手动内核从3.10升级到5.15从https://dl.lamp.sh/kernel/el7/下载两个包安装主内核包sudorpm-ivhkernel-ml-5.15.148-1.el7.elrepo.x86_64.rpm安装开发包(编译eBPF必需)sudorpm-ivhkernel-ml-devel-5.15.148-1.el7.elrepo.x86_64.rpm配置GRUB引导设置新内核为默
- Linux(Centos 7.6)命令详解:zip
豆是浪个
linux运维服务器
1.命令作用打包和压缩(存档)文件(packageandcompress(archive)files);该程序用于打包一组文件进行分发;存档文件;通过临时压缩未使用的文件或目录来节省磁盘空间;且压缩文件可以在Linux、Windows和macOS中轻松提取。2.命令语法usage:zip[-options][-bpath][-tmmddyyyy][-nsuffixes][zipfilelist][
- linux centos 搭建私有git远程仓库
xueweichao
git服务器linux
1.安装Git远程服务器。服务器操作系统为linuxcentos使用yum在线安装gityuminstallgit添加git用户组和用户名,后续客户端需要使用git用户连接远程服务器groupaddgituseraddgit-ggit-s/bin/git-shall创建用户存放git仓库的目录mkdir/home/git/gitrepo将目录拥有者改为git用户和用户组chowngit:gitgi
- Vite 打包后Nginx部署配置
winyh5
nginx运维
自我简介:4年导游,10年程序员,最近6年一直深耕低代码领域,分享低代码和AI领域见解。vite.config.js配置文件—纯笔记记录,没有阅读价值~exportdefault{base:"/mywebsite",//开发或生产环境服务的公共基础路径}当base修改后nginx部署时需要做相应调整location/{root/usr/share/nginx/html;indexindex.htm
- webpack-dev-server解决跨域
大猫会长
webpackwebpack前端node.js
目前解决跨域常用的方法是采用webpack-dev-server结合proxy接口代理或者使用Nginx均可配置跨域的代理。由于在本地配置好webpack-dev-server之后,所有项目成员都可以使用,一劳永逸。我们采用了配置webpack-dev-server中proxy的接口代理,在webpack.config.js文件中对webpack-dev-server配置如下:proxy:[{co
- wsl安装及nginx安装
新阿伟先生
环境搭建前端linuxwindows10
Windows装wsl实现Linux搭建本地服务器目前大部分前端项目均运行在Linux服务器上在Windows上搭建环境可开始测试服务器相关问题Wsl官方教程:安装wslWsl版本控件:windowsterminal(微软商店下载)Wsl为纯命令行,windows预览版的话可以加装wslg有图形环境,wslg只在21h2和win11里提供搭建nginx服务器:安装nginx:sudoaptupda
- K8s 1.18.6版本基于 ingress-nginx 实现金丝雀发布(灰度发布)
zerchin
kubernetesingress-nginxkubernetesingress-nginx
K8s1.18.6版本基于ingress-nginx实现金丝雀发布(灰度发布)环境软件版本kubernetesv1.18.6nginx-ingress-controller0.32.0Rancherv2.4.5本次实验基于Rancher-v2.4.5部署了1.18.6版本的k8s集群,nginx-ingress版本为0.32.0,理论上ingress-nginx>=0.21.0都是可以的。介绍金丝
- Java进阶-在Ubuntu上部署SpringBoot应用
m0_74824534
面试学习路线阿里巴巴javaubuntuspringboot
随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一。Java作为一种跨平台的编程语言,具有广泛的应用场景。本文将详细介绍如何在Ubuntu服务器上部署Java应用,包括环境准备、应用发布、配置反向代理(Nginx)、设置系统服务以及日志管理等步骤。一、部署准备在开始之前,请确保你具备以下条件:一台运行Ubuntu(如Ubuntu20.04或22.04)的服务器,具
- Ubuntu 下 nginx-1.24.0 源码分析 - cycle->modules[i]->ctx
若云止水
ubuntunginxlinux
ngx_module_s结构体中的ctx字段是Nginx模块系统的核心设计之一。这个字段的主要作用是提供特定类型模块的上下文信息。ctx字段实际上是一个指向模块特定上下文结构的指针。根据模块类型的不同,ctx可以指向不同的上下文结构,比如:对于HTTP模块,指向ngx_http_module_t对于Core模块,指向ngx_core_module_t对于Event模块,指向ngx_event_mo
- centos 安装composer 教程
automan02
centoscomposerlinux
打开命令行php-r"copy('https://getcomposer.org/installer','composer-setup.php');"sudophpcomposer-setup.php--install-dir=/usr/local/bin--filename=composercomposer--versionsudochmodu+s/usr/local/bin/composerS
- CentOS 7 安装 Redis6.2.6
letisgo5
服务器运维生涯centoslinuxRedis
获取资源、下载安装Redis6.2.6安装Redis6.2.6上传到服务器或直接下载(wgethttp://download.redis.io/releases/redis-6.2.6.tar.gz)、再解压安装tar-zxvfredis-6.2.6.tar.gz进入redis解压目录cdredis-6.2.6先编译make再执行安装makePREFIX=/usr/local/redisinsta
- centos2anolis
dragonzoebai
linuxcentosanolis
我的centos7原地升级到anolis7记录注意:如果是桌面版请先卸载firefox,否则so文件冲突。参考:CentOS7和8Linux系统迁移到国产Linux龙蜥AnolisOS8手册_disablepam_pkcs11moduleinpamconfiguration-CSDN博客关于CentOS迁移龙蜥操作系统,这里有一份详细指南,请查收!-OpenAnolis龙蜥操作系统开源社区Cent
- spark yum配置
Amu_Yalo
spark
yum配置Yum是一个linux工具,用来从网络上下载安装软件到CentOS操作系统中。先要确保虚拟机的网络是通畅的。(1)查看源yum中的源是指它从哪里去下载软件。把yum想象成你自己开的一家商场,那么yum的源就是你的供货商。通过yumrepolist命令可以去查看当前的供货商信息。(如果显示源信息是mirrorlist.centos.org(默认源),那就不能使用了。这个源已经失效了,就是你
- RustDesk开源远程桌面工具部署【图文详解】
岚天start
开源云原生ruskdesk桌面远程远程
目录1.服务端安装1.1服务器环境1.2安装docker1.3配置docker加速器1.4安装docker-compose2.客户端安装3.映射或防火墙配置4.客户端配置1.服务端安装1.1服务器环境[root@test~]#cat/etc/redhat-releaseCentOSLinuxrelease7.9.2009(Core)[root@test~]#uname-aLinuxtest3.10
- Linux 中安装nginx
linuxnginx
注意:源文件目录工作目录1.从官网下载nginx(http://nginx.org/en/download....上传安装包到指定目录(/usr/local/src)解压nginx安装包tar-zxvfnginx-1.19.10.tar.gz3.解压完成后的目录为源文件目录,可以命名为nginx-source4.进入nginx-source源文件目录下。(cd/usr/local/src/ngin
- [Linux]gcc/g++
nitesy
Linuxlinux
文章目录一、安装gcc二、gcc工作流程三、gcc常用参数1.指定生成的文件名(-o)2.搜索头文件(-I)3.指定一个宏(-D)四、多文件编译五、gcc与g++一、安装gcc#Ubuntusudoaptupdate#更新本地的软件下载列表,得到最新的下载地址sudoaptinstallgccg++#centossudoyumupdatesudoyuminstallgccg++之所以更新下载列表,
- Nginx 常用命令和部署详解及案例示范
m0_74825488
面试学习路线阿里巴巴nginxpython大数据
一、Nginx常用命令1.1启动Nginx要启动Nginx服务,可以使用以下命令:sudosystemctlstartnginx1.2停止Nginx如果需要停止Nginx服务,可以使用以下命令:sudosystemctlstopnginx1.3重启Nginx在修改了Nginx配置文件后,需要重启Nginx以使更改生效。可以使用以下命令:sudosystemctlrestartnginx1.4重新加
- Nginx日志安全分析脚本
寰宇001
shell
nginx_log_check脚本作者:al0ne项目地址:https://github.com/al0ne/nginx_log_checkNginx日志安全分析脚本功能统计Top20地址SQL注入分析扫描器告警分析漏洞利用检测敏感路径访问文件包含攻击Webshell寻找响应长度的urlTop20寻找罕见的脚本文件访问寻找302跳转的脚本文件Usage设置报告保存地址outfile设置日志分析目录
- 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独立出来,数据持