- Spring源码-读取XML文件配置信息
一、XML基础DTD、XML阐述、XML的两种文档类型约束和DTD的使用-CSDN博客二、newFile()、getResource()、getResourceAsStream()Java中Class类和ClassLoader类的getResource()和getResourceAsStream()方法的使用_getclassloader().getresourceasstream-CSDN博客三
- Python 库手册:xml.etree.ElementTree 处理 XML 数据模块
xml.etree.ElementTree(简称ElementTree)是Python标准库中用于解析、创建和操作XML数据的模块。它提供了一种轻量、易用的方式来读取、修改和写入XML文件,适用于配置文件处理、数据交换、网络通信等应用场景。常见应用场景:(1)读取XML配置文件并提取参数。(2)修改XML数据结构(如节点属性、内容)。(3)创建新的XML文档并保存。(4)从WebAPI获取的XML
- Spring源码之扫描器(AnnotatedBeanDefinitionReader和ClassPathBeanDefinitionScanner)(三)
夜半听风醉
Spring源码专题
前言Spring容器加载Bean定义信息的两个扫描器:AnnotatedBeanDefinitionReader和ClassPathBeanDefinitionScanner*从命名来看,前者是读取注解声明的bean的定义信息;后者是读取xml声明的bean的定义信息本文将详细介绍这两个扫描器的初始化过程1.准备工作1.初始化一个spring容器对象2.断点调试,跟踪查看扫描器的初始化过程2.源码
- WPF黑科技:XmlDataProvider如何让XML数据“活过来“?
墨夶
C#学习资料wpf科技xml
1.为什么你的WPF界面像"僵尸"?举个:假设你要展示用户列表,但数据来自XML文件:传统方式:读取XML→转换为C#对象→绑定到控件→代码臃肿!XmlDataProvider方案:“像"插拔"一样把XML直接塞进XAML,界面自动刷新——代码量减少90%!”2.XmlDataProvider实战手册2.1基础用法:从XML到界面"秒绑定"步骤1:准备XML数据张三25李四30步骤2:在XAML中
- Spring Bean 生命周期:注册、初始化、注入及后置操作执行顺序
中国lanwp
springjava前端
SpringBean生命周期:注册、初始化、注入及后置操作执行顺序SpringBean的生命周期包含多个阶段,了解这些阶段的执行顺序对于正确使用Spring框架至关重要。以下是完整的执行顺序:1.Bean定义注册阶段配置源读取:Spring读取XML、JavaConfig或组件扫描的配置BeanDefinition注册:将Bean定义注册到BeanDefinitionRegistry对于@Comp
- 【实习总结】C++ 通过pugi::xml库对xml文件进行操作
_清风过耳
实习总结xmlc++开发语言1024程序员节c语言
目录相关背景pugi::xml简概将配置信息写入xml文件读取xml文件中的配置信息相关背景当我们需要将某些配置信息写入项目目录下的xml文件,或者再程序启动时,加载项目下已有的的配置信息(.xml),此时,我们可以使用轻量级C++XML处理库pugi::xml,来对xml文件进行操作。pugi::xml简概首先我们通过如下链接,下载pugi::xml源码的压缩包项目首页-pugixml:Ligh
- C# 读取xml数据和vaule
老刘忙Giser
C#
C#读取xml数据和vaule;usingSystem.Xml;XmlTextReaderreader=newXmlTextReader("C://test.xml");reader.Read();stringcontent;while(reader.Read()){reader.MoveToContent();if(reader.NodeType==System.Xml.XmlNodeType.
- Qt 用XML流,QXmlStreamReader解析读取xml
刺客xs
xml
QXmlStreamReader是应用程序代码自身来驱动循环,在需要的时候可以从读取器中一个接一个地拉出记号。这个是通过调用readNext()函数实现。它可以读取下一个记号,然后返回一个记号类型;它由枚举量QXmlStreamReader::TokenType定义,所有取值如下表格所示。然后使用isStartElement()和text()等函数来判断这个记号是否包含需要的信息。常量描述QXml
- Qt文件:XML文件
TNTLWT
#Qtqtxml数据库
XML文件1.XML文件结构1.1基本结构1.2XML格式规则1.3XMLvsHTML2.XML文件操作2.1DOM方式(QDomDocument)读取XML写入XML2.2SAX方式(QXmlStreamReader/QXmlStreamWriter)读取XML写入XML2.3对比分析3.使用场景3.1存储配置信息3.2数据交换与存储3.3界面布局与资源定义3.4网络通信与API交互3.5插件与
- 第23章,python3 操作各种文件详解,20个例子
韩公子的Linux大集市
Python3数据分析pythonlinux开发语言
文章目录Python3操作各种文件详解(20个示例)1.读取文本文件2.逐行读取文件3.写入文本文件4.追加写入文件5.读取CSV文件6.写入CSV文件7.使用DictReader处理CSV8.使用DictWriter写入CSV9.读取JSON文件10.写入JSON文件11.读取XML文件12.写入XML文件13.复制文件14.移动/重命名文件15.删除文件16.检查文件是否存在17.获取文件信息
- Java反序列化触发方式
杜子腾1
Java安全java网络安全
反序列化触发点扩展ObjectInputStream.readObject//流转化为ObjectObjectInputStream.readUnshared//流转化为ObjectXMLDecoder.readObject//读取xml转化为ObjectYaml.load//yaml字符串转ObjectXStream.fromXML//XStream用于JavaObject与xml相互转化Obj
- Qt 处理 XML 数据
小刘同学++
qtqtxml
在Qt中,处理XML数据通常使用Qt提供的QDomDocument、QXmlStreamReader和QXmlStreamWriter类。这些类可以帮助你读取、修改和写入XML数据。1.使用QDomDocument处理XMLQDomDocument提供了对XML文档的DOM(DocumentObjectModel)结构的访问方式。这是一种树形结构,适用于对XML进行修改。1.1.读取XML文件#i
- #学习笔记#使用dom4j读取xml文件得到document对象
一段对白
xmljavadomjavascript
使用dom4j读取xml文件得到document对象先新建一个xml文件时间简史霍金75Java从入门到入土<某某某<9.9//books.javapackagelianxi01;importjava.math.BigDecimal;publicclassbooks{privateStringsn;//防止类中的数据成员,在类的定义之外被修改privateStringname;priv
- 【Python】解析 XML
茉菇
Pythonpythonxml
1、Python对XML的解析1.1SAX(simpleAPIforXML)SAX解析器使用事件驱动模型,通过在解析XML的过程中触发一个个的事件并调用用户定义的回调函数来处理XML文件。xml.sax模块牺牲了便捷性来换取速度和内存占用。事件驱动指一种基于回调(callback)机制的程序运行方法。利用SAX解析XML文档牵涉到两个部分:解析器:负责读取XML文档,并向事件处理器发送事件,如元素
- python读取xml文件
懒大王爱吃狼
pythonpythonxmljava网络Python基础pycharm开发语言
在Python中读取XML文件可以使用内置的xml.etree.ElementTree模块,它提供了一个轻量级且易于使用的API来解析和创建XML数据。下面是一个基本的示例,展示如何读取XML文件并提取数据。假设我们有一个名为example.xml的XML文件,内容如下:
[email protected]@example.com以下
- tinyxml创建、写入和读取
@Mr_LiuYang
写过的小程序C语言tinyxmlxml创建添加xml读取
最近在集成小程序,涉及到使用tinyxml类,在这里记录本次用于输出程序执行状态的代码,包括创建、添加信息、读取信息,exportXmlParam用于创建输出,addXmlevent用于主程序部分实时显示进程信息,ReadXmlParam用于读取xml文件。(1)创建xml文件,因为本次要求输入数据在哪,输出结果文件必须在哪,故这里采用name表示输入数据的绝对地址参数voidCXMLReadfi
- java后端研发经典面试题总结二
Netty711
java面试大数据redisspring
四种读取XML文件读取的办法1.DOM生成和解析XML文档为XML文档的已解析版本定义了一组接口。解析器读入整个文档,然后构建一个驻留内存的树结构。优点:整个文档树在内存中,便于操作;支持删除,修改,重新排列等。缺点:把整个文档调入内存,存在很多无用的节点,浪费了时间和空间。2.SAX为解决DOM1、边读边解析,应用于大型XML文档2、只支持读3、访问效率低4、顺序访问3.DOM4J生成和解析XM
- nodejs中xmldom的使用方法
jedi-knight
webjavascript前端node.js
xmldom的使用方法xmldom是nodejs下读取xml文件的优秀模块。使用npm安装,命令行如下npminstallxmldom使用步骤:(1)将字符串转换为可操作的对象const{DOMParser}=require('xmldom')vardoc=newDOMParser().parseFromString(xmlData.toString(),//这里是xml字符串,可以从文件中读取'
- r语言 xml html,R语言读取XML文件-xml文件
bean.Xu
r语言xmlhtml
XML文件简介在计算机领域,XML(extensiblemarkuplanguage)指的是可扩展标记语言,类似于HTML,它设计的宗旨是传输数据,而不是显示数据,所以这也是它和HTML的一个明显的差别。另外一个差别是XML的标签没有被预定义,我们可以根据自己的需要自行设计标签名字,所以具有自我描述性。一个具体的例子以上就是一个XML的例子,它拥有发送者和接受者,标题,内容等信息,所以自我描述非常
- Python基础—用python读取xml文件!
小尤笔记
pythonxml开发语言
读取XML文件在Python中是一个常见的任务,通常可以使用内置的xml.etree.ElementTree模块来完成。这个模块提供了简单而高效的XML解析和生成功能。下面是一个详细的代码示例和讲解,展示了如何使用xml.etree.ElementTree来读取XML文件。代码示例假设我们有一个名为example.xml的XML文件,内容如下:120081411004201159900我们的目标是
- 【C++开发中XML 文件的妙用】
勾魂凉皮
c++xml开发语言
在C++中,XML(可扩展标记语言)文件通常用于存储配置数据、应用程序设置、数据交换格式等。由于其结构化和可读性强的特点,XML文件在配置管理、序列化、跨平台数据交换以及软件国际化等方面有着广泛的应用。XML文件的妙用配置管理:XML文件经常被用来存储应用程序的配置。可以动态读取XML文件来配置应用程序的行为,而无需重新编译代码。数据交换格式:XML是跨平台、跨语言的数据交换格式。许多网络协议和数
- Java读取xml工具类
无了_wule
工具类xmljavajvm
xml工具类自定义注解IXmlimportjava.lang.annotation.*;/***@ClassName:IXml*@Description:注意:当前判断新建节点映射对象是根据类成员变量所有标注当前注解的字段值都不为null,*所以:*一:所有nodeName都必须存在于xml文件中(区分大小写)*二:所有相同node节点和attributeName都必须相同,个数都保持一致*@1"
- Android 读取 XML 文件之 XmlPullParser 编码模板
我命由我12345
Android-简化编程xml安卓androidjavaandroid-studio
一、XmlPullParser概述XmlPullParser是Android平台上用于解析XML数据的一个接口,它提供了更高效的方式来读取XML文档XmlPullParser不会一次性将整个XML文档加载到内存中,而是采用流式读取的方式,即边读取边解析,这样可以大大减少对内存的使用,特别适合处理大型XML文件二、XmlPullParser基本使用1、使用步骤获取解析器实例XmlPullParser
- 第二十六章 定制SAX解析器的使用方式
Cache技术分享
第二十六章定制SAX解析器的使用方式每当InterSystemsIRIS读取XML文档时,它都会使用InterSystemsIRISSAX(SimpleAPIForXML)解析器。本章介绍用于控制系统间IRISSAX解析器的选项。关于IRISSAX解析器每当InterSystemsIRIS读取XML文档时,都会使用InterSystemsIRISSAX解析器。它是一个事件驱动的XML解析器,读取X
- 使用Python将xml标注文件转换为coco json格式
tangjunjun-owen
toolspythonxmljson
文章目录前言一、读取xml文件二、获取文件路径模块三、XML转COCOJSON模块四、主程序总结附:完整代码前言在计算机视觉领域,特别是目标检测任务中,不同的数据集采用了不同的标注格式。PascalVOC数据集使用XML文件进行目标检测的标注,而MicrosoftCOCO数据集则采用JSON格式。为了方便模型训练,我们经常需要将XML格式的数据转换成JSON格式。本文将详细介绍如何用Python实
- 深入探索Pandas读写XML文件的完整指南与实战read_xml、to_xml【第79篇—读写XML文件】
一见已难忘的申公豹
pandasxml数据交换格式read_xmlto_xml
深入探索Pandas读写XML文件的完整指南与实战read_xml、to_xmlXML(eXtensibleMarkupLanguage)是一种常见的数据交换格式,广泛应用于各种应用程序和领域。在数据处理中,Pandas是一个强大的工具,它提供了read_xml和to_xml两个方法,使得读取和写入XML文件变得简单而直观。读取XML文件-read_xml方法参数说明:1.path(必需)指定XM
- Qt使用单例模式读取xml文件
海棠半载
Qtqt单例模式xml
Qt使用单例模式读取xml文件一、单例模式介绍1、什么是单例模式2、为什么使用单例模式3、什么情况下使用单例模式4、使用单例模式需要注意哪些问题线程安全5、单例模式的类型6、单例类的特点2、单例模式的实现2.1懒汉式2.2饿汉式一、单例模式介绍1、什么是单例模式单例模式是指在整个系统生命周期内,保证一个类只能产生一个实例,确保该类的唯一性。2、为什么使用单例模式1、节省资源。一个类只有一个实例,不
- Python单元测试之unittest
601eff46fb64
目录类容unittest单元测试,集成测试,功能测试Unittest的重要组成部分断言的使用测试用例方法的命名规则执行测试用例原始的测试报告和第三方的html格式报告读取xml文件数据进行单元测试读取csv文件数据进行单元测试一、单元测试、集成测试、功能测试单元测试颗粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”;是指对软件中的最小可测试单元进行检查和验证集成测试介于单元
- 请你介绍下ioc的工作流程
我是一只代码狗
javaspringjavaspring
1.读取xml定义的bean信息或者注解定义的bean信息2.然后解析bean信息放入BeanDefinition中3.然后把BeanDefinition放到ioc容器里面,也就是放到一个map中,完成ioc的初始化4.在获取对象的时候可以通过@Autowired注解,或者通过BeanFactory.getBean()方法获取,也就是从ioc容器里面去拿
- VTK从内存中读取XML格式文件
混元太极马保国
vtk
vtkSmartPointerreader=vtkSmartPointer::New();reader->SetReadFromInputString(true);reader->SetInputString(content);//content为字符串形式的数据reader->Update();继承于vtkXMLReader的类都可以将内存中的数据直接进行读取。
- 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独立出来,数据持