- Vue3 vant组件库自动导入
不叫虎子
Vuevue.js前端javascript前端框架typescript
实现:完整使用vant组件库文档安装:#Vue3项目,安装最新版Vantnpmivant#通过yarn安装yarnaddvant#通过pnpm安装pnpmaddvant【一】按需引入:https://vant-contrib.gitee.io/vant/#/zh-CN/quickstart#fang-fa-er.-an-xu-yin-ru-zu-jian-yang-shi【二】批量引入在基于vit
- pnpm解說
白总Server
服务器kubernetes网络运维云原生pythonjava
pnpm(PerformanceNodePackageManager)是一个高性能的Node.js包管理器,它旨在解决npm和yarn在处理依赖关系时可能遇到的一些问题,如重复安装相同版本的包、包的存储空间占用过大等。pnpm使用了一种称为“硬链接”和“符号链接”的文件系统技术,这使得它能够以更高效的方式存储和管理依赖项。关键特点:高效存储:pnpm使用一种称为内容可寻址存储(ContentAdd
- 一步一步教你搭建monorepo项目架构
画一个圆_
前端架构前端
highlight:githubtheme:juejinpnpmworkspace实践项目架构采用pnpmworkspace+changelog+huskygithub示例地址1-Vue+Nest全栈模版github示例地址2-Vue+TS前端模版pnpm项目初始化,修改车生成的package.json文件中的private:true,防止根目录发布pnpminit根目录创建pnpm-worksp
- 搭建一个组件库(vue3)
yu_zhili
vue.js前端javascript
1.Monorepo(单仓库,多项目)作用:在一个项目里面管理多个模块,并且互不干扰npminstallpnpm-g2.初始化package.jsonpnpminit3.新建配置文件.npmrc//扁平化依赖解决幽灵依赖的问题shamefully-hoist=true4.新建pnpm-workspace.yaml仿照elemen-uipackages:-'packages/**'-'example
- monorepo搭建项目
讨口子
笔记javascript前端vue.js
yarnmonorepo这里:https://juejin.cn/post/7081440800143310884安装pnpmmonorepo的项目,限制只能使用pnpm如果已经安装了pnpm可以跳过此步骤安装pnpm命令:npmipnpm-g初始化项目首先新建一个文件夹,名为vue3-pnpm-monorepo进入vue3-pnpm-monorepo文件夹,初始化一个默认的package.jso
- 后台数据管理系统 - 项目架构设计
风流野趣fly
vue.js前端javascriptvscodecss前端框架webpack
后台数据管理系统-项目架构设计在线演示:黑马程序员-大事件接口文档:登录-黑马程序员-大事件接口根路径:http://big-event-vue-api-t.itheima.net本项目的技术栈本项目技术栈基于ES6、vue3、pinia、vue-router、vite、axios和element-plus项目页面介绍pnpm包管理器-创建项目一些优势:比同类工具快2倍左右、节省磁盘空间...pn
- 使用pnpm安装并配置Pinia的持久化插件pinia-plugin-persistedstate
正小安
vue杂谈前端fluttervue.js
使用pnpm安装并配置Pinia的持久化插件pinia-plugin-persistedstate在开发Vue.js或任何基于Pinia状态管理库的应用时,保持用户状态在会话或页面刷新后依然可用是一个常见的需求。pinia-plugin-persistedstate正是为此而生,它允许你将Pinia的状态管理库中的状态持久化到本地存储(LocalStorage)或会话存储(SessionStora
- vue3+ts 中使用mitt进行跨组件通信
我胡为喜呀
vue.js前端框架前端
mitt插件的使用安装插件进行封装一个模块,对外暴露一个Mitt实例使用安装插件官方文档pnpmimitt--s//我用的pnpm或npmi--smitt或yarnaddmitt进行封装一个模块,对外暴露一个Mitt实例1、在utils文件夹下新建mitt(例如mitt.ts),用于初始化并导出mitt实例://src/eventBus.tsimportmittfrom'mitt';//定义事件类
- 安装pnpm
qq_42463588
pnpm
安装pnpm(Performantnpm),即高性能的npm包管理工具,可以通过多种方式进行。以下是详细的安装步骤:一、通过npm全局安装打开命令行工具:在你的计算机上打开命令行工具,例如Windows的CMD、PowerShell或Linux/macOS的Terminal。执行安装命令:输入以下命令以全局方式安装pnpm。npminstallpnpm-g这里的-g参数表示全局安装,这样pnpm就
- 谈谈nvm、nrm、pnpm的理解
段子君
nvmnrmpnpm前端
谈一谈目前用的最多的也是主流的工具nvm、nrm以及pnpm的理解。nvm一般我们在公司开发,公司一般可能会有多个项目,可能有新项目也有老项目,不同的前端工程可能依赖的node版本不一样。这个时候就需要我们拥有多个node版本来开发不同的工程,如何安装多个node版本并可以随意的切换我们的node开发环境,这个时候nvm就能完美的发挥出自己的优势。nvm版本过低是不兼容vue3的项目的,我推荐1.
- 都2023了还不会Vue3?一篇笔记带你快速入门
Evan-Sky
vue3笔记arcgisvue.jsvueelementui前端
Vue3简介Vue3是一款用于构建用户界面的JavaScript框架。它基于标准HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面,Vue都可以胜任。快速上手创建一个Vue3项目在vue3中推荐使用pnpm,如果没有安装pnpm,请先用npm全局安装:npminstall-gpnpm首先,我们需要通过Vite创建一
- npm、cnpm、pnpm使用详细
北城笑笑
NodeJSNPM前端node.jsnpm
简介:npm:npm全称NodePackageManager,是Node.js平台的默认软件包管理器,用于安装、发布和管理Node.js应用程序和软件包。它是一个命令行工具,允许开发人员在他们的项目中轻松地管理依赖项、安装软件包、更新软件包版本以及执行其他与软件包相关的任务。npm是nodejs中的一部分,通常与nodejs一起安装和更新。当你安装了nodejs,npm也随之安装。cnpm:cnp
- webpack4手动搭建Vue项目
YUELEI118
前端vue.js前端webpack
小满视频很多解释使用通义灵码搜的,通义灵码的搜索结果也是有错误的全程使用pnpm包管理工具,和npm的用法基本一样学习总结1.多看看webpack官网2.webpack的作用:配置一堆东西,达到运行程序的目的3.无论什么东西都转成js,然后插入到一个空空的html文件中运行4.webpack就是个管理者,管理着一堆loader,一堆loader的作用就是把自己负责的东西弄成js手动搭建Vue项目,
- 包管理工具:npm、npx、yarn、cnpm、pnpm
March_Qii
npm前端
包管理工具:npm、npx、yarn、cnpm、pnpmnpm概述包管理工具npm:NodePackageManager,也就是Node包管理器;如何下载和安装npm工具呢?npm属于node的一个管理工具,所以需要先安装Node;node管理工具:https://nodejs.org/en/,安装Node的过程会自动安装npm工具;npm管理的包可以在哪里查看、搜索呢?https://www.n
- Npm Yarn Pnpm 设置国内镜像
想望着太阳
npmyarnnodenpm前端yarnnode.js
npm查看当前镜像npmconfiggetregistry设置淘宝镜像npmconfigsetregistryhttps://registry.npmmirror.com切回原镜像npmconfigsetregistryhttps://registry.npmjs.orgyarn查看当前镜像yarnconfiggetregistry设置为淘宝镜像yarnconfigsetregistryhttps
- pnpm 设置国内源
华山令狐虫
前端javascriptpnpm
pnpmconfigsetregistryhttps://registry.npmmirror.com/
- 修改yarn、npm、pnpm为国内镜像源
胖蔡
Web技术开发npm前端node.js
国内由于网络的原因,使用官方的npm、yarn、pnpm访问下载依赖库会很慢,有时候还会出现无法访问的情况,这时候就需要我们给npm、yarn、pnpm换一个国内的镜像源的,一般的我们可以将镜像换成淘宝的源,由于平时比较常用到的关系,所以就简单整理记录下,好之后查看。npm$npmconfiggetregistry#获取当前镜像地址$npmconfigsetregistryhttps://regi
- 创建前端项目中架构基本流程(vue版)
小徐努力中
架构前端vue.jsjavascript前端框架
本文章根据黑马程序员《大事件管理系统.md》整理编辑,不涉及具体项目实现,只整理项目前期准备的流程,具体项目实现可bilibili搜索黑马程序员获取此文档梳理搭建vue项目的基本流程及相应模板的创建本项目的技术栈本项目技术栈基于ES6、vue3、pinia、vue-router、vite、axios和element-plus包管理器-创建项目使用npm,yard,pnpm进行创建项目,具体流程可去
- 【前端面试】从npm 升级到 pnpm的总结
贾明恣
前端npmnode.js
pnpm优势pnpm和npm在性能上存在一些明显的差异,这也是一些开发者选择从npm切换到pnpm的原因。以下是一些关键的差异和原因:1.速度:pnpm比npm快了近2倍,它通过优化的依赖管理,显著提高了安装速度。2.磁盘空间效率:pnpm使用基于内容寻址的文件系统存储依赖,避免了重复安装同一包,节省了磁盘空间。npm/yarn可能会在每个项目中重复安装相同的包。3.依赖管理:pnpm通过硬链接确
- 一文搞懂 npm、cnpm、yarn、pnpm、npx、nvm 的区别
DiuWang
npm前端node.js
这些工具都是与JavaScript包管理和开发相关的工具,它们之间有一些区别和特点。npm(NodePackageManager):npm是Node.js的默认包管理器,用于安装、发布和管理JavaScript包。它是一个命令行工具,可以在终端中使用。npm有一个全球的包仓库,可以从中下载和安装各种JavaScript包。cnpm(Chinanpm):cnpm是npm的一个镜像,专门为中国用户提供
- 前端框架中的依赖管理(Dependency Management)
几何心凉
前端入门之旅前端框架状态模式
聚沙成塔·每天进步一点点本文回顾⭐专栏简介前端框架中的依赖管理(DependencyManagement)1.定义2.为什么需要依赖管理3.前端依赖管理工具3.1npm(NodePackageManager)3.2Yarn3.3pnpm4.依赖管理的核心概念4.1`package.json`4.2版本号管理4.3`node_modules`4.4锁定文件5.如何管理前端依赖5.1使用包管理器5.2
- npm报证书过期 certificate has expired问题(已解决)
宁顾取。
前端报错合集npm前端node.js
取消ssl验证:npmconfigsetstrict-sslfalse解决啦!参考文章:解决执行npm(或pnpm)时报:证书过期certificatehasexpired问题_npm_慢慢雨夜-GitCode开源社区
- pnpm项目内网迁移技巧
夜晓码农
Webjavascriptpnpmnpm
概述因为公司项目需要,经常要从外网将代码拷贝到内网进行调试,因为pnpm是基于链接的npm管理工具,所以pnpm的项目迁移和普通的npm项目不一样。步骤离线安装pnpm#在互联网设备执行pnpm的安装npmipnpm--install-strategy=shallow#完成后能看到node_modules目录下新建了pnpm目录#打包node_modules文件夹,拷贝到离线设备解压cdnode_
- 包管理工具详解npm、yarn、cnpm、npx、pnpm
木公176
前端工程化基础npm前端node.jspnpm
目录:1npm包管理工具2package配置文件3npminstall原理4yarn、cnpm、npx5发布自己的开发包6pnpm使用和原理当我们使用npminstallxxxx的时候会添加一个node_module和2个json文件:package.json是配置信息文件,这个配置文件会记录着你项目的名称、版本号、项目描述等;也会记录着你项目所依赖的其他库的信息和依赖库的版本号;这个文件我们
- 前端 node 常见的包管理工具 npm、npx、Yarn、cnpm、pnpm 的区别有哪些
我有一棵树
前端npmnode.js
些工具都是用于管理Node.js包和依赖项的npm(NodePackageManager):npm是Node.js的默认包管理工具,随同Node.js安装。主要功能包括安装、发布、管理JavaScript包和依赖项。npm是最常用的包管理工具之一,拥有庞大的包仓库(npmRegistry)。npx:npx是npm5.2.0版本引入的一个工具,用于在不全局安装包的情况下运行本地安装的包。通过npx,
- npm install 相关过程及分析
林大大哟
js有趣知识nodenpm前端node.js
1、install完整流程1.1、根据.npmrc进行安装前环境配置注意:镜像源就是在这个文件中配置的优先级:每个项目的配置文件(/path/to/my/project/.npmrc)每个工作区的配置文件(包含pnpm-workspace.yaml文件的目录)每位用户的配置文件(~/.npmrc)全局配置文件(/etc/npmrc)1.2、检查有无lock.json文件注意:npm/pnpm检查的
- electron桌面开发相关注意点
码农下的天桥
electronjavascript前端
electron的部署以及配置如果使用的是pnpm,请先配置一下镜像,否则会安装失败的:pnpmconfigsetregistry=https://registry.npmmirror.compnpmconfigsetelectron_mirror=https://cdn.npmmirror.com/binaries/electron/pnpmconfigsetelectron_builder_b
- 记录Npm 淘宝镜像到期导致pnpm install失败的解决过程
Score666
Vue前端学习npm前端node.js
目录省流请看最终操作:最终操作:事情起因:在做毕设的时候,需要用到prismjs高亮代码结果安装时出现以下问题:搜索了一下,是淘宝镜像到期了,两天前的事情:Npm淘宝镜像到期了,尽快切换心里想着更新一下源就好了吧,于是乎执行以下代码:pnpmconfigsetregistryhttps://registry.npmmirror.com结果,他还是给我用https://registry.npm.ta
- 查看更改npm镜像源
rouer
npm前端node.js
如果你在使用npm时感觉下载速度过慢,可以尝试切换npm源为国内的镜像源,或者安装pnpm,下面是介绍。一、查看更改npm镜像源1、使用npm官方提供的命令查看镜像源:npmconfiggetregistry命令执行后,会输出当前npm使用的镜像源地址,比如:https://registry.npmjs.org/2、如果你想要使用淘宝镜像源,可以使用以下命令进行修改:npmconfigsetreg
- 管理工具npm与cnpm、npx、nvm、yarn、pnpm的区别
weiweivita
前端npm前端node.js
管理工具npm与cnpm的区别npm与npx的区别npm与nvm的区别npm与yarn的区别npm与pnpm的区别npm与cnpm的区别速度优化关系npm:nodejs的包管理器,用于node插件管理(包括安装、卸载、管理依赖等)优点:npm属于node自带,不需要手动安装,安装node即可缺点:默认仓库地址http://registry.npmjs.org在国外,下载速度慢,很不稳定,通常需要设
- 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独立出来,数据持