- Ceph集群部署步骤
心灵Haven
Cephcephlinuxcentos
博文参考:https://baijiahao.baidu.com/s?id=1739195406542186137&wfr=spider&for=pc零、centos7配置中文语言环境1.查看系统是否安装了中文安装包locale-a|grep"zh_CN"没有输出,说明没有安装,输入下面的命令安装:yumgroupinstall"fonts"-y2.系统切换为中文vi/etc/locale.con
- 理解国际数据加密算法
文or野
密码学
1.基本概念•对称加密:加密和解密用同一把密钥,类似用同一把钥匙锁门和开门。•数据分块:IDEA将数据切成64位(8字节)的块,每次加密一个块。•密钥长度:使用128位(16字节)的密钥,比当时主流的DES算法(56位密钥)更安全。2.加密过程(像“多层搅拌”)IDEA通过8轮“搅拌”(每轮用不同的子密钥)混淆数据,最后再加一轮输出变换。以下是简化步骤:步骤1:拆分数据块•将64位数据块拆成4个1
- c语言贪吃蛇
꧁兰百犁迦꧂
c语言开发语言游戏
目录源码展示一、地图的绘制二、打印蛇三、打印食物四、移动蛇五、判断蛇死亡(吃到自己或者碰到墙)源码展示#include#include#include#include#include#defineSNAKE_HEAD●//蛇头#defineSNAKE_BODY○//蛇身#defineinitSIZE3//初始化蛇长#defineMAP_HEAD30//初始化地图高#defineMAP_WIDETH
- SpringBoot项目部署到外部Tomcat的相关配置
长春小霸王
javatomcatspringbootjava
在开发阶段我们推荐使用内嵌的tomcat进行开发,因为这样会方便很多,但是到生成环境中,需要将项目部署到外部Tomcat中运行,此时需要一些额外的配置:1.pom.xml调整1.1打包方式修改jar变更为war1.2将spring-boot-starter-tomcat的范围设置为providedscope设置为provided,将springboot的内置Tomcat在打包时排除org.spri
- 学习 Python 爬虫的第一天
这个名字八个字儿
网络爬虫python
爬虫基础(上)网络爬虫URL总结URL知识点服务器HTTP简介HTTPHTTPS请求和响应步骤请求响应状态码实例爬虫注意事项网络爬虫网络爬虫英文是WebCrawler,网络爬虫是按照一定规则自动抓取网页信息的程序。网络爬虫也可以叫做网络蜘蛛(WebSpider)。网络爬虫就是自动化从网页上获取信息、提取信息和保存信息的过程。URL日常我们访问的每个网站都是通过链接打开的。这里的链接也叫做URL。U
- java 去除List集合中实体类、属性的重复
x1321362731
javaList去重实体类的属性java集合去重
1.//实体类中重写equals与hashCode方法packagetest;publicclassStudent{privateStringname;privateStringage;privateStringsex;//......省略getset方法@Overridepublicbooleanequals(Objectobj){Students=(Student)obj;returnname
- 新手小白 react-useEffect 使用场景
阿丽塔~
react.js前端前端框架
useEffect是React中的一个非常重要的Hook,用于处理组件的副作用(sideeffects)。它通常在以下几种场景中使用:1.数据获取当组件加载时,需要从外部API获取数据,或者从本地存储中读取数据。示例:useEffect(()=>{fetch('https://api.example.com/data').then(response=>response.json()).then(d
- 【装饰器】【python】【@wraps详解】装饰器核心问题:元数据丢失解决,以及原理
患得患失949
面试考题专栏(前后端)python知识点复习python开发语言
Python装饰器中@wraps详解一、装饰器核心问题:元数据丢失(一)元数据的重要性每个Python函数都自带元数据属性,如:__name__:函数名称__doc__:文档字符串__module__:所属模块__annotations__:参数类型注解这些元数据是代码自描述性的核心,对调试、文档生成和IDE智能提示至关重要。(二)问题复现实验defsimple_decorator(func):d
- Postman:完整指南
学术Fun
postmanjava测试工具
Postman:完整指南PostmanAPI测试用于手动和自动测试。使用Newman、Jenkins或任何其他CI工具实现自动化课程英文名:PostmanTheCompleteGuide-RESTAPITestin此视频教程共5.5小时,中英双语字幕,画质清晰无水印,源码附件全下载地址百度网盘地址:https://pan.baidu.com/s/1ivLIGKt_3R0wncmCswMTRg?pw
- kubectl 命令参数详解与示例
demonlg0112
DevOps技术分享云原生kubernetes
kubectl命令参数详解与示例kubectl是Kubernetes的命令行工具,用于与Kubernetes集群交互。下面我将详细介绍kubectl的主要命令参数,并提供相应的使用示例。一、基础命令1.kubectlget-获取资源信息常用参数:-n,--namespace:指定命名空间-o,--output:输出格式(json|yaml|wide|name|custom-columns=…)-w
- 在 Flutter 开发中如何选择状态管理:Provider 和 GetX 比较
面壁思过程
flutter开发flutter状态管理
在Flutter开发中,状态管理是一个至关重要的部分。正确的状态管理方案能够提高应用的可维护性和可扩展性。在众多状态管理方案中,Provider和GetX是两种非常流行的选择。本文将对这两者进行比较,并提供代码示例,以帮助开发者选择适合的状态管理方案。一、Provider概述Provider是Flutter官方推荐的状态管理库,它基于InheritedWidget构建,提供了一种简单而有效的状态管
- SpringBoot使用Websocket技术实现聊天功能--后端部分(三)
oct1025
Ideawebsocketspringboot后端
所需依赖:javax.websocketjavax.websocket-api1.1providedorg.springframework.bootspring-boot-starter-freemarkerorg.springframework.bootspring-boot-starter-websocket-->org.apache.tomcat.embed-->tomcat-embed-w
- 测试用例学习
柚子小西学编程
功能测试测试用例学习
测试用例学习分享设计测试用例的方法场景法通过流程考虑等价类划分边界值考虑非功能测试场景例如没网弱网4gwife兼容性抓包看接口返回例如密码验证码等是否加密测数据校验看数据库是否真正的落库还可以考虑UI设计方面热冷启动权限根据实际业务设计特殊用例题目:测试微信1对1发红包学习路径:https://www.bilibili.com/video/BV1b54y1m7qM?from=search&seid
- IDEA/DataGrip 开发者的必备插件 - PawSQL for Jetbrains, 开发人员的SQL优化工具
PawSQL,在线SQL优化工具
PawSQLPawSQL插件SQL优化sql性能优化数据库pawsql
PawSQLforJetbrains简介PawSQLforJetbrains(PawSQLClient)和PawSQLforVSCode一样,它将PawSQL引擎的智能SQL优化能力无缝集成到您的开发环境中,支持智能索引推荐、查询重写和自动化性能验证。通过与PawSQLCloud或企业私域部署的PawSQL优化平台配合使用,让开发者在在自己的IDE中完成SQL性能优化。在IDEA/DataGrip
- 【Docker系列八】使用 Docker run 命令部署 Nginx
Kwan的解忧杂货铺@新空间代码工作室
s4Docker系列dockernginx容器
欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结java核心技术,jvm,并发编程redis,kafka,Spring,微服务等常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,
- MATLAB的APP Designer个人看法
TifLil
appdesignermatlab
最近再用matlab的GUIDE的时候,经常提醒,将现有的GUI移植为app文件,本着好奇和求知的态度,用了下appdesigner,在此,分享使用的心得和体会。优点:1.界面比GUIDE的界面好用不知道多少倍!!!!2.GUI中,删掉的控件,对应的回调函数和创建函数还会保留再m文件中,导致越修改,m文件越冗余。而在app中,删掉控件后,对应的代码也会被删除,代码简洁。3.app修改控件的属性更加
- 运动仿真——phased.Platform
TifLil
phasedArray工具箱MATLAB知识点matlab
在雷达仿真过程中,运动仿真的必要性,以及运动仿真可以实现哪些功能,在matlab对应的userguide中已经讲的很清楚了,这里不再赘述。本文主要介绍phased.Platform的一些“坑”,和典型的用法。第一坑:系统对象机制系统对象(systemobject)在调用的时候,返回当前的状态值,并计算下一状态值存储在系统对象中,直到调用release函数复位。假如仿真的时间步长为T,第一次调用系统
- uniapp中APP上传文件
@听雨声
uni-app
uniapp提供了uni.chooseImage(选择图片),uni.chooseVideo(选择视频)这两个api,但是对于打包成APP的话就没有上传文件的api了。因此我采用了plus.android中的方式来打开手机的文件管理从而上传文件。下面是我封装的APP端选择上传图片,视频,文件的一个上传组件。{{item.name}}×上传{{getUploadTypeText()}}-->{{ti
- 手把手教学51单片机——LED灯篇
Zly714
51单片机51单片机嵌入式硬件单片机笔记经验分享
准备工作本教程51单片机开发应用程序使用Keil5和stc-isp编译烧录,开发板型号使用STC89C52RC(购物APP搜索单片机开发板可找到),没有下载应用程序的我已经打包好可以通过下方链接进行下载,安装教程可以参考[1-2]开发工具介绍及软件安装_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1Mb411e7re/?spm_id_from=333
- Prompt Engineering(提示工程)
遥望盼望
NLPpromptpython人工智能
PromptEngineering(提示工程)1、提示工程2、分隔符3、翻译案例4、词库扩展5、Langchain提示模板PromptTemplate(用封装库)6、langchain结构化输出(用封装库)7、openai结构化输出1、提示工程https://prompt-engineering.xiniushu.com/guides/guidelineshttps://www.prompting
- MCP协议:AI与外部资源交互的标准化革命
大囚长
大模型人工智能
MCP协议解析:AI与外部资源交互的标准化革命1.MCP的核心定义与架构MCP(ModelContextProtocol,模型上下文协议)是由Anthropic开发的开放标准,旨在通过统一协议解决AI模型与外部资源(如数据库、API、区块链等)的交互难题。其核心架构分为三个部分:MCP主机:如ClaudeDesktop或IDE,作为需要访问数据的应用程序。MCP客户端:与MCP服务器一对一连接的协
- IDEA报错failed to resolve org.junit.vintage:junit-vintage-engine:5.7.0
讓丄帝愛伱
环境后端技术junit
原因:是JUnit使用了junit-vintage引擎junit-vintage是Junit4中使用的引擎,如果项目使用了Junit5的话,需要在spring-boot-starter-test中将JUnit4的引擎排除org.springframework.bootspring-boot-starter-testtestorg.junit.vintagejunit-vintage-enginej
- html 运行css实现3D正方体旋转制作
金融小白数据分析之路
htmlcss3csshtml
正方体旋转制作1.animation与keyframes配合使用keyframes可以控制动画序列的中间步骤。fromto的变化使用,相当于0%/from和100%/to,从什么变化到什么,加入中间的的过程的话可以设置0%25%100%等等。@keyframesslidein{from{transform:translateX(0%);}to{transform:translateX(100%);
- 【读论文02】时空预测-MFA-MRSTGRN
123ss09
人工智能
【读论文02】-Multi-relationspatiotemporalgraphresidualnetworkmodelwithmulti-levelfeatureattention:anovelapproachforlandslidedisplacementprediction第一遍先通读论文,先记下来,如有错误,后期再修改Abstract存在问题:虽然现有的预测方法大多侧重于对单个监测点的时
- Java & SQL 连接(初级)
KuunNNn
javasqloracle
实训Day3记实实训第三天,今天是头脑风暴的第二天,课程将SQL与Java(idea)代码结合,这是一项具有挑战性的代码课程。课程将两个应用结合起来,展现了Java代码的跨平台性,展现了Java语言的封装性、继承性、多态性的三大特性。接下来是具体内容展示:封装性、继承性、多态性封装性封装性是指将对象的属性和行为(方法)包装在一个类中,隐藏对象内部的实现细节,只暴露必要的接口给外部使用。◎-priv
- Java并发编程从入门到实战:同步、异步、多线程核心原理全解析
猿享天开
开发语言java
《Java并发编程从入门到实战:同步、异步、多线程核心原理全解析》一、多线程基础认知(从单核到多核的进化)1.1什么是线程?线程是程序执行的最小单元,一个进程可以包含多个线程。例如浏览器同时下载文件(后台线程)和渲染页面(UI线程)。1.2创建线程的三种方式//方式1:继承Thread类classMyThreadextendsThread{@Overridepublicvoidrun(){Syst
- PyCharm 使用指南:从安装到高效开发
KL_lililli
pycharmidepython
作为JetBrains出品的一款专业PythonIDE,PyCharm因其强大的代码补全、调试、重构等功能而受到广大Python开发者的喜爱。本文将为您详细介绍PyCharm的基本使用方法,从安装配置、项目创建到常用功能的使用,助力您提高开发效率。1.PyCharm的安装与配置1.1下载与安装下载地址:请访问JetBrains官方网站下载适合您操作系统(Windows、macOS或Linux)的安
- open-spider开源爬虫工具:抖音数据采集_抖音直播爬虫采集
2401_84010165
程序员爬虫
静态内容抓取是指从网页中直接提取信息的过程。这通常涉及到以下几个步骤:使用requests库发送HTTP请求,获取网页的原始数据。例如,你可以使用requests.get(url)来获取抖音首页的HTML内容。利用BeautifulSoup库对获取到的HTML进行解析。BeautifulSoup提供了丰富的方法来处理和提取HTML文档中的数据。例如,你可以使用find()或find_all()方法
- 开源图生视频模型技术全景解析
Liudef06
开源音视频
一、核心架构与技术演进(一)模型基础框架多模态融合架构腾讯混元模型采用统一的全注意力机制,集成3D变分自编码器(VAE)实现图像到视频的时空特征编码。U-ViT3.0架构引入分层式时空注意力模块,支持4096×2160超清视频生成。阿里Wan2.1通过图像-视频联合训练策略,构建双塔结构分别处理静态特征提取与动态序列生成。实现中英文文本与视频内容同步生成。动态生成技术:Step-Video-TI2
- elementplus实现左侧菜单栏收缩与展开
南七小僧
网站开发服务器开发AI技术产品经理vue.jsjavascript前端
1.页面结构Home.vue下包含aside.vue和menu.vue2.TAside.vueel-menu左侧菜单栏显示注意:要使用收缩与展开,el-aside必须设置width=“collapse”,否则收缩展开会出现收缩后,el-aside宽度不变窄需要使用动态改变展开收缩值:collapse=“isCollapse”@open="handleOpen"展开后改变isCollapse的值(@
- 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独立出来,数据持