- Ubuntu 下 nginx-1.24.0 源码分析 - cycle->modules[i]->ctx
若云止水
ubuntunginxlinux
ngx_module_s结构体中的ctx字段是Nginx模块系统的核心设计之一。这个字段的主要作用是提供特定类型模块的上下文信息。ctx字段实际上是一个指向模块特定上下文结构的指针。根据模块类型的不同,ctx可以指向不同的上下文结构,比如:对于HTTP模块,指向ngx_http_module_t对于Core模块,指向ngx_core_module_t对于Event模块,指向ngx_event_mo
- Linux 中安装nginx
linuxnginx
注意:源文件目录工作目录1.从官网下载nginx(http://nginx.org/en/download....上传安装包到指定目录(/usr/local/src)解压nginx安装包tar-zxvfnginx-1.19.10.tar.gz3.解压完成后的目录为源文件目录,可以命名为nginx-source4.进入nginx-source源文件目录下。(cd/usr/local/src/ngin
- Nginx 常用命令和部署详解及案例示范
m0_74825488
面试学习路线阿里巴巴nginxpython大数据
一、Nginx常用命令1.1启动Nginx要启动Nginx服务,可以使用以下命令:sudosystemctlstartnginx1.2停止Nginx如果需要停止Nginx服务,可以使用以下命令:sudosystemctlstopnginx1.3重启Nginx在修改了Nginx配置文件后,需要重启Nginx以使更改生效。可以使用以下命令:sudosystemctlrestartnginx1.4重新加
- Nginx日志安全分析脚本
寰宇001
shell
nginx_log_check脚本作者:al0ne项目地址:https://github.com/al0ne/nginx_log_checkNginx日志安全分析脚本功能统计Top20地址SQL注入分析扫描器告警分析漏洞利用检测敏感路径访问文件包含攻击Webshell寻找响应长度的urlTop20寻找罕见的脚本文件访问寻找302跳转的脚本文件Usage设置报告保存地址outfile设置日志分析目录
- springcloud项目部署Nginx+Gateway+其他服务
小白宗轩
springcloudnginxgateway
一.部署Nginx:Nginx是一个高性能的Web服务器和反向代理服务器。它常用于将流量从公共互联网引导到内部的应用程序服务器。你可以在服务器上安装Nginx,并根据你的需求进行配置。通常的配置包括监听端口、定义服务器块、配置反向代理、设置SSL/TLS等。配置完成后,你可以启动Nginx,并确保它能够正常处理流量。明白它在整体项目中承担的作用:反向代理,负载均衡以及部署静态资源,这也是本章所用到
- 轻松上手:Nginx服务器反向代理配置指南
deming_su
Nginx服务器nginx运维
接上一篇《轻松上手:Nginx服务器基础配置指南》后,我们来探讨一下Nginx反向代理配置具体实现是怎么样的。让我看看Nginx配置的一些核心代码❤️location/apis{rewrite^.+apis/?(.*)$/$1break;add_headerAccess-Control-Allow-Origin*;add_headerAccess-Control-Allow-Headers"Ac
- Nginx中$http_host、$host、$proxy_host的区别
m0_74823434
面试学习路线阿里巴巴nginxhttp运维
知识巩固!网上看到这篇文章,这里转载记录一下。简介变量是否显示端口值是否存在host浏览器请求的ip,不显示端口否"Host:value"显示值为a:b的时候,只显示ahttp_host浏览器请求的ip和端口号是“Host:value”,value存在就显示proxy_host被代理服务的ip和端口号默认80不显示其他端口显示"Host:value"显示配置反向代理时,接口请求报404问题应用描述
- 闪客网盘同款的运营级网盘系统网站源码
timesky
php
闪客网盘同款的运营级网盘系统网站源码,一款非常实用的网盘系统,支持转存和限速下载,VIP开启高速下载!源码无任何后门木马亲测,放心使用可以帮助您打造一个安全可靠的网盘分享平台,该系统支持用户使用微信扫码关注公众号登录,上传文件分享链接可自定义,文件可一键保存到我的网盘,支付易支付和官方支付接口!搭建说明Nginx1.20PHP7.1-7.3MySOL5.6phpMyAdmin5.11.上传源码到根
- Nginx 代理 Redis 实现通过域名连接数据库
逢生博客
数据库nginxredis
文章目录Nginx模块介绍Stream模块配置Redis配置文件连接RedisNginx、Redis安装这里不做介绍。域名默认已经解析到服务器公网IP。Nginx模块介绍HTTP模块:HTTP模块提供了处理HTTP请求的功能,包括反向代理、负载均衡、缓存、HTTP代理等。例如:proxy模块用于反向代理和负载均衡,fastcgi模块用于处理FastCGI请求。Stream模块:Stream模块用于
- Nginx代理Redis哨兵主从配置
Rewloc
springbootredisRedis主从复制哨兵模式redisnginxnginx
Nginx代理Redis哨兵主从配置一、环境Nginx版本:1.21.6Center7.5及以上或MasOS搭建Redis哨兵主从模式Springboot集成Redis哨兵主从模式提示:Nginx必须安装upstream模块二、配置Nginx配置有三个方案(详见后续内容),其中:方案一将哨兵所有节点使用一个端口对外映射;方案二是每个哨兵端口配置一个对应的映射端口,总体和正常哨兵配置方式无差别;方案
- nginx代理mysql和redis
Blueeyedboy521
开发组件mysqlredisnginx
目录MysqlredisMysql这里监听另外一台B虚拟机中的192.168.0.44:3306,并通过A虚拟机的3306端口开放出去之后,只要外部连接A虚拟机ip:3306,并使用mysql的用户名、密码,就可以访问内部的#mysql了stream{upstreammysql{server192.168.0.44:3306;}server{listen3306;proxy_connect_tim
- nginx 代理 redis
P7进阶路
面试学习路线阿里巴巴nginxredis运维
kubernetes发布的redis服务端口为31250通过命令查询[mini@ecs-88500735/]$minikubeserviceredis--urlhttp://192.168.49.2:31250[root@ecs-88500735/]#vi/etc/nginx/nginx.conf配置nginx.confstream{upstreamredis{server192.168.49.2
- 大模型工具Ollama安全加固实战:用Nginx反向代理化解风险
新人新人新
安全nginx网络运维
大模型工具Ollama安全加固实战:用Nginx反向代理化解风险从国家网络安全通报中心通报看AI服务防护引言2025年3月3日,国家网络安全通报中心发布通报,指出开源大模型工具Ollama默认配置存在严重安全漏洞,尤其是默认开放的11434端口无鉴权机制,导致模型服务暴露于公网,极易引发数据泄露、算力盗取等风险。本文基于通报内容,结合实战案例,详解如何通过Nginx反向代理低成本实现多层防护,为A
- nginx配置自动更新dns缓存
handsomestWei
运维nginx缓存运维dns
nginx配置自动更新dns缓存nginxdns缓存在nginx中,在第一次dns解析成功后,结果会被缓存,并不会自动更新。域名配置更新后,需要手动重启nginx或重新加载nginx配置,触发后续网络请求进入更新dns。nginx配置示例server{listen18080;server_namex.x.x.x;#配置dns解析服务器,并使用valid参数设置dns缓存时间resolver127.
- 通过 Docker 搭建 Typecho 详细教程
一路是夜幕沉沙
LinuxDockerdockertypecho博客nginxmysql
文章目录1.安装Docker和DockerCompose1.1安装Docker1.2安装DockerCompose2.构建镜像3.配置3.1配置docker-compose.yml3.2配置nginx3.3配置mysql4.安装4.1编排容器4.2安装Typecho5.博客迁移6.参考资料下面以Centos7为例1.安装Docker和DockerCompose1.1安装Docker安装依赖yumi
- docker镜像管理
LCY133
docker容器运维
方案1:独立容器(MySQL+Redis+Java+Nginx独立镜像)优点符合Docker最佳实践•每个容器只运行一个进程(如MySQL、Redis等),符合单一职责原则。•容器之间通过Docker网络通信,降低耦合性。独立扩展与维护•可单独升级某个服务(如Java应用)而无需重建整个镜像。•资源分配更灵活(例如为MySQL分配独立内存,Java分配更多CPU)。高效利用镜像层•基础镜像(如My
- docker指令整理
LCY133
dockereureka容器
以下是Docker常用指令的归纳整理,涵盖镜像管理、容器操作、网络配置、数据卷等核心场景,方便快速查阅:一、镜像管理命令说明示例dockerpull拉取镜像dockerpullnginx:latestdockerpush推送镜像到仓库dockerpushmy-registry.com/my-image:tagdockerbuild构建镜像dockerbuild-tmy-image:1.0.dock
- Nginx给Vue和Java后端做代理
入职啦
实战项目知识vue.jsnginxjava
本文发表于入职啦(公众号:ruzhila)可以访问入职啦查看更多技术文章网站架构入职啦采用了Nuxt.js、Vue3、Go的混合架构开发,包括了官网、简历工具、职位搜索、简历搜索等功能。为三个部分:官网:采用Nuxt.js+Vue3+TailwindCSS开发,属于SSR渲染简历工具:采用Vue3+TailwindCSS开发,属于SPA渲染后端:采用Gin+Gorm+MySQL开发,提供API接口
- nginx服务器,根目录755权限,网站ping的通,打开显示403 Forbidden
困觉少年
nginx服务器运维
Nginx服务器出现403Forbidden错误,但网站根目录权限已设置为755,仍然无法访问。以下是可能的原因及解决方法:1.检查Nginx配置文件403错误通常是由于配置错误或权限问题导致的。首先,检查Nginx的配置文件(通常是/etc/nginx/nginx.conf或/etc/nginx/conf.d/目录下的.conf文件),确保root和index指令正确设置。例如:server{l
- Nginx解决前端跨域问题
m0_74823827
面试学习路线阿里巴巴nginx前端运维
1.理解CORS和同源策略1.1同源策略同源策略是一种浏览器安全机制,用于阻止不同源(不同域名、协议或端口)的Web应用相互访问数据。它确保了Web应用的隔离性,防止恶意网站访问用户数据或执行不安全的操作。同源策略下,同一个域(相同的协议、域名和端口)内的资源可以自由访问。但如果协议、域名或端口有任何不同,浏览器会阻止这种访问。1.2跨域资源共享(CORS)CORS(Cross-OriginRes
- 详细解析Vue在history路由模式部署后刷新404问题
mr_cmx
vuevue3vue.js前端javascript
场景vue项目使用了history路由模式,且在本地时运行正常,但打包通过nginx部署后,刷新页面,出现了404错误先定位一下,HTTP404错误意味着链接指向的资源不存在问题在于为什么不存在?且为什么只有history模式下会出现这个问题?解析Vue是属于单页应用(single-pageapplication)而SPA是一种网络应用程序或网站的模型,所有用户交互是通过动态重写当前页面,前面我们
- 分分钟搞定分布式技术专题面试——Nginx+ZK+ActiveMQ+Kafka+RabbitMQ+MongoDB+Redis!
独孤球球
java开发语言
前些日子听很多朋友说面试跪在分布式,所以今天特地来总结一波分布式技术专题面试,限流、通讯、缓存:01分布式限流:Nginx+ZooKeeper1.1分布式限流之Nginx请解释一下什么是Nginx?请列举xNginx的一些特性。请列举xNginx和和Apache之间的不同点请解释xNginx如何处理PHTTP请求。在xNginx中,如何使用未定义的服务器名称来阻止处理请求?使用“反向代理服务器”请
- CentOs7 安装 nginx-1.26.2 源码安装详解
TOP印
工具nginx运维
要在CentOS7上安装Nginx1.26.2版本(或其他版本)并通过源码进行安装,下面是详细的步骤:1.安装依赖首先,确保你的系统已经安装了必要的依赖包。打开终端并运行以下命令:sudoyumupdate-ysudoyuminstall-ygccmakepcre-develzlib-developenssl-develgcc:GNU编译器,用于编译源码。make:构建工具,用于编译Nginx。p
- CentOS7 yum安装nginx-1.26.1
koseureka
nginx运维
#创建编辑vi/etc/yum.repos.d/nginx.repo#内容[nginx-stable]name=nginxstablerepobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx.org/keys/nginx_signing.key
- CentOS7 离线安装 Nginx 1
2501_90339668
nginx运维
4、Nginx安装tarzxvfnginx-1.6.2.tar.gz-C/usr/local/cd/usr/local/nginx-1.6.2/&&./configure--prefix=/usr/local/nginxmake&&makeinstallcd/usr/local/nginx&&ls5、启动Nginx/usr/local/nginx/sbin/nginxps-ef|grepnginx
- 阿里云服务器Linux(centos)系统安装nginx1.20.2
DHLSP15
服务器linux阿里云
阿里云服务器Linux(centos)系统安装nginx1.20.21.安装依赖包一共要安装4种依赖(基于c语言)yum-yinstallgcczlibzlib-develpcre-developensslopenssl-devel2.下载nginx安装包并解压安装包nginx官网下载:http://nginx.org/en/download.html创建一个文件夹//先进入local目录下cd/
- linux centos7 安装nginx
追逐路上的小人物
linuxnginx服务器
1、下载nginx安装包wget-chttp://nginx.org/download/nginx-1.24.0.tar.gz2、安装nginx所需要的依赖包yuminstall-ygcc-c++zlibzlib-developensslopenssl-develpcrepcre-devel3、解压安装包tar-zxvfnginx-1.24.0.tar.gz4、#执行配置脚本--prefix是指定
- nginx用dockerfile封装带nginx-module-vts的镜像
Eunyeon2__
nginxlinuxdocker
准备初始化镜像nginx:1.27.2https://download.csdn.net/download/qq_37579157/90460903一、逻辑:1.载官方基础镜像,安装依赖和编译的工具2.下载nginx-module-vts,(需要和nginx的版本对应上,不然会报错),我这里直接用git拉取失败,所以手动从git上下载下来,再解压后复制进去3.下载nginx部署包,因为自带的镜像编
- nginx 配置 301跳转
梦醒贰零壹柒
运维nginx运维
HTTP跳转到HTTPS将所有HTTP请求(80端口)跳转到HTTPS(443端口):server{listen80;server_nameexample.com;#跳转到HTTPSreturn301https://$host$request_uri;}server{listen443ssl;server_nameexample.com;ssl_certificate/path/to/certif
- Docker部署CRMEB开源版本实战
HOOLOO
docker开源容器CRMEB
Crmeb商城系统开源版目前版本在5.4.0,本文以此版本为基础实现docker部署。crmeb开源版本对系统的要求如下:运行环境要求操作系统Linux/WindowsWEB服务Nginx/Apache/IISPHP版本PHP7.1~7.4数据库MySQL5.7~8.0(引擎:InnoDB)缓存Redis(可选,不安装则使用文件缓存)管理器Supervisor(用于管理消息队列)推荐工具宝塔面板(
- 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独立出来,数据持