- SSL证书申请终极指南
Gworg
sslhttps网络协议
SSL验证是确认网站或服务器提供的SSL证书的真实性和有效性的过程。SSL证书验证是确认网站或服务器提供的SSL证书的真实性和有效性的过程。SSL证书是用于在客户端(例如Web浏览器)和服务器之间建立安全连接的数字证书。它们对于确保通过互联网传输的数据的机密性、完整性和真实性至关重要。在SSL证书验证过程中,客户端会检查证书的数字签名,以确保该证书是由受信任的证书颁发机构(CA)颁发的。客户端还会
- JavaScript高级学习:ES6新特性07——数组在ES6中的使用
北凉冬
JavaScriptjavascriptes6
提示:本文为JavaScript栏目:JavaScript高级系列——ES6新特性章节第七章JavaScript高级学习:ES6新特性07——数组在ES6中的使用前言数组在ES6中的使用求数组的最大值ES5的方式求数组最大值ES6的方式使用数组扩展运算符求最大值ES6扩展运算符的使用扩展运算符传参扩展运算符操作伪数组复制数组传统复制数组ES6中使用扩展运算符复制数组ES5中复制数组合并数组ES6方
- centos7.9安装mysql8.4详细步骤【亲测有效】
张3蜂
linux软件安装部署数据库adb
目录1.选择合适的mysql版本2.解压mysql压缩包至/usr/local/目录下3.新建数据目录、用户名和用户组4.修改环境变量并重启环境变量5.配置初始化使用命令6.初始化Mysql数据库7.启动Mysql服务8.关闭Mysql服务(安装时不要做这一步)9.跳过密码验证并修改密码新密码登录本地mysql服务10.查看端口是否会被占用11.mysql8开机自启12.卸载mysql【我没有测试
- Element UI 中国省市区级联数据_provinceandcitydata 获取地区
2401_87288783
javascript前端开发语言
省市二级联动(不带“全部”选项): import { provinceAndCityData } from 'element-china-area-data' export default { data () { return { options: provinceAndCityData, selectedOptions: [
- C++:将字符数组rkpryyrag,每个字母转换为其前面第13个字母后输出,如果超过a则从z再继续接着数。例如:b前面第1个字母是a。a前面第3个字母是x。
程序员东min
c++开发语言算法
代码如下:#include#includeusingnamespacestd;intmain(){stringstr="rkpryyrag";for(inti=0;i='a'&&str[i]='a'&&str[i]<='z'):检查当前字符是否是小写字母,因为小写字母的ASCII值范围是'a'到'z'。if(str[i]-'a'<13):对于小写字母,计算该字母与'a'的差值,如果差值小于13,那
- 数据库的三级模式结构与两级映像
凭君语未可
数据库数据库oracle
三级模式结构与两级映像什么是数据库的三级模式结构?1.模式(ConceptualSchema,概念模式)定义特点作用示例2.外模式(ExternalSchema,外部模式)定义特点作用举例3.内模式(InternalSchema,内部模式)定义特点作用举例三级模式结构的关系和映射1.外模式与模式的映射外模式与模式的关系映射机制举例电商系统中的用户视图与模式权限控制:映射的意义2.模式与内模式的映射
- 【数据挖掘实战】 房价预测
机器学习司猫白
数据挖掘人工智能python机器学习
本次对kaggle中的入门级数据集,房价回归数据集进行数据挖掘,预测房屋价格。本人主页:机器学习司猫白机器学习专栏:机器学习实战PyTorch入门专栏:PyTorch入门深度学习实战:深度学习ok,话不多说,我们进入正题吧概述本次竞赛有79个解释变量(几乎)描述了爱荷华州艾姆斯住宅的各个方面,需要预测每套住宅的最终价格。数据集描述本次数据集已经上传,大家可以自行下载尝试文件说明train.csv-
- kaggle入门级竞赛Spaceship Titanic LIghtgbm+Optuna调参
机器学习司猫白
机器学习实战机器学习python集成学习scikit-learn
kaggle入门级竞赛SpaceshipTitanic简介数据介绍数据集描述数据字段描述train.csv-约三分之二(~8700)乘客的个人记录,用作培训数据。test.csv-剩余三分之一(~4300)乘客的个人记录,用作测试数据。您的任务是预测Transported该集合中乘客的价值。Sample_submission.csv-格式正确的提交文件。代码分类变量optuna算法简介简介欢迎来到
- 观察者模式 - 观察者模式的应用场景
w(゚Д゚)w吓洗宝宝了
C++从0到1观察者模式c++
引言观察者模式(ObserverPattern)是设计模式中行为型模式的一种,它定义了对象之间的一对多依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都会自动收到通知并更新。观察者模式广泛应用于事件处理系统、GUI框架、消息队列等场景中。本文将详细介绍观察者模式的概念、实现方式以及在C++中的应用场景。观察者模式的概念定义观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某
- 天梯赛 L3-009 长城 计算几何
样例过了就是过了
算法数据结构c++
一题目二思路这道题就是找凸点的个数,就是答案。可能有些人会说,那不就是大于左右两边就是凸点吗,只对了一半,如下图所示,B点也是算凸点,但是并没有大于左右两边。因此,我们判断凸点的依据,是看AB的斜率是否大于AC的斜率,如图所示,AB的斜率大于AC的斜率,所以是凸点。反之,不是。此外,我们用一个栈去维护凸点,就可以得到凸点的个数,也就是答案。三代码#include#include#defineint
- C语言二级 2025/1/20 周一
他在从中笑
Cc语言算法开发语言
20.关系表达式四、程序设计题1.请编写函数fun,其功能是:计算并输出3到n之间(含3和n)所有素数的平方根之和。例如,在主函数中从键盘给n输入100后,输出为:sum=148.874270。注意:要求n的值大于2但不大于100。部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。#include#includedoublefun(in
- 多级缓存 JVM进程缓存
Rverdoser
缓存jvm
在Java虚拟机(JVM)中,多级缓存通常指的是JVM内部的多层缓存机制,包括指令缓存、数据缓存等,这些缓存都是为了提高程序运行效率。在Java中,JVM的多级缓存是自动管理的,不需要程序员手动干预。但是,如果你想要监控或调试这些缓存的行为,可以使用一些JVM提供的工具和选项,如JMC(JavaMissionControl)、JVisualVM、JFR(JavaFlightRecorder)等。如
- Linux---LNMP动态网站平台
WillianmsLee
linuxnginx
1.部署LNMP环境:1.1–原理目前的网站一般都会有动态和静态数据,默认nginx仅可以处理静态数据,用户访问任何数据都是直接返回对应的文件,如果如果访问的是一个脚本的话,就会导致直接返回一个脚本给用户,而用户没有脚本解释器,也看不懂脚本源代码!因此需要整合LNMP(Linux、Nginx、MySQL、PHP)实现动态网站效果。1.2–一些介绍LNMP在CentOS系统中,源码安装Nginx,使
- Linux 时间同步服务
不想起昵称929
linux
时间同步:多主机协作工作时,各个主机的时间同步很重要,时间不一致会造成很多重要应用的故障,如:加密协议,日志,集群等,利用NTP(NetworkTimeProtocol)协议使网络中的各个计算机时间达到同步。目前NTP协议属于运维基础架构中必备的基本服务之一时间同步实现:ntp,chrony//关闭系统同步时间服务timedatectlstopchronyd.servicentp:将系统时钟和世界
- App安全漏洞测试教程
浴林涧
网络安全webapp安全性测试测试工具
资源放下面啦!记得关注❤️~后续持续分享更多资源https://pan.quark.cn/s/10da782988b7
- Neural Architecture Search (NAS) 原理和应用
weixin_58349913
python
NeuralArchitectureSearch(NAS)原理和应用NeuralArchitectureSearch(NAS)是一种自动化设计神经网络架构的技术。它通过搜索空间中的不同架构配置来找到最优或接近最优的神经网络结构,从而减少人工设计网络结构的工作量。NAS的目标是通过自动化的方式获得比手工设计更高效、准确的模型架构,特别适用于对网络架构要求较高的任务。1.NAS的基本原理NAS的核心思
- (01)搭建开发环境
RayTz
龙芯2K1000开发指南linux运维服务器
1.安装虚拟机软件VMwareWorkstationPro172.虚拟机安装ubuntu20.4系统3.安装VMtools工具4.安装vim编辑器sudoaptinstallvim4.安装SSH服务选择下载源为:http://mirrors.aliyun.com/ubuntu在线安装:sudoapt-getinstallopenssh-server配置环境:sudovim/etc/ssh/sshd
- TimedCache定期缓存
皆为定数
缓存
TimedCache此缓存没有容量限制,对象只有在过期后才会被移除,发现2种等价用法。建议使用第一种,比较常见,第一种封装了第二种的实现.用法一(推荐):publicstaticfinalTimedCache>timeCache=newTimedCacheplateNo=timeCache.get("plateNo");System.out.println(plateNo);if(Objects.
- echarts初始化时只显示100px的问题
撒库拉-琳琳
echartsjavascriptvue.js
初始化el-container时,需要选择项目才可进入el-main;但是就页面而已,相对应的路由已经进去了,el-main使用的是v-show进行的判断,后面改成v-if即可,下面补充一下二者的区别:v-show:根据条件显示DOM元素的指令,可以用来动态控制DOM元素的显示和隐藏。v-show后面跟的是判断条件,不管初始条件是什么,元素总是会被渲染;v-if:根据表达式值的真假来销毁或者重建一
- vue 给iframe设置src_vue项目中,iframe的src动态赋值
weixin_39961636
vue给iframe设置src
可以类似这样:/***动态创建iframe*@paramdom创建iframe的容器,即在dom中创建iframe。dom能够是div、span或者其它标签。*@paramsrciframe中打开的网页路径*@paramonloadiframe载入完后触发该事件。能够为空*@return返回创建的iframe对象*/createIframe(dom,src,onload){//在document中
- LNMP(动态网站)
weixin_34406061
运维php开发工具
LNMP(动态网站)nginx(静态网站)案例1:部署LNMP环境步骤一:安装软件yum-yinstallmariadbmariadb-serveryum-yinstallmariadb-develyum-yinstallphpphp-mysqlcdlnmp_softrpm-ivhphp-fpm-5.4.16-36.el7_1.x86_64.rpm启动服务nginxsystemctlstartph
- 局域网IP扫描工具:原理、应用与实战
邹晓航0号
本文还有配套的精品资源,点击获取简介:局域网IP扫描工具是网络管理的重要工具,可以帮助用户扫描并列出同一网络段内的所有活动设备的IP地址。本文将深入探讨该工具的工作原理、功能特点以及应用场景,包括快速准确地识别网络设备、故障排查、系统安全检查以及网络优化。此外,本文还将介绍一款开源的免费IP扫描工具——FreeIPScan,并总结如何通过正确使用这些工具来提高网络安全性、优化网络资源并及时发现和解
- [ Compose ] Detailed Explanation of State Remember
ByteFlys
androidKotlincomposejetpackkotlinadnroidrememberstate
文章目录WhatStateandRememberDoesRememberRememberScopeRememberwithKeyRememberAsSaveableRememberCustomTypeIntoBundleRememberCustomTypeIntoBundle:ParcelableRememberCustomTypeIntoBundle:ListSaverRememberCusto
- CMake string用法
小米人er
我的博客cmake
string(REPLACE"]""CLOSEBRACKET"PATCHED_LIST"${PATCHED_LIST}")是CMake里string命令的一种使用方式。下面来详细剖析这条命令:string:这是CMake里用于处理字符串的命令,能执行各类字符串操作。REPLACE:这是string命令的一个操作模式,其作用是把字符串里特定的子字符串替换成别的字符串。"]":代表要被替换掉的子字符串
- antd datepicker禁用日期设置为今天的前一天,禁用时间设置为当前时间点之前的时间
每一天,每一步
antdesign-reactjavascript前端开发语言
在使用AntDesign(antd)的DatePicker组件时,可以通过disabledDate和showTime的disabledHours,disabledMinutes,disabledSeconds属性来禁用特定的日期和时间。1.禁用今天的前一天及之前的日期:可以提供一个函数给disabledDate属性,该函数将接收一个current参数(一个moment.js对象),然后返回一个布尔
- 企业级网络架构
哦吼吼吼tian
目录三层交换机三层交换机使用过程:连接外网动态路由ospf协议,开放最短路径优先协议ospf区域区域ID骨干区域0ospf配置:传输层传输层的作用传输层两个重要的协议TCP的应用UDP应用ACL访问控制列表ACL的主要类型ACL规则三层交换机使用三层交换技术实现VLAN间通信三层交换=二层交换+三层转发三层交换机使用过程:1.添加VLAN(vlanbatch23)2.对应的接口添加相应的VLAN(
- vue使用window.open()跳转页面
scorpion_V
vueJavaScript前端javascriptvue.js
项目场景:提示:项目需要vue带参数跳转打开新页面、新窗口:例如:点击机巢监控按钮,在当前页面重新打开一个窗口到另一个页面(同时把参数全部带过去)window.open()的用法open()方法用于打开一个新的浏览器窗口或查找一个已命名的窗口。window.open(URL,name,specs,replace)specs可选。一个逗号分隔的项目列表。支持以下值:channelmode=yes|n
- JS经纬度正则验证
scorpion_V
前端
经纬度的校验(保留5位小数):需求:一个页面多个经纬度需要经验,然后采用此方法就可以一步到位啦~1.在util.js全局写经纬度的范围校验代码如下:constformValidation={//经度validatorLongitude:(rule,value,callback)=>{constreg=/^(\-|\+)?(((\d|[1-9]\d|1[0-7]\d|0{1,3})\.\d{0,15
- 【linux 时间同步】
星辰&与海
linux运维
文章目录1.使用NTP(NetworkTimeProtocol)2.使用Chrony3.使用timedatectl配置时间和时区4.手动设置时间5.检查时间同步状态6.总结.适用场景在Linux系统中,时间同步通常用于确保系统的时钟与标准时间源(如NTP服务器)保持一致。通过时间同步,可以避免系统时钟漂移导致的问题,特别是在分布式系统、日志记录和任务调度等场景中。以下是常见的Linux时间同步方法
- Linux主机时间同步
会飞的土拨鼠呀
Linux运维技巧linux服务器运维
写在前面处于内网的Linux主机,时间容易不准确,在我遇到的内网服务器中,大部分的时间会有偏差,一般偏差5到10分钟。如果系统部署在这个机器上,那么系统的时间也是不准确的,此时我们需要对Linux主机做时间同步处理。手动同步时间1.date:查看当前时间[root@localhost~]#date2021年03月22日星期一15:59:59CST2.date'+%Y%M%D'按照格式显示当前日期[
- 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独立出来,数据持