- mysqlclient MacOS 使用报错 NameError: name ‘_mysql’ is not defined
流浮生
日常填坑pythondjangomysql
背景最近使用django作为一个服务的后台,在使用mysqlclient链接mysql数据库时发生一个奇怪的报错NameError:name‘_mysql’isnotdefined下面是具体报错信息INFO]2021-04-0702:27:57,613WatchingforfilechangeswithStatReloaderExceptioninthreaddjango-main-thread:
- Nginx配置Http响应头安全策略_nginx content-security-policy
2301_82257383
程序员nginxhttpokhttp
server{listen80;server_nameexample.com;location/{add_headerContent-Security-Policy"script-src'self'https://ajax.googleapis.com;";#其他配置...}}3.12style-src指令的参数、说明和示例参数说明示例self只允许从同源加载样式表。style-src'self'
- 如何区分MongoDB和关系型数据库?思维导图 代码示例(java 架构)
用心去追梦
数据库mongodbjava
MongoDB和关系型数据库(RDBMS,如MySQL、PostgreSQL)是两种不同类型的数据库管理系统,它们在数据模型、查询语言、扩展性和性能等方面存在显著差异。理解这些差异有助于选择适合特定应用场景的数据库类型。以下是关于如何区分MongoDB和关系型数据库的详细指南:区分MongoDB和关系型数据库数据模型MongoDB:文档模型:使用BSON格式存储数据,每个记录都是一个自描述的文档,
- 老版本chrome浏览器版本下载地址
美兮,乐兮
chromejsjavascript
https://www.slimjet.com/chrome/google-chrome-old-version.php
- 使用WebSocket、MySQL、Go语言的Gin框架和GORM库来实现一个用户实时统计大屏概览
云梦优选
Gowebsocketmysqlgolang
为了使用WebSocket、MySQL、Go的Gin框架和GORM实现用户实时统计大屏概览,以下是分步指南:1.项目结构与依赖1.1初始化项目mkdirrealtime-dashboard&&cdrealtime-dashboardgomodinitrealtime-dashboard1.2安装依赖goget-ugithub.com/gin-gonic/gingoget-ugorm.io/gorm
- SDK级的kubectl,client-go的深度封装:kom使用指南
大大宝的博客
k8sgolang开发语言后端云原生kubernetes
目录什么是kom特点示例程序安装使用示例1.多集群管理注册多集群显示已注册集群选择默认集群选择指定集群2.内置资源对象的增删改查以及Watch示例创建某个资源Get查询某个资源List查询资源列表通过Label查询资源列表通过多个Label查询资源列表通过Field查询资源列表更新资源内容PATCH更新资源删除资源通用类型资源的获取(适用于k8s内置类型以及CRD)Watch资源变更3.YAML创
- 设计模式GOF23简介
令狐掌门
C++/C#设计模式设计模式
软件设计模式介绍公元1991年,软件界有四位大侠,总结了前人的一些设计模式,并进行分门别类,一共得出23种设计模式供软件开发者进行参考复用,在经过几代人的开发实践后,设计模式在各个项目中大放光彩,这四位大侠是Gamma,Helm,JohnsonVlissides,Addison-Wesley,全地球程序员为了表示对设计模式的敬仰与崇拜,因此设计模式又称为GOF23。设计模式分类设计模式主要有三大类
- 缓存的几种不同的实现方法?
ducode
一、1、文件缓存所谓文件缓存,就是根据逻辑判断,一段时间内某个asp的特定执行将不会很大的变动,因因而将内容以静态html的形式存放,然后以web的重定向技术让客户端访问静态文件,以达到减少CPU、数据库资源等的需求。这样的应用很多,譬如很多论坛就是在回复帖子的时候将整个帖子重新生成一个静态文件,然后进行重定向的,例如DONEWS,COM的论坛。该成静态还有一个副作用(好处)可以很容易被googl
- TDengine 做 Google Looker Studio 数据源
TDengine (老段)
tdengine大数据时序数据库数据库googlecloud
LookerStudio,作为Google旗下的一个功能强大的报表和商业智能工具,前身名为GoogleDataStudio。在2022年的GoogleCloudNext大会上,Google将其更名为LookerStudio。这个工具凭借其丰富的数据可视化选项和多样化的数据连接能力,为用户提供了便捷的数据报表生成体验。用户可以根据预设的模板轻松创建数据报表,满足各种数据分析需求。由于其简单易用的操作
- 【从零打造高通平台hexagon dsp profiling性能分析工具-3】
风入松林SZ
高通平台人工智能dsp开发
从零打造高通平台hexagondspprofiling性能分析工具-3前言高通hexagondsp现有性能分析工具有各种不足,要想打造合手的”如意金箍棒”只能自研,自己构建,不断扩展完善,后续在线roofline分析加进去,不受制与人。能开发工具的人,他对性能指标的理解程度是很深的,对算法性能优化,系统级优化会更有敏锐的观察判断力。自研不是闭门造车,要充分了解现有工具的工作原理、存在的问题,思考怎
- 编程语言中的常见Bug及解决方案
李游Leo
前端Python编程语言bugjavascriptphppythongo
在编程过程中,不同语言有其独特的特性和挑战,这也导致了各种常见Bug的出现。本文将总结几种主流编程语言中的常见Bug,包括JavaScript、Python、C/C++、Java和Go,并提供相应的解决方案和案例。一、JavaScript中小数相加精度不准确的Bug在JavaScript中,进行小数相加时,由于浮点数的精度问题,可能会导致结果不准确。例如:letadd1=0.1+0.2;conso
- 自然语言处理-词嵌入 (Word Embeddings)
纠结哥_Shrek
自然语言处理人工智能
词嵌入(WordEmbedding)是一种将单词或短语映射到高维向量空间的技术,使其能够以数学方式表示单词之间的关系。词嵌入能够捕捉语义信息,使得相似的词在向量空间中具有相近的表示。常见词嵌入方法基于矩阵分解的方法LatentSemanticAnalysis(LSA)LatentDirichletAllocation(LDA)非负矩阵分解(NMF)基于神经网络的方法Word2Vec(Google提
- Chromium132 编译指南 - Android 篇(一):编译前准备
守城小轩
浏览器开发chromedevtools浏览器开发指纹浏览器chrome
1.引言欢迎来到《Chromium132编译指南-Android篇》系列的第一部分。本系列指南将引导您逐步完成在Android平台上编译Chromium132版本的全过程。Chromium作为一款由Google主导开发的开源浏览器引擎,为众多现代浏览器提供了核心驱动力。而Android作为全球范围内应用最为广泛的移动操作系统,理解并掌握Chromium在该平台上的编译和优化技术,对于开发者而言至关
- Java 六边形架构 – BABAL
Java_ttcd
java架构servlet
一、概述在本教程中,我们将使用HexagonalArchitecture的原理,使用CLI使用者实现一个简单的JavaCMS应用程序。主要思想是尽可能保持业务逻辑分离,并使用SOLID原则中的“D”依赖反转原则来防止层之间的耦合。2.什么是六边形架构它是一种围绕业务逻辑设计软件应用程序架构并将其与其他层解耦的方法。解耦是通过使用端口和适配器来处理的,这就是为什么HexagonalArchitect
- 【Go语言圣经】第六节:方法
YGGP
Golanggolang
第六章:方法6.1方法声明在函数声明时,在其名字之前放上一个变量,这就是声明了变量对应类型的一个方法,相当于为这种类型定义了一个独占的方法。下例为Point类型声明了计算两个点之间距离的方法:packagemainimport"math"typePointstruct{X,Yfloat64}func(pPoint)Distance(qPoint)float64{returnmath.Hypot(q
- 基于麻雀搜索算法SSA求解最优目标
pytorchCode
人工智能python算法Matlab
基于麻雀搜索算法SSA求解最优目标麻雀搜索算法(SparrowSearchAlgorithm,SSA)是一种启发式优化算法,灵感来自于麻雀的群体行为。该算法模拟了麻雀在寻找食物时的搜索过程,通过合作和竞争来找到最佳解决方案。在本文中,我们将介绍如何使用SSA算法来求解最优目标,并提供相应的MATLAB源代码。首先,我们需要定义问题的目标函数。假设我们要求解的目标是最小化一个连续的优化问题。那么,我
- Django:ORM,mysql,django中多数据库操作
叫我DPT
mysql数据库pythondjango
目录读写分离1.构造表结构2.对数据库数据的读取操作简单版基于router的改进版按app划分1.构造表结构2.对数据库数据的读取操作简单版基于router的改进版单app中的分库操作1.构造表结构2.对数据库数据的读写操作简单版基于router的改进版最后总结一下router读写分离读写分离是让数据库的读写操作被分配到不同的数据库服务器上,从而提高可用性。这种分库方式是,要各数据库的表结构要一致
- C语言小练习-打印字母倒三角
don't_be_bald
C语言练习c语言算法数据结构
编写一个程序,在用户输入某个大写字母后,产生一个金字塔图案。#includeintmain(intargc,char*argv[]){charch;loop:printf("请输入大写字母!\n");scanf("%c",&ch);getchar();if(ch'Z'){gotoloop;}intlen=ch-'A'+1;inti,j;for(i=1;i=0;j--){printf("%c",'A
- 【Python TensorFlow】入门到精通
极客代码
玩转Pythonpythontensorflow开发语言人工智能深度学习
TensorFlow是一个开源的机器学习框架,由Google开发,广泛应用于机器学习和深度学习领域。本篇将详细介绍TensorFlow的基础知识,并通过一系列示例来帮助读者从入门到精通TensorFlow的使用。1.TensorFlow简介1.1什么是TensorFlow?TensorFlow是一个开源的软件库,主要用于数值计算,特别是在机器学习和深度学习领域。它提供了一个灵活的架构来定义复杂的数
- java 监控车辆位置_基于Spring Boot的实时运行车辆位置模拟和监控系统
天蓝草
java监控车辆位置
SpringCarLocationServiceThisisareal-timerunningvehiclelocationsimulationandmonitoringsystemusingJava,Spring,SpringBoot,SpringData,SpringCloud,NetflixOSS,Maven,JPA,Tomcat,RabbitMQ,MongoDB,MySQLandDocke
- LNMP(linux+nginx+mysql+php)服务器环境配置[转]
dianyun0789
运维php操作系统
一、简介Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engineX”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP代理服务器.Nginx是由俄罗斯人IgorSysoev为俄罗斯访问量第二的Rambler.ru站点开发的,它已经在该站点运行超过三年了。IgorSysoev在建立的项目时,使用基于BSD许可。在高并发连接的情况下,N
- 深度学习(DL/ML)学习路径
jackl的科研日常
深度学习学习人工智能
最近几年,尤其是自从2016年AlphaGo打败李世石事件后,人工智能技术受到了各行业极大关注。其中以机器学习技术中深度学习最受瞩目。主要原因是这些技术在科研领域和工业界的应用效果非常好,大幅提升了算法效率、降低了成本。因而市场对相关技术有了如此大的需求。我在思考传统行业与这些新兴技术结合并转型的过程中,亦系统的回顾了深度学习及其相关技术。本文正是我在学习过程中所作的总结。我将按照我所理解的学习路
- django
唱歌的人不掉泪
字写笔记djangopython
1、WEB与服务器1.WEB表示用户可以浏览的网页内容(HTML,CSS,JS)2.服务器能够给用户提供服务的机器1.硬件与软件硬件范畴:一台机器软件范畴:一个能够接收用户请求并给出响应的程序APACHETOMCATIISNginx2.作用存储web所需要的信息(HTML,图片,文件,…)能够处理用户的请求(request),并给出响应(response)执行服务器端程序:数据库操作3.WEB与服
- django 设置媒体url_(django)url路由配置及渲染方式
洪文律所
django设置媒体url
一,url路由path及转化器URL(uniformResoureLocator)统一资源定位符,是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址,互联网上的每个文件都有唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。设置好url,用户才能访问1,URL的格式:解释:schema://host[:port#]/path/.../[?query
- ubuntu18.04无法上网的解决办法
张歆伊�️
ubuntulinux运维
解决办法:使用nmclisudonmclinetworkingoffsudonmclinetworkingon然后重启网络sudoservicenetwork-managerrestart参考:Ubuntu连接不上网络问题的解决方法_菜鸡什么时候能变强的博客-CSDN博客_ubuntu连不上网
- Django下 render与redirect的区别
energy_百分百
djangodjangopythonhtmlrenderredircet
render返回页面内容(渲染变量到模板中),并且没有发送第二次请求redirect发送了第二次请求,是个跳转函数,一般跳转到外部网站,而且会返回302的状态码此外:render参数一般为模板html文件redirect参数一般为URL地址
- Django实现url跳转(重定向)
回雪37
DjangoDjangourl跳转重定向
编辑urls.py文件如下:fromdjango.urlsimportpath,includefromdjango.views.genericimportRedirectViewurlpatterns=[path('polls/',include('polls.urls')),path('',RedirectView.as_view(url='polls/')),]即表示将xxx.com跳转到xx
- 快速学习安装使用etcd
蓝胖子不是胖子
学习etcd数据库
1.什么是etcd?etcd是一个分布式键值存储系统,主要用于分布式系统的配置管理和服务发现。它提供了可靠的数据存储,etcd可以用来构建高可用的分布式键值数据库,根据官网介绍并且支持分布式锁、Leader选举等功能,通常被用作微服务架构中的注册中心。在目前go的大部分组件还有框架中都被采用为注册中心组件相当于zookper和redis2.安装etcd2.1.在本地安装etcd2.1.1.Linu
- golang语言在使用httplib包中遇到的关于自建证书的问题及解决方案
dg1011
golang服务器
1.前言创建自建证书私钥生成:opensslgenrsa-des3-outserver.key2048opensslrsa-inserver.key-outserver.keyCA生成:opensslreq-new-x509-keyserver.key-outca.crt-days3650csr生成:opensslreq-new-keyserver.key-outserver.csr证书生成:op
- java web + mysql 实现图书管理系统
鱼弦
【练习两年半】程序基础【HOT】技术热谈mysql数据库
鱼弦:CSDN内容合伙人、CSDN新星导师、51CTO(Top红人+专家博主)、github开源爱好者(go-zero源码二次开发、游戏后端架构https://github.com/Peakchen)要使用JavaWeb和MySQL实现图书管理系统,你可以按照以下步骤进行操作:数据库设计:创建一个MySQL数据库,并命名为图书管理系统。设计数据库表,例如:图书表(Book)、用户表(User)等。
- 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独立出来,数据持