- 【20年架构师韩艳威整理】CentOS Stream10磁盘管理第4章
韩公子的Linux大集市
Bash入门centoslinux运维
文章目录优化细化1:磁盘识别与扫描(增强版)优化细化2:GPT分区高级操作优化细化3:文件系统优化参数优化细化4:LVM元数据管理优化细化5:LVM高级扩容技巧优化细化6:LVM快照管理优化细化7:LVM精简配置优化细化8:故障处理与恢复优化细化9:性能监控与调优优化细化10:安全与权限管理终极操作对比表:普通分区vsLVM灾难恢复检查清单以下是对CentOSStream10中BashShell磁
- 【20年架构师韩艳威整理】CentOS Stream10磁盘管理第1章
韩公子的Linux大集市
Bash入门centoslinux运维
文章目录一、普通分区管理1.查看磁盘信息2.创建新分区3.格式化分区4.挂载分区5.卸载分区二、LVM分区管理1.LVM基本概念2.创建LVM3.扩展LVM4.缩减LVM(谨慎操作)5.删除LVM三、实用监控命令1.磁盘使用情况2.LVM状态监控3.磁盘健康状态四、实用技巧1.永久设备名(使用UUID挂载)2.创建交换分区3.修复文件系统五、注意事项在CentOSStream10中使用BashSh
- centos9 配置yum源(清华源)
风异
centos
sudocp-r/etc/yum.repos.d/etc/yum.repos.d.backup备份yum源sudovim/etc/yum.repos.d/CentOS-Base.repo编辑yum源仓库[baseos]name=CentOSStream$releasever-BaseOSbaseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-stre
- CentOS Stream10操作系统企业级初始化和安全优化
韩公子的Linux大集市
Bash入门centos安全linux
文章目录脚本核心功能说明使用说明以下是为CentOSStream10设计的专业级系统优化脚本,整合了安全加固、性能调优、资源管理及审计功能,严格遵循企业级运维规范:#!/usr/bin/envbash#文件名:centos10_enterprise_optimizer.sh#描述:CentOSStream10专业级系统优化脚本(安全加固+性能调优)#版本:7.0#最后更新:2025-07-28#特
- Spring源码-读取XML文件配置信息
一、XML基础DTD、XML阐述、XML的两种文档类型约束和DTD的使用-CSDN博客二、newFile()、getResource()、getResourceAsStream()Java中Class类和ClassLoader类的getResource()和getResourceAsStream()方法的使用_getclassloader().getresourceasstream-CSDN博客三
- SRS流媒体服务器在宝塔面板下的安装
beiger
流媒体服务器srs宝塔面板
目录一、安装1、安装Docker2、安装srs二、测试1、进入后台2、推流3、播放测试:(1)网页(2)拉流之前一篇文章,我们介绍了SRS流媒体服务器在CentOS下的安装,安装流程还是比较麻烦且耗时的,其实SRS支持Docker部署,今天我们介绍在宝塔面板的Docker中部署SRS。一、安装Linux选用的是CentOSStream9,安装过程可以参考我之前的博文。宝塔面板的安装也请参考之前的博
- List中的对象进行排序处理
以下是使用JavaStream对对象列表按id和age排序的完整示例,包含升序和降序两种场景:1.定义测试对象类@Getter@SetterpublicclassPerson{privateintid;privateintage;}2.排序实现代码importjava.util.*;importjava.util.stream.Collectors;publicclassStreamSortExa
- Redis底层实现原理之订阅发布机制
Armyyyyy丶
Java第三方集成框架#Redis相关redis数据库springboot缓存
文章目录1.通知类型2.实现原理2.1Pub/Sub2.1.1基础知识点2.1.2频道和订阅者的存储通知原理2.1.3键空间通知2.1.4客户端消费2.1.5缺陷2.1.6总结2.2RedisStream2.2.1基础知识点2.2.2基础数据结构2.2.3消费者组管理2.2.4消息和消费者持久化2.2.5消息生产和消费2.2.6消费者拉取消息2.2.7消息分配2.2.8底层结构体3.使用示例3.1
- 【StarRocks系列】事务
漫步者TZ
StarRocks数据库StarRocks事务
目录SQL事务StreamLoad事务接口一、接口原理二、使用流程三、关键注意事项四、接口优势回滚是全局性的参考文档SQL事务从v3.5.0开始,StarRocks支持SQL事务,用于在将数据导入到多个表时,确保更新操作的原子性。目前,StarRocks的SQL事务仅支持INSERT和SELECT语句。update语句不支持事务SQL事务|StarRocksStreamLoad事务接口为了支持和A
- Redis Stream:实时数据流的处理与存储
foundbug999
redis数据库缓存
RedisStream是Redis5.0引入的一个强大的数据结构,专门用于处理实时数据流。它类似于ApacheKafka和RabbitMQ等消息队列系统,但集成在Redis这个内存数据库中,使得Redis不仅能处理缓存和存储,还能高效地处理实时数据流。本文将深入探讨RedisStream的特性、使用方法以及在实际应用中的优势。一、RedisStream简介RedisStream是一种日志结构,记录
- CentOS命令安装显卡驱动、修改分辨率和解决黑屏问题
shyuu_
centoslinux运维
【系列】真机安装CentOSStream8问题第一步解决安装过程报错第二步分区第三步配置软件源第四步安装显卡驱动(❗︎本节内容❗︎)第五步挂载U盘第六步解决没有1920x1080分辨率的问题文章目录【系列】真机安装CentOSStream8问题一、下载显卡驱动二、安装驱动步骤1:准备安装环境步骤2:安装依赖步骤3:禁用默认的Nouveau驱动步骤4:安装NVIDIA驱动步骤5:配置XServer步
- Mybatis执行流程源码分析
有答案直接发给我
深入Mybatismybatisjava代理模式
前言大家好,请看下面一段代码,是Mybatis的简单使用案例:publicstaticvoidgenerateFromXML()throwsIOException{Stringresource="mybatis-config.xml";InputStreaminputStream=Resources.getResourceAsStream(resource);SqlSessionFactorysq
- SpringBoot + 自建GitLab + Jenkins + CentOS Stream 9 来实现自动化部署
AI懒虫
shellspringbootgitlabjenkins
人越懒,工具就要越先进,自动部署也从,纯人工到半自动化到全自动化的进步SpringBoot+自建GitLab+Jenkins+CentOSStream9的自动化部署完整方案,结合实践经验和避坑指南:一、环境准备(CentOSStream9)系统配置#关闭SELinux(避免权限冲突)sudosetenforce0sudosed-i's/SELINUX=enforcing/SELINUX=disab
- ABP VNext + Apache Flink 实时流计算:打造高可用“交易风控”系统
Kookoos
AbpvNext.netapacheflink大数据ABPvNext.net
ABPVNext+ApacheFlink实时流计算:打造高可用“交易风控”系统目录ABPVNext+ApacheFlink实时流计算:打造高可用“交易风控”系统一、背景二、系统整体架构️三、实战展示️:交易行为告警系统3.1ABP采集交易事件CAP+Outbox配置示例3.2FlinkCEP模式与Exactly-Once⚡3.3RedisStream+SignalR实时推送四、生产级部署和监控五、
- 【redis实战篇】第六天
MuYiLuck
【redis】redis数据库缓存
摘要:本文介绍了基于Redis的秒杀系统优化方案,主要包含两部分:1)通过Lua脚本校验用户秒杀资格,结合Java异步处理订单提升性能;2)使用RedisStream实现消息队列处理订单。方案采用Lua脚本保证库存校验和一人一单的原子性,通过阻塞队列异步保存订单,并引入Redisson分布式锁防止重复下单。RedisStream实现消息队列,支持消费组和ACK确认机制,确保订单可靠处理。系统还设计
- DeepSeek进阶教程:实时数据分析与自动化决策系统
软考和人工智能学堂
#DeepSeek进阶开发与应用#DeepSeek快速入门#深度学习数据分析自动化数据挖掘
进阶教程:实时数据分析与自动化决策系统1.实时数据流处理架构classStreamProcessor:def__init__(self):self.window_size=60#滑动窗口大小(秒)self.analytics_engine=AnalyticsEngine()#复用之前的分析引擎defprocess_kafka_stream(self,topic):"""从Kafka主题消费实时数据
- Jackson 核心库快速上手指南
温欣晶Eve
Jackson核心库快速上手指南jackson-coreCorepartofJacksonthatdefinesStreamingAPIaswellasbasicsharedabstractions项目地址:https://gitcode.com/gh_mirrors/ja/jackson-core项目介绍Jackson核心库(jackson-core)是Jackson生态系统的核心组成部分,它定
- 在Centos Stream 9上Docker的实操教程(二) - Docker的常用命令
Micro麦可乐
Dockerdockercentos容器docker命令docker指令
在CentosStream9上Docker的实操教程-Docker的常用命令Docker启动类命令Docker镜像命令镜像列表dockerimages镜像查找dockersearch拉取镜像dockerpull删除镜像dockerrmi查看占用信息dockersystemdf容器创建新镜像dockercommit容器命令启动容器dockerrun查看容器dockerps已停止容器再启动docker
- 告别 CentOS 7,拥抱 CentOS Stream 9:网络配置大不同!
心灵星图
运维centos网络python
嘿,各位Linux爱好者和系统管理员们!还在用CentOS7?那可得注意了!随着CentOS7生命周期的结束,我们正大步迈向CentOSStream9。这不仅仅是版本号的升级,更是RedHatLinux生态系统发展模式的一次重大转型。其中,最直接影响我们日常操作的,莫过于网络配置的变化了。今天,我们就来聊聊CentOS7和CentOSStream9在网络管理上的那些事儿,帮你丝滑过渡到新时代!核心
- CentOS Stream release 9安装 MySQL(一)
迷雾骑士
centosmysqllinux
在CentOSStream上安装MySQL的方法与传统的CentOS类似,但由于CentOSStream的软件包更新策略不同,可能会遇到一些依赖问题。以下是详细安装步骤:1.添加MySQL官方Yum仓库sudorpm-Uvhhttps://dev.mysql.com/get/mysql80-community-release-el9-1.noarch.rpm注意:如果是CentOSStream8,
- 关于 Redis Stream 的消费场景中的block参数设置问题
简诚
后端开发redis数据库缓存
在RedisStream的消费场景中,block参数的设置直接关系到消息读取的实时性和系统资源消耗的平衡。以下是关于block参数是否需要设置以及如何设置的详细分析:一、是否需要设置block参数?场景类型是否设置说明实时消息处理✅必须设置需要即时响应新消息(如实时告警、即时通讯),需通过阻塞模式减少轮询开销批量数据处理❌无需设置定时批量处理历史数据(如离线分析),非阻塞模式(默认block=0)
- 【微服务】spring读取配置文件多种方式深入详解
小码农叔叔
微服务治理与项目实战springboot入门到精通项目实战springspring读取配置文件总结java配置文件读取详解springb读取配置文件总结java读取配置文件方法总结spring如何读取配置文件
目录一、前言二、java配置文件介绍2.1java配置文件产生原因2.2项目使用配置文件好处2.3springboot项目配置文件的必要性2.4微服务架构下配置文件使用场景三、java读取配置文件常用方法3.1使用Properties类读取配置文件3.1.1使用getResourceAsStream读取3.1.2使用getClassLoader读取3.2使用ClassLoader读取配置文件四、s
- CentOS 各版本的对应内核表和发行时间表【全】
小菜狗编程笔记
#CentOScentoslinux运维服务器
文章目录1、CentOS8版本的内核对应表和发行时间表2、CentOS7版本的内核对应表和发行时间表3、CentOS6.10-2.1老版本的CentOS信息4、CentOS截止支持时间5、CentOS下载地址目前CentOSLinux已经停止更新了,剩下CentOSStream还在维护。在这里统一记录CentOS各版本的内核对应表和发行时间表。版本时间从新到旧排列。1、CentOS8版本的内核对应
- springboot项目读取 resources 目录下的文件的9种方式
ldj2020
javaspringbootimport
1.使用ClassLoader.getResourceAsStream()方法InputStreaminputStream=getClass().getClassLoader().getResourceAsStream("file.txt");2.使用Class.getResourceAsStream()方法InputStreaminputStream=getClass().getResource
- 将C++数字类型转换成字符串
阿峰的编程博客
VisualStudioc++开发语言
#include#include#includeusingnamespacestd;intmain(){inta=55;doubleb=65.123;stringstr="";//头文件是sstreamostringstreamoss;oss库定义了三种类:istringstream、ostringstream和stringstream,分别用来进行流的输入、输出和输入输出操作。另外,每个类都有一
- SparkStreaming之persist缓存
稳哥的哥
SparkStreaming
SparkStreaming之缓存与RDD的缓存类似,DStream也允许用户将数据持久化到内存中,只需要使用DStream.persist()方法,就会自动将DSstream中的数据缓存在内存中,这对需要多次计算的DStream数据是一个很好的优化,对于window操作「比如reduceByWindow,reduceByKeyAndWindow」和state操作算子如「updateStateBy
- openEuler对比CentOS的核心优势分析
心随_风动
学习笔记centoslinux运维
openEuler对比CentOS的核心优势分析在开源操作系统领域,openEuler与CentOS均占据重要地位,但随着CentOS维护策略的调整(如CentOS8停止维护,转向CentOSStream),越来越多的用户开始关注国产化替代方案。openEuler作为华为发起并贡献给开放原子开源基金会的操作系统,凭借其技术创新和生态布局,展现出显著优势。以下从多个维度详细对比两者的差异,并总结op
- RHEL、Centos Linux、CentOS Stream关系
月别千秋
Linuxlinuxcentos
目标了解RHEL、CentosLinux、CentOSStream关系,帮助操作系统选型。建议:不要选择CentOSstream。总结CentOS8以前:Fedora==》RedHat==》CentOSFedora是RedHat的“试验场”,很多新功能和特性先加入Fedora稳定后再加入RedHat(收费),然后从RedHat再拉出CentOS(免费,培养用户和生态)。CentOS8以后:Fedo
- stream流获取最大值最小值平均值
世间所有相遇都是久别重逢
java
importjava.util.Arrays;importjava.util.IntSummaryStatistics;importjava.util.List;importjava.util.stream.Collectors;publicclassStreamStatsExample{publicstaticvoidmain(String[]args){Listnumbers=Arrays.a
- C++ 流的操作 | 初识IO类、文件流、string流的使用
·Jormungand
C++c++
文章目录前言IO头文件iostreamfstreamsstream流的使用不能拷贝或对IO对象赋值条件状态与iostate类型输出缓冲区文件流fstream类型文件模式文件光标函数tellg()/tellp()seekg()/seekp()向文件存储内容/读取文件内容string流istringstreamostringstream前言我们在使用C++的过程中,总避免不了IO操作,比如经常用到的一
- 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独立出来,数据持