- Grafana
小馋喵知识杂货铺
性能grafana
Grafana是一款广泛使用的开源数据可视化与监控平台,通过与Prometheus、InfluxDB、Elasticsearch等多种数据源集成,提供强大的监控、数据展示和告警功能。其告警体系在及时通知系统异常、保障业务稳定性方面起到关键作用。Grafana告警体系概述Grafana的告警体系分为以下几个部分:告警规则:用于定义何时触发告警,包括监控指标、评估条件和评估时间间隔。告警规则可以基于面
- ElasticSearch查询 第四篇:匹配查询(Match)
悦光阴
字符串javapythonelasticsearch索引
《ElasticSearch查询》目录导航:ElasticSearch查询第一篇:搜索APIElasticSearch查询第二篇:文档更新ElasticSearch查询第三篇:词条查询ElasticSearch查询第四篇:匹配查询(Match)ElasticSearch查询第五篇:布尔查询匹配(Match)查询属于全文(Fulltext)查询,不同于词条查询,ElasticSearch引擎在处理全
- 【Elasticsearch】RestClient操作文档
乙卯年QAQ
elasticsearchjenkins大数据java
RestClient操作文档新增文档实体类API语法查询文档删除文档修改文档批量导入文档小结新增文档将数据库中的信息导入elasticsearch中以商品数据为例实体类定义一个索引库结构对应的实体。@Data@ApiModel(description="索引库实体")publicclassItemDoc{@ApiModelProperty("商品id")privateStringid;@ApiMo
- elasticsearch pipeline 总结
weixin_40455124
elasticsearch代码分析及扩展pipelineelasticsearchingestindex
pipeline可以理解为elasticsearch对接收到的数据的入库前再处理过程,这个过程可以非常复杂,包括修改数据归属index。pipeline运行在ingestnode上一个pipeline由多个process组成,一个nodes支持哪些process,可以通过GET/_nodes/ingest查看,每种processor用途可以参看https://www.elastic.co/guid
- ElasticSearch解析logback日志并处理异常栈轨迹
甘蓝聊Java
【更新中...】项目中的那些事elasticsearchlogbackpipelinemultilinefilebeat多行
文章目录背景分析IngestPipeline解析日志-示例查看IngestPipeline创建Pipeline添加Grok处理器添加时间戳、IP地址和用户代理处理器测试Pipeline多行消息管理filestreaminputloginput解决自定义pipeline解析logback日志Grok处理器Date处理器失败处理器为loginput添加多行处理验证调整Kibana数据视图验证失败处理器
- es-Ingest pipelines
童小绿
笔记elasticsearch大数据bigdata
Ingestpipelinesnode为ingest角色,对indexingrequest做预处理,主要用于数据转换为合规、期望值的场景官方地址:https://www.elastic.co/guide/en/elasticsearch/reference/7.13/ingest.html#ingest使用pipeline必要条件node角色必须为:ingestpipeline的组成{"descr
- Elasticsearch 摄取节点(Ingest Node)使用Pipeline预处理文档
°Fuhb
ELKelasticsearches预处理节点pipelineingestnode
1.IngestnodeIngestnode是elasticsearch的节点类型之一,通过在Ingestnode配置pipeline管道,可以在文档存入索引之前对文档进行预处理。例如:删除字段,重命名字段,修改字段值等等。默认情况下,所有节点都是IngestNode,可以通过修改elasticsearch.yml,把node.ingest改成false来关闭node.ingest:false要实
- ElasticSearch 实战: ES 文档 API
用心去追梦
elasticsearchjenkins大数据
Elasticsearch提供了一系列文档(Document)API,用于对索引中的个体数据单元进行增删改查操作。以下是对主要文档API的实战介绍:1.索引文档(IndexAPI)目的:插入或更新文档。请求方式:PUT或POSTURL:PUT//_doc/或POST//_doc/请求体:包含待索引的文档数据,以JSON格式表示。示例:PUT/my_index/_doc/1{"title":"Exa
- Elasticsearch 摄取节点(Ingest Node)常用的数据处理器(Processor)
°Fuhb
ELKelasticsearchesProcessor预处理IngestNode
文章目录SetProcessorAppendProcessorRemoveProcessorRenameProcessorConvertProcessorGrokProcessorDotExpanderProcessorDropProcessorFailProcessorJoinProcessorSplitProcessorKVProcessorJSONProcessorTrimProcessor
- MySQL、HBase 和 Elasticsearch:特点与区别详解
一休哥助手
mysqlhbaseelasticsearch
引言随着大数据和分布式计算的快速发展,数据库系统已从传统的关系型数据库(RDBMS)扩展到多种新型数据存储技术,包括NoSQL数据库和搜索引擎等。MySQL、HBase和Elasticsearch是其中三种非常常见的数据存储系统,它们在各自的领域都有着重要的应用。MySQL作为传统的关系型数据库,HBase则是一个分布式、可扩展的NoSQL数据库,而Elasticsearch则是一个分布式的搜索引
- es 3期 第22节-Bucket特殊分桶聚合实战
DavidSoCool
elasticsearchelasticsearch大数据搜索引擎
####1.Elasticsearch是数据库,不是普通的Java应用程序,传统数据库需要的硬件资源同样需要,提升性能最有效的就是升级硬件。####2.Elasticsearch是文档型数据库,不是关系型数据库,不具备严格的ACID事务特性,任何企图直接替代严格事务性场景的应用项目都会失败!!!####3.Elasticsearch原则上适合一切非事务性应用场景或能够容许一定的延迟的事务性场景;能
- es 3期 第25节-运用Rollup减少数据存储
DavidSoCool
elasticsearchelasticsearch大数据搜索引擎
####1.Elasticsearch是数据库,不是普通的Java应用程序,传统数据库需要的硬件资源同样需要,提升性能最有效的就是升级硬件。####2.Elasticsearch是文档型数据库,不是关系型数据库,不具备严格的ACID事务特性,任何企图直接替代严格事务性场景的应用项目都会失败!!!####3.Elasticsearch原则上适合一切非事务性应用场景或能够容许一定的延迟的事务性场景;能
- ELK Stack:日志管理与分析的神兵利器
Aries263
elkjenkins运维
在当今的数字化时代,数据是企业运营的核心。而日志数据,作为数据的重要组成部分,对于监控、分析和故障排查具有不可替代的作用。ELKStack(Elasticsearch、Logstash和Kibana的组合)凭借其强大的日志收集、处理和可视化能力,成为了众多企业和开发者首选的日志管理与分析工具。本文将深入探讨ELKStack的工作原理、应用场景以及如何使用它来构建高效的日志管理系统。一、ELKSta
- Elasticsearch Date类型使用技巧
weixin_30886233
大数据jsonjava
elasticsearch原生支持date类型。这里简单记录下使用的方法。使用date类型可以用如下两种方式:使用毫秒的时间戳,直接将毫秒值传入即可。传入格式化的字符串,默认是ISO8601标准,例如2015-02-27T00:07Z(零时区)、2015-02-27T08:07+08:00(东八区),这两个时间实际是同一个,只是时区不同。另外还可以自定义时间格式,参见es的文档。但个人不建议使用自
- Oracle 到 Elasticsearch 数据迁移同步
简述Elasticsearch是一个分布式的实时搜索与数据分析引擎,具有强大的可扩展性和高度的灵活性。CloudCanal对于Elasticsearch的支持经过了多轮迭代,支持版本从6.x和7.x一路扩展到8.x,并适配了其丰富多样的API。同时CloudCanal对Oracle源端同步技术进行了多处优化,大幅提升了数据同步的稳定性和可靠性。本文主要介绍如何使用CloudCanal快速构建一条O
- elasticSearch数据的导入和导出
ZNineSun
大数据elasticsearchelasticdumpnode
es数据的导入和导出需要借助于elasticdump工具,这是一个nodejs的插件,安装方式直接使用npm即可,安装指令如下:npminstallelasticdump-g如果您的电脑还未安装Node环境,请移步此处:《npm安装教程》1.导出指定索引的数据到本地elasticdump--input=http://localhost:9200/demo--output=D:/ES/date/de
- Python 操作 Elasticsearch 全指南:从连接到数据查询与处理
XMYX-0
pythonelasticsearchjenkins
文章目录Python操作Elasticsearch全指南:从连接到数据查询与处理引言安装`elasticsearch-py`连接到Elasticsearch创建索引插入数据查询数据1.简单查询2.布尔查询更新文档删除文档和索引删除文档删除索引批量插入数据处理分页结果总结Python操作Elasticsearch全指南:从连接到数据查询与处理引言在大数据分析与搜索应用中,Elasticsearch是
- 【Es】python es操作
小毛驴吃梨子
elasticsearchpython大数据
表因为es是集群所以es_hosts是列表fromelasticsearchimportElasticsearchES_HOSTS=["127.0.0.1:9200"]ES_HTTP_AUTH="******************"#连接Eses=Elasticsearch(hosts=ES_HOSTS,http_auth=ES_HTTP_AUTH,maxsize=60,timeout=30,m
- python连接elasticsearch实战(附完整代码)
当初
pythonelasticsearch
python连接elasticsearchfromelasticsearchimportElasticsearchfromelasticsearch.helpersimportscanES_HOSTS=[{'host':'','port':9200,'scheme':'http'}]es=Elasticsearch(hosts=ES_HOSTS,basic_auth=('账号','密码'))#检查
- 【Elasticsearch 】 聚合分析:聚合概述
程风破~
Elasticsearchelasticsearch大数据搜索引擎
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
- ELK Stack学习笔记
在线打码
学习笔记redislinuxcentoseselk
一、ELKStack简介1、Elasticsearch一个实时的分布式搜索和分析引擎,它可以用于全文搜索,结构化搜索以及分析。它是一个建立在全文搜索引擎ApacheLucene(信息检索的工具jar包)基础上的搜索引擎,使用Java语言编写2、Logstash一个完全开源的工具,可以对日志进行收集、过滤,并将其存储供以后使用。是开源的服务器端数据处理管道,能够从多个来源收集数据、转换数据。并保存到
- 我的软件架构师——Java 职位面试经历。
小蜗牛慢慢爬行
java面试开发语言职场和发展后端springbootspring
最近,我参加了一家领先的服务型公司的软件架构师(Java)职位的面试。我在这里分享了一些面试官问我的问题。我只列出了与Java相关的问题,因为本文主要关注Java。面试官问我有关AWS、Docker、Kubernetes、Kafka、ElasticSearch、SQL/NoSQL和设计模式的问题。ClassNotFoundException和NoClassDefFoundError有什么区别?当您
- 【Elasticsearch 实战应用】
wenshao.du
elasticsearch
Elasticsearch实战应用在现代企业技术架构中,Elasticsearch因其出色的性能、可扩展性和易用性,成为了处理大规模数据和构建搜索引擎的首选工具。本文将通过一个实际案例,详细讲解如何在SpringBoot项目中集成Elasticsearch,进行数据索引、搜索、聚合分析等操作。1.Elasticsearch简介Elasticsearch是一个基于ApacheLucene构建的开源分
- 在Linux中修改vm.max_map_count参数的步骤
行路见知
linux运维
使用docker安装es时报错,Elasticsearch需要更多的虚拟内存区域ERROR:[1]bootstrapchecksfailed.Youmustaddressthepointsdescribedinthefollowing[1]linesbeforestartingElasticsearch.bootstrapcheckfailure[1]of[1]:maxvirtualmemorya
- 【Elasticsearch集群】轻松部署 Elasticsearch:8.0 集群
库洛王子
Elasticsearchelasticsearchjenkins大数据
概要一文教你轻松掌握Elasticsearch:8.0+集群部署,JDK17+环境准备准备3台centos服务器:192.168.0.10、192.168.0.11、192.168.0.121、更新系统yumupdate2、安装jdkElasticsearch8.x要求JDK17。JDK17是当前的LTS版本,建议使用它来运行Elasticsearch8.x以获得最佳性能和安全支持。(步骤略)4、
- Elasticsearch 中的节点(比如共 20 个),其中的10 个选了一个 master,另外 10 个选了另一个 master,怎么办?思维导图 代码示例(java 架构)
用心去追梦
elasticsearchjava架构
在Elasticsearch中,如果出现集群分裂(Split-brain)的情况,即一部分节点选举了一个Master节点,而另一部分节点选举了另一个Master节点,这会导致数据不一致和集群不可用。Elasticsearch通过配置discovery.seed_hosts和cluster.initial_master_nodes参数来避免这种情况,并确保有足够的节点参与选举以达成共识。为了防止Sp
- ElasticSearch索引别名的应用
elasticsearch
个人博客:无奈何杨(wnhyang)个人语雀:wnhyang共享语雀:在线知识共享Github:wnhyang-OverviewElasticsearch索引别名是一种极为灵活且强大的功能,它允许用户为一个或多个索引创建逻辑上的别名。这些别名用途广泛,涵盖查询、索引操作以及索引管理等多个方面。以下为一些常见的索引别名应用场景:简化查询通过创建别名,用户能够以更简洁的名称访问一个或多个索引。例如,若
- 试试 Elasticsearch 的 unsigned_long(qbit)
elasticsearch整数
前言本文在Elasticsearch7.17下测试Elasticsearch自7.10引入了64位无符号整数unsigned_long,之前只有long已知long的数据范围[-2^63,2^63-1]即[-9223372036854775808,9223372036854775807]已知unsigned_long的数据范围[0,2^64-1]即[0,18446744073709551615]试
- Elasticsearch 8.x 重要变化(qbit)
前言本文记录的重要变化重要与否为qbit个人判断官方Releasenotes:https://www.elastic.co/guide/en/elasticsearch/reference/curre...收费功能查看:ElasticStacksubscriptions回顾:向量搜索创新的时间线8.0(2022-02-11)What’snewin8.0默认启用安全特性(Securityfeatur
- 学英语学技术:Elasticsearch 线程池
学会了没
elasticsearch大数据搜索引擎
单词汉语意思音标allocate分配/ˈæləˌkeɪt/coordination协调/koʊˌɔːrdɪˈneɪʃn/deprecated废弃的/ˈdɛprəˌkeɪtɪd/elasticsearch弹性搜索(专有名词)/ˌɛlɪkˈsɜːrtʃ/execute执行/ˈɛksɪˌkjuːt/generic通用的/dʒəˈnɛrɪk/initial初始的/ɪˈnɪʃəl/metadata元数据/ˈ
- 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独立出来,数据持