- 如何在Ubuntu 20.04系统中安装Docker
1.更新系统包索引首先,确保系统包索引是最新的。打开终端并运行以下命令:sudoaptupdate2.安装必要的依赖包确保系统中安装了apt-transport-https、ca-certificates和curl等必要的依赖包:sudoaptinstallapt-transport-httpsca-certificatescurlsoftware-properties-common3.添加Doc
- 深入解析 Vue3 核心架构与实战范式:从响应式原理到 Composition API 设计哲学
嘉图明
架构前端框架
引言:框架演进的必然选择在2020年发布的Vue3并非简单的版本迭代,而是对前端工程化痛点的系统性解决方案。本文将深入剖析其架构设计,结合TypeScript类型系统和ChromeDevTools性能分析工具,揭示Vue3如何通过底层重构实现开发体验与运行效率的双重突破。一、响应式系统的量子跃迁:Proxy的颠覆性设计1.1从Object.defineProperty到Proxy的范式转移//Vu
- VMware Tools系列四:VMware Tools和open-vm-tools有何区别
学堂在线
Vmware虚拟机VMwareToolsopen-vm-tools
VMwareTools和open-vm-tools都是用于增强VMware虚拟机功能的软件工具,但它们之间存在一些差异:1.VMwareTools:-是VMware官方提供的专有软件。-包含一系列驱动程序和服务,用于优化虚拟机的性能和用户体验。-提供的功能包括改进的图形性能、拖放文件、复制粘贴、自动调整屏幕分辨率、时间同步等。-通常在安装VMware虚拟机的操作系统后安装。2.open-vm-to
- Ubuntu22.04 在 VMware 17 无法实现拖放复制操作解决办法
ZRongZH
ubuntulinux
Ubuntu22.04LTS使用open-vm-tools无法实现拖放复制环境:主机:Windows10虚拟机软件:VMwareWorkstationPro17.0虚拟机系统:UbuntuDesktop22.04LTS软件:open-vm-tools(open-vm-tools-desktop)2023.07.04更新(请看完下面另外的内容再来看这个):在最近的使用中发现一个问题,因为屏幕分辨率和
- 不同操作系统安装vm tools以及各种操作系统包安装命令区别
「已注销」
ubuntulinux运维
这里主要讲了ubuntu和openEuler的安装,其他类似,只是安装命令稍有区别1.ubuntu安装vmtools我尝试装vm自带的,但是没生效,就换这个啦,相比较来说,这个更简单。1.1更新软件包索引打开终端,输入以下命令来更新软件包索引:sudoaptupdate1.2安装OpenVMToolssudoaptinstallopen-vm-tools1.3安装桌面版工具(如果使用桌面环境)如果
- 第三十一天:Scrapyd的安装及使用
穿梭的编织者
Python爬虫训练营python开发语言
文章目录一、安装scrapyd二、安装setuptools三、部署工程1.创建项目2.启动scrapyd3.部署项目4.配置scrapyd-deploy5.使用scrapyd-deploy四、运行Spider五、查看效果一、安装scrapydpipinstallscrapyd二、安装setuptools为什么要安装这个工具?因为部署的应用需要打包成*.egg才能运行官网下载地址:https://p
- 2025开源SCA工具推荐 | 组件依赖包安全风险检测利器
DevSecOps选型指南
开源安全开源治理openSCA软件成分分析
软件成分分析(SoftwareCompositionAnalysis,SCA)是Gartner定义的一种应用程序安全检测技术,该技术用于分析开源软件以及第三方商业软件涉及的各种源码、模块、框架和库等,以识别和清点开源软件的组件及其构成和依赖关系,并检测是否存在已知的安全和功能漏洞、安全补丁是否已经过时或是否存在许可证合规或兼容性风险等安全问题,帮助确保企业软件供应链中组件的安全。OpenSCA是国
- 一款便捷操作移动设备的PC工具
说明该项目基于【Tinyui】框架开发。为电脑端(Windows/MacOS/Linux)操作移动设备提供便捷操作的工具。项目代码已开源:☞Github☜☞Gitee☜功能运行由于采用Python语言开发,因此需要安装Python运行环境,Python2.x(建议使用最后一个版本:2.7.18),Python3.x(推荐3.9以上版本)命令行运行$pythontools.pyWindows系统,直
- Integrate Image Editing Capabilities into .NET
SEO-狼术
DelphinetCrack开发语言
IntegrateImageEditingCapabilitiesinto.NETImageeditorsletusersload,modifyandexportimageswithoutexternalsoftware,simplifyingimagemanipulationandprocessingtasks.Imageeditorsareuserinterface(UI)controlsth
- win11编译pytorch cuda128版本流程
System_sleep
pytorch人工智能python编译windowscuda
Geforce50xx系显卡最低支持cuda128,torchcu128release版本目前还没有释放,所以自己基于2.6.0源码自己编译wheel包。1.前置条件1.使用visualstudioinstaller安装visualstudio2022,工作负荷选择【使用c++的桌面开发】,安装完成后将“VC\Tools\MSVC\\bin\Hostx64\x64”对应的路径加入环境变量;2.访问
- 电脑端WeChat微信自定义多开实例批处理脚本,带配置记录,一劳永逸
轶软工作室
日常命令脚本办公应用微信
一键打开多个电脑端的微信的小工具,自定义开启数量,带记录,带搜索,免安装,打开即用。使用方法:新建记事本,复制进去,另存为选择所有类型,名称为【微信多开.cmd】然后保存到任意位置运行即可,不过要看一下你的电脑中是否有D盘呢?没有D盘的话,需要修改相应D:\Ys\WeChatTools\Config.ini的位置,下面是批处理脚本代码:@echooff&setlocalenabledelayede
- 通过 Groq 后端加载Llama 模型,并调用Function call,也就是通过Groq 后端进行工具的绑定和调用
背太阳的牧羊人
agent+langchainllama语言模型Function_call
完整代码:importgetpassimportosfromlangchain.chat_modelsimportinit_chat_modelfromlangchain_core.toolsimporttoolfromlangchain_core.messagesimportHumanMessage,ToolMessage,SystemMessage#如果没有设置GROQ_API_KEY,则提示
- ubantu 修改android12 系统镜像
云服务器linuxubuntu
整个过程涉及多个步骤,以下是我们将要遵循的流程:步骤描述1准备工作2获取Android12系统镜像3挂载系统镜像4修改文件5卸载系统镜像6制作新的系统镜像1.准备工作确保你已经安装了Ubuntu操作系统,并且你的Ubuntu系统上已经安装了一些必需的工具。在终端中运行以下命令以安装所需的软件包:sudoaptupdatesudoaptinstall\gparted\squashfs-tools\g
- Spring Boot DevTools热部署:开发效率提升100%
Sendingab
springboot后端javaspringjava-ee
SpringBootDevTools热部署:开发效率提升100%引言在开发SpringBoot应用时,每次修改代码后都需要重启应用,这无疑会浪费大量时间。SpringBootDevTools的出现彻底解决了这一问题,它通过热部署(HotSwapping)和实时重载(LiveReload)两大核心功能,让开发者告别重复启动的繁琐操作。本文将手把手教你配置DevTools,并深入解析其底层原理,助你开
- Ubuntu:APT软件包管理器
Good_Starry
Ubuntuubuntulinux
APT(AdvancedPackagingTools)是Debian及其派生Linux的软件包管理器,可以自动下载,配置,安装二进制或者源代码格式的软件包,因此简化了Unix系统上管理软件的过程。1、用法:apt[选项]命令命令行软件包管理器apt提供软件包搜索,管理和信息查询等功能。它提供的功能与其他APT工具相同(像apt-get和apt-cache),但是默认情况下被设置得更适合交互。2、常
- Windows下python多环境管理(poetry)安装配置
曾阿伦
pythonwindowspythonpoetry
python环境Python3.11安装目录D:\software\Python311安装poetry设置环境变量D:\software\Python311\Scripts\D:\software\Python311\C:\Users\Administrator\.local\bin设置pip国内镜像源python-mpipconfigsetglobal.index-urlhttps://mirr
- Web应用服务器tomcat
功臣诗★俊
功臣诗笔记tomcatapache
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java
- pip install -r requirements.txt 报错
Jocelynhp
pycharm
pipinstall-rrequirements.txt报错ERROR:Exception:Traceback(mostrecentcalllast):File"D:\Software\Program\anaconda3\envs\unetr_pp\lib\site-packages\pip\_vendor\urllib3\response.py",line438,in_error_catcher
- 多租户SaaS
WinterKay
数据库运维javaspringbootspringcloud
多租户SaaS1.什么是多租户SaaS1.1多租户SaaS的定义多租户SaaS的定义:多租户(multitenancy)是指一种架构模式,多个租户共享同一份软件应用,但是每个租户都有自己的数据和配置,相互之间互不干扰。SaaS(SoftwareasaService)是指软件即服务,是一种交付模式,用户通过互联网访问软件,而不需要在本地安装和维护软件。多租户SaaS是将多租户和SaaS两种架构模式结
- API与SDK的深度对比分析
名誉寒冰
linuxc++
API与SDK的深度对比分析目录基本概念核心区别使用场景优缺点分析实际应用案例选择建议基本概念API(应用程序接口)API(ApplicationProgrammingInterface)是一组定义了软件组件之间如何交互的规范和协议。它就像是一个服务员,负责接收请求并返回结果,但不关心请求方如何使用这些结果。SDK(软件开发工具包)SDK(SoftwareDevelopmentKit)是一整套开发
- Rocky Linux 8.5 6G内存 静默模式(没图形界面)安装Oracle 19C
三生暮雨渡瀟瀟
Oracleoracle
Oracle19c下载地址DatabaseSoftwareDownloads|Oraclehttps://www.oracle.com/database/technologies/oracle-database-software-downloads.html#db_ee目录一、准备服务器1、服务器可以克隆、自己装2、修改主机名3、重启4、关闭selinux5、关闭防火墙5.1、关闭防火墙5.2、设
- ARM架构的CentOS 8服务器 使用pip时常见的报错及其解决方法(踩过的坑的总结)
来自于狂人
服务器arm开发centos
1.缺失基础开发工具组典型报错:error:command'gcc'failedwithexitstatus1gcc:error:Python.h:Nosuchfileordirectory原因:ARM平台上的多数Python包需本地编译,但系统未安装必要的开发工具和头文件。解决方案:CentOS8专用命令:#安装开发工具链sudodnfgroupinstall"DevelopmentTools"
- Arcgis地图实战三:自定义导航功能的实现
博主逸尘
arcgisarcgis导航
文章目录1.最终效果预览2.计算两点之间的距离3.将点线画到地图上4.动态展示点线的变化5.动态画线6.动态画点1.最终效果预览2.计算两点之间的距离letdis=this.utilsTools.returnDisByCoorTrans(qdXYData,zdXYData,"4549")当距离小于我们在配置文件中预设置的值时调用我们自定义开发的导航,大于预设值则调用百度或者高德导航在utilsTo
- crewAI 工具箱指南
章迅筝Diane
crewAI工具箱指南crewAI-tools项目地址:https://gitcode.com/gh_mirrors/cr/crewAI-tools项目介绍crewAI工具箱是专为crewAI框架设计的一个扩展库,它赋予了AI代理强大的工具集合,从而增强了AI解决方案的定制性和功能性。此项目旨在指导开发者如何设置并利用这些高级工具,使得AI代理能够执行从网络搜索、数据分析到协作和任务委派等多种功能
- Qt/C++ 音视频开发 - 使用 MDK-SDK 组件
鱼弦
音视频开发系列实践Qt学习与实践qtc++音视频
Qt/C++音视频开发-使用MDK-SDK组件介绍MDK-SDK(MediaDevelopmentKitSoftwareDevelopmentKit)是由原QtAV作者开发的一款音视频处理库。它以高性能和跨平台支持为亮点,为开发者提供了便捷的音视频处理接口。相比于其他音视频处理库,MDK-SDK在性能上有显著优势,适用于各种复杂的音视频应用场景。应用使用场景媒体播放器:构建高效、流畅的视频播放软件
- 前端调试实战:快速定位和解决问题的技巧
Eleven
前端chromechromedevtools
前端开发中,调试是不可避免的环节。无论是页面样式错乱、功能逻辑异常,还是性能瓶颈,都需要我们快速定位问题并找到解决方案一、调试工具篇1.ChromeDevTools:前端开发的瑞士军刀ChromeDevTools是前端开发者最强大的调试工具,它提供了丰富的功能来帮助我们分析页面、调试代码和排查问题。Elements面板:查看和修改DOM结构、CSS样式,实时预览页面效果。Console面板:执行J
- 浏览器修改后端返回值
rechel000
Chrome修改后端返回值
模拟接口响应和网页内容通过本地覆盖可以模拟接口返回值和响应头,无需mock数据工具,比如(Requestly),无需等待后端支持,快速复现在一些数据下的BUG等。在DevTools可以直接修改你想要的Fetch/XHR接口数据,还可以修改响应头,解决跨域等问题,不仅可以覆盖Fetch/XHR,JS、CSS等资源也可以。本地覆盖其实在之前的版本就已经有了,需要在本地手动创建目录,步骤麻烦。Chrom
- 解决CPU/ABI: No system images installed for this target.
依旧很淡定
安卓
一、问题:在eclipse创建AVD设备的时候无法正常创建虚拟设备,报错:Nosystemimagesinstalledforthistarget.二、原因:SDK里面缺少了system-images文件。三、解决方法:1.进入网站:AndroidDevTools-Android开发工具AndroidSDK下载AndroidStudio下载Gradle下载SDKTools下载AndroidDevT
- adb安装
怒放的生命1991
rubymacos开发语言
Mac安装adb,最简单的办法是用homebrewhomebrew是macOS的一个包管理工具1、安装homebrewruby-e"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)"2、安装adbbrewcaskinstallandroid-platform-tools3、运行adbadbde
- adb的安装
依旧很淡定
adbadb
1、概念(1)adb(androiddebugbridge)安卓调试桥,用于完成电脑和手机之间的通信控制。(2)xcode来完成对于ios设备的操控,前提是有个mac电脑。2、adb的安装(1)adb是androidSDK其中自带的工具,用于完成电脑和手机之间的通信控制。(2)下载adb(3)解压之后,将sdk的platform-tools配置到环境变量path里。(4)adbversion用于查
- 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独立出来,数据持