- C语言——字符函数和字符串函数
初遇
c语言开发语言
前言:在编程的过程中,我们经常要处理字符和字符串,为了方便操作字符和字符串,C语言标准库中提供了一系列库函数,接下来我们就学习一下这些函数。1.字符分类函数C语言中有⼀系列的函数是专门做字符分类的,也就是⼀个字符是属于什么类型的字符的。这些函数的使用都需要包含⼀个头文件是ctype.h这些函数的使用方法非常类似,我们就讲解⼀个函数的事情,其他的非常类似:1intislower(intc);islo
- 【Python】工作流:Jupyter Notebook、Airflow
浪子西科
Pythonpythonjupyter开发语言
工作流:JupyterNotebook、Airflow1.JupyterNotebook1.1安装可以使用pip或者conda进行安装。使用pip安装:pipinstallnotebook使用conda安装:condainstall-cconda-forgenotebook1.2基本概念Notebook文件:以.ipynb为扩展名,它是一个包含代码、文本(支持Markdown格式)、图像和计算结果
- Linux常见命令汇总(2025最新版)
浪子西科
Linuxlinuxchrome运维
Linux常见命令汇总(2025最新版)文章目录Linux常见命令汇总(2025最新版)**一、文件与目录操作****二、文件权限与属性****三、系统信息与管理****四、网络相关****五、压缩与解压****六、用户与权限****七、软件包管理****八、快捷键与技巧****九、文本处理与编辑****十、系统监控与调试****十一、计划任务与后台管理****十二、磁盘与分区管理****十三、高
- 的卢导表:批量导入Excel文件到MySQL数据库的自动化工具
如意机反光镜裸
数据库excelmysqlexcel自动化
的卢导表:批量导入Excel文件到MySQL数据库的自动化工具简介的卢导表是一个可以批量导入excel到mysql数据库的自动化工具。支持将xls/xlsx/xlsm/xlsb/csv/txt/xml格式的Excel文件导入到mysql/oracle/sqlserver/postgresql等多种原生及国产数据库。自动化是其最大的特点,因为它可以根据excel自动生成表信息与数据库建立联系,最终将
- Latex学习_MARKDOWN(持续更新)
崧小果
科研小白成长路学习
overleafIEEE期刊模板:https://template-selector.ieee.org/secure/templateSelector/publicationTypeIEEE会议模板:https://www.ieee.org/conferences/publishing/templates.html图片、表格公式$formular$\begin{equation}formular\
- Node.js快速总结
一蓑烟雨,一任平生
jsjavascriptnode.js
理解Node.js●是一个基于ChromeV8引擎的JavaScript运行时。●非阻塞、事件驱动、异步I/O,适合高并发场景。✅核心概念●事件循环(EventLoop):Node.js的异步机制。●模块系统:使用require()引入模块,module.exports导出模块。●文件系统(fs):处理文件读写。●HTTP模块:构建Web服务器。创建HTTP服务器consthttp=require
- Linux软硬链接和动静态库(带示例)
浪九天
操作系統linux运维服务器
目录软硬链接1.硬链接(HardLink)2.软链接(SymbolicLink,也称为符号链接)动静态库1.静态库(StaticLibrary)2.动态库(SharedLibrary)在Linux系统中,软硬链接和动静态库是非常重要的概念,下面将分别对它们进行详细介绍。软硬链接1.硬链接(HardLink)原理:硬链接是文件的另一个访问入口,它和原始文件指向相同的inode(索引节点)。inode
- Nginx系列03(基本使用及详细步骤)
浪九天
Nginx系列nginx运维开发
目录Linux系统(以Ubuntu为例,其他基于systemd的Linux发行版类似)Windows系统macOS系统Docker环境以下是关于Nginx基本使用的详细步骤以及完整代码示例,涵盖了启动、停止、重新加载配置、查看状态、查看日志和测试配置文件语法等操作,在不同操作系统下的实现方式:Linux系统(以Ubuntu为例,其他基于systemd的Linux发行版类似)启动服务#使用syste
- Linux入门的基础知识点汇总(带示例)
浪九天
操作系統linuxubuntu
目录文件和目录操作文本处理命令系统管理命令用户和权限管理权限管理软件安装与管理网络配置Linux是一种广泛使用的开源操作系统,对于初学者而言,掌握一些基础知识点十分关键。以下为你详细介绍:文件和目录操作ls:用于列出目录内容。-a选项可显示所有文件和目录,包含隐藏文件,比如ls-a就能看到当前目录下以.开头的隐藏文件。-l选项是以长格式显示详细信息,像文件权限、所有者、大小、修改时间等,ls-l会
- HDFS是如何存储和管理大数据
python资深爱好者
大数据hdfshadoop
HDFS(HadoopDistributedFileSystem,Hadoop分布式文件系统)是专为大数据处理而设计的分布式文件系统,具有高吞吐量、高容错性等特点,适用于大规模数据存储和管理。以下是HDFS存储和管理大数据的详细机制:一、HDFS架构HDFS采用主从架构,主要包括以下组件:NameNode(主节点):作为集群的“大脑”,NameNode负责管理文件系统的命名空间,维护文件和目录的元
- API返回的数据结构包含哪些字段?
小爬虫程序猿
数据结构java前端
淘宝商品详情API返回的数据结构较为复杂,具体字段会根据API的版本和请求参数有所不同。以下是基于最新搜索结果的API返回值字段说明:基础字段num_iid:商品的唯一标识ID。title:商品标题,用于描述商品名称或特点。price:商品的当前销售价格。final_price:实际成交价,可能与price不同。desc:商品详细描述,通常包含HTML格式的文本。item_imgs:商品图片链接,
- Node.js 中 fs 模块的高级用法
浪九天
node.js前端node.jsjavascript
目录1.流式文件处理示例:大文件复制2.文件监控示例:使用fs.watch监控文件变化3.异步递归操作示例:异步递归遍历目录4.文件权限管理示例:修改文件权限5.原子操作示例:原子重命名文件在Node.js里,fs(文件系统)模块提供了一系列用于与文件系统进行交互的方法。除了常见的读写文件操作,还有一些高级用法,以下为你详细介绍:1.流式文件处理在处理大文件时,一次性将整个文件加载到内存中可能会导
- JSP + TAG 实现分页(Tomcat 9)
xiaoyustudiowww
javajava-eetomcat前端jsp
=========java文件packageorg.rain.tag;importjava.io.IOException;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.jsp.JspException;importjavax.servlet.jsp.PageContext;importjavax.servlet.js
- nodejs npm run build 打包压缩zip文件
xiaoxiao_0721
vue
步骤1:安装npminstallarchiver-D步骤2:根目录下新建zip.js,内容如下constfs=require('fs')constarchiver=require('archiver')//创建文件输出流letoutput=fs.createWriteStream(__dirname+'/dist.zip')letarchive=archiver(
- 最全redis缓存核心知点(原理+图解)
敲代码的胖虎
数据库redis队列数据库分布式
redis缓存核心知点一、主流应用架构二、缓存知识考点三、多路I/O复用模型四、常用的数据类型五、消息队列六、Redis的持久化6.1BGSAVE原理6.2RBD持久化的缺点6.3持久化方式之AOF6.4AOF文件重写6.5Redis数据的恢复6.7RDB和AOF的优缺点6.8RDB-AOF混合持久化方式(新版本的默认备份方式)七、Pipeline及主从同步7.1Pipeline的简介7.2red
- Chrony 无法同步时间的排查过程
中年如酒
Linuxlinux
文章目录1.问题描述2.检查chrony.conf配置3.检查Chronyd进程状态4.检查Chrony是否在跟踪时间5.检查Chrony是否获取了NTP源6.检查防火墙7.检查网络连接性8.根因9.解决方案10.验证1.问题描述在一台Linux服务器上配置了Chrony作为NTP客户端,配置文件/etc/chrony.conf指定了两个NTP服务器:2.检查chrony.conf配置cat/et
- 笔记工具--MD-Markdown的语法技巧
忆源
笔记
MD格式,全称为Markdown格式,是一种轻量级标记语言文件,主要用于创建格式化文本。以下是对MD格式的详细解释:一、定义与特点定义:MD文件是一种纯文本格式的文件,使用简单的符号或语法来标记标题、列表、链接、图片等元素,从而实现对文本的格式化。特点:易读易写:MD文件的语法简洁明了,使得作者能够快速上手并编写出结构清晰的文档。兼容性强:MD文件可以在不同的平台和设备上打开和编辑,如文本编辑器、
- 前端解决跨域问题的三种方法
web13638179351
前端html面试前端nginx服务器
一、cors后端程序员提供的解决跨域访问的方法,和前端程序员没有关系,定义后端程序代码让所有的前端程序都可以访问后端的数据,后端程序告诉服务器这个后端程序的数据任何前端请求都可以访问,服务器就不再执行跨域访问拦截数据的操作。因为博主目前主攻前端对后端并不熟悉,因此这种方法暂不详细解答。二、服务器代理proxy2.1步骤(1)修改Nginx或者Apache服务器文件,目前博主使用的是Nginx代理(
- 【python随手记】——读取文本文件内容转换为json格式
番茄番茄君
pythonjsonwindows
文章目录前言一、TXT文件转换为JSON数组1.txt文件内容2.python代码3.输出结果二、TXT文件转换为JSON对象1.txt文件2.python代码3.输出结果前言场景:用于读取包含空格分隔数据的TXT文件,并将其转换为结构化JSON文件一、TXT文件转换为JSON数组1.txt文件内容地点A116.40528539.90498943.5地标B121.47370131.2304164.
- MySQL知识点思维导图
Java小白白又白
各种技术思维导图合集mysql
MySQL知识点思维导图,文章里是PNG格式,可能不是很清晰,文末附上PDF和xmind工程文件链接,需要的小伙伴自取,都只需要1个币(设置成0个币还需要啥下载码)。如有错误的地方欢迎大家批评指正。MySQL知识点思维导图PDFMySQL知识点思维导图PDF-MySQL文档类资源-CSDN下载MySQL知识点思维导图PDF更多下载资源、学习资料请访问CSDN下载频道.https://downloa
- JSON的序列化和反序列化
-黑大帅
jsonlinux数据库
一、什么是JSONJSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,因其简单、易读、易写而被广泛采用。它通过键值对和数组的方式表示数据,能够高效地在前后端之间传输数据,并且大多数编程语言都支持JSON格式。JSON主要用于前后端数据交换、配置文件存储和API设计等场景,使得数据处理变得直观和一致。二、序列化序列化就是将对象转换为JSON格式的字符串。在pyth
- 让我魂牵梦绕的工具
工具类
在工作生活中遇到的一些超好用的工具分享!因为我使用的windows所以基本上都是windows上的软件ssh连接工具WindTermXshellXTerminalFinalShell截图工具PixPinSnipaste图片查看Honeyview3D建模freecadBlender局域网传输CuteHTTPFileServer飞秋桌面小工具TrafficMonitor显示网速CPU内存网络检测adv
- VSCode 使用import导入js/vue等时添加智能提示,并可跳转到定义
zsd_666
Web前端javascriptvscodevue.js
VSCode使用import导入js/vue等时添加智能提示,并可跳转到定义如://按住ctrl+鼠标点击getDataList,可以跳转到homeApi.js中的定义位置import{getDataList}from'@/api/homeApi.js'安装VuePeek插件在项目根目录下新建jsconfig.json文件{"compilerOptions":{"baseUrl":"./","pa
- Selenium入门,最近看到的都师一些小白想学测试,今天就分享入门吧~
程序员-小枫
selenium自动化测试Pythonseleniumpython软件测试
Selenium入门(自动右键保存图片到本机上)前言入职测开一段时间,基本就是熟悉需求,熟悉业务,熟悉这熟悉那,再跟着需求做各种各样的测试和联调,趁着业余时间,也是学习了一下Selenium,在之前Selenium是我作为爬虫的工具,不过之后就用来做写一些自动化测试脚本啦~~(这里使用Python中的Selenium库进行Coding~~1、什么是SeleniumSelenium是一个用于Web应
- Yolov8分割训练自己的数据集记录
小俊俊的博客
yolov8分割训练自己的数据集
Yolov8分割训练自己的数据集记录第一章、标签制作一、安装labelmelabelme安装很简单,直接在终端输入:pipinstalllabelme启用labelme在终端输入:labelme接下来就是标注数据了。实例分割数据标注选择“创建多边形”标注就行。二、json转txt使用labelme标注的label数据格式为json格式,但是yolov8分割使用的依旧是txt格式。需要进行转换。转换
- Qt十六进制QTextEdit
我不是程序员~~~~
Qt实战qt
头文件:#ifndefCHEXTEXTEDIT_H#defineCHEXTEXTEDIT_H#include
- Vscode无法加载文件,因为在此系统上禁止运行脚本
从味书
vscodeide编辑器
1.在vscode终端执行get-ExecutionPolicy如果返回是Restricted,说明是禁止状态。2.在vscode终端执行set-ExecutionPolicyRemoteSigned爆红说明没有设置成功3.在vscode终端执行Set-ExecutionPolicy-ScopeCurrentUserRemoteSigned然后成功后你再在终端使用get-ExecutionPoli
- 二叉树的所有路径
happy19991001
#树二叉树c++算法数据结构
二叉树的所有路径问题:思路:1.分治递归:若要得到一颗二叉树的所有路径,需先将根节点加入路径中,然后将左右子树的所有路径与根节点组合。若为根节点,将其加入路径,然后对左右子树递归得到以它们为根的路径。递归结束条件为当前处理的节点为叶子节点,即左右子树均为空。递归结束前将当前路径记录。路径用string表示,在加入根节点时使用C++11string头文件的to_string函数将数值转化为字符串。在
- Docker存储
Hadoop_Liang
dockerdocker容器运维1024程序员节
前提条件拥有docker环境,可参考:Docker的安装掌握容器的使用,可参考:Docker容器的使用掌握镜像的使用,可参考:Docker镜像的使用Docker存储的问题容器是隔离环境,容器内程序的文件、配置、运行时产生的数据都存储在容器内部,思考如下问题:如果要升级MySQL版本,需要销毁旧容器,那么数据岂不是跟着被销毁了?MySQL、Nginx容器运行后,如果要修改其中的某些配置该怎么办?需要
- Git最佳实践指南(Windows/Linux双系统详解)
i建模
前端开发gitwindowslinuxweb
Git最佳实践指南:从入门到熟练(Windows/Linux双系统详解)一、环境搭建与基础配置(适用Windows/Linux)1.1Git安装与验证#Windows系统安装(推荐Chocolatey包管理)#直接下载git二进制文件安装包更方便chocoinstallgit#Linux系统安装(Debian系)sudoapt-getupdate&&sudoapt-getinstallgit#验证
- 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独立出来,数据持