- Unity学习笔记1
zy_777
通过一个星期的简单学习,初步了解了下unity,unity的使用,以及场景的布局,UI,以及用C#做一些简单的逻辑。好记性不如烂笔头,一些关键帧还是记起来比较好,哈哈,不然可能转瞬即逝了,(PS:纯小白观点,unity大神可以直接忽略了)一:MonoBehaviour类的初始化1,Instantiate()创建GameObject2,通过Awake()和Start()来做初始化3,Update、L
- 用 Python 开发小游戏:零基础也能做出《贪吃蛇》
本文专为零基础学习者打造,详细介绍如何用Python开发经典小游戏《贪吃蛇》。无需复杂编程知识,从环境搭建到代码编写、功能实现,逐步讲解核心逻辑与操作。涵盖Pygame库的基础运用、游戏界面设计、蛇的移动与食物生成规则等,让新手能按步骤完成开发,同时融入SEO优化要点,帮助读者轻松入门Python游戏开发,体验从0到1做出游戏的乐趣。一、为什么选择用Python开发《贪吃蛇》对于零基础学习者来说,
- # 【GEE基础及工具)(一)】工欲善其事,必先利其器:借助Open Earth Engine实现影像高效处理及批量任务执行
遥感AI实战
GEE基础教程遥感GEE地理信息信息可视化sentinel
在遥感数据分析与处理工作中,海量影像数据的预处理(如去云、裁剪)和分析(如均值计算)是支撑后续研究的核心环节。而Sentinel-2影像作为常用的遥感数据源,常因云层遮挡、数据量大等问题增加处理难度。同时,在使用GoogleEarthEngine(GEE)处理数据时,“批量导出任务需手动逐个启动”的问题也会显著降低效率。本文将从“工具优化”和“数据处理”两个维度展开,详细介绍如何通过GEE完成Se
- CentOS 7 安装最新版Docker教程
朽~
dockercentos
CentOS7Docker安装教程1、更新yum2、安装`yum-utils`3、通过`yum-config-manager`添加dockerrepository4、安装docker4.1、直接安装最新版本4.2、或者安装指定版本5、启动docker6、测试7、卸载dockerdocker安装官方文档:InstallDockerEngineonCentOS1、更新yumyumupdate-y2、安
- Could not extract GUID in text file UserSettings\Layouts\CurrentMaximizeLayout.dwlt at line 924.
zhannghong2003
Unityunity游戏引擎
错误提示:无法在文本文件UserSettings\Layouts\CurrentMaximizeLayout.dwlt的第924行提取GUID。UnityEngine.GUIUtility:ProcessEvent(int,intptr,bool&)这个错误发生在Unity无法解析一个损坏或格式错误的布局文件(CurrentMaximizeLayout.dwlt)时。以下是解决方法:解决方案:关闭
- Unity 程序运行一段时间后Game界面出现黑屏的一种情况
zhannghong2003
Unityunity游戏引擎
经过排查,发现是Camera(相机)的Z轴一直变大导致的黑屏。造成这种情况的原因是代码:VMouseTransform.position=Camera.main.ScreenToWorldPoint(Input.mousePosition);Camera(相机)设置成为跟随VMouseTransform。所以会出现Z轴逐渐变大的情况,最后导致黑屏。改代码为:Vector2vMouseNeed=Ca
- python3中,pycharm中怎么连接数据库
weixin_33736832
数据库python开发工具
因为python3现在还不能直接连接数据库,所有如果想连接,就只能通过以下方法:在APP中的,__init__.py中,添加以下代码就可以:importpymysqlpymysql.install_as_MySQLdb()当然前提是,那就的在setting.py中连接数据库添加所连接的mysql数据库的详细信息,如下:DATABASES={'default':{'ENGINE':'django.d
- docker-基础入门
docker入门dockers安装1.首先如果系统中已经存在旧的Docker,则先卸载:yumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engine\docker-selinux2.配置Dock
- 【第四章自定义编辑器窗口_扩展默认的编辑器窗口_扩展Hierarchy窗口(7/11)】
4.2如何扩扩展默认的编辑器窗口4.2.1扩展Hierarchy窗口usingUnityEditor;usingUnityEngine;//自定义Hierarchy窗口扩展类publicclassCustomHierarchyWindow{//InitializeOnLoadMethod特性表示这个方法在Unity编辑器启动或重新编译后自动执行[InitializeOnLoadMethod]sta
- python pygame event get_pygame简单运用总结
pygame简单运用总结Pygame就是一个游戏库,可以直接用高级语言编写,在python中导入pygame就可以用来写一些小游戏了。如何开始快速使用pygame的做出游戏呢?首先,就是了解游戏的运行主要是基于一个窗体,然后在窗体里面添加图片、音频,设计一些事件(像鼠标点击),最后装进循环运行就哦了。基本窗体编写importpygame,syspygame.init()#实例化screen=pyg
- UE5 自动生成插件汇总:提升创作效率的得力助手
阿贾克斯的黎明
游戏开发ue5
目录UE5自动生成插件汇总:提升创作效率的得力助手目录一、地形生成插件1.Polycam2.M4电影级地形工具包3.WorldCreatortoUnrealEngine插件二、场景生成插件1.PrometheanAI2.physicallayout(物理布局)三、动画生成插件1.CasterAI2.blender骨骼绑定模型一键导入UE5场景插件MagicBoneUE5RigCreator四、特效
- Maze Ball: Frame Trap
June_39f9
Inthegame,theplayer'staskistomovethemazeandsendtheballtothedestination.Collectstarsandcompletethelevels.Watchoutobstaclesalongtheway!Comeon!Tel:+1-626-202-3377Email:
[email protected]
- GAMES202——作业1 实时阴影(ShadowMap,PCF,PCSS)
目录任务ShadowMapPCFPCSS实现ShadowMapuseShadowMapPCFfindBlockerPCSS结果任务ShadowMap1.在ShadowMaterial.js中需要向Shader传递正确的uLightMVP矩阵,该矩阵参与了第一步从光源处渲染场景从而构造ShadowMap的过程。你需要完成DirectionalLight中的CalcLightMVP(translate
- centos 配置docker
一、卸载旧版本(如有)sudoyumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engine二、安装依赖包sudoyuminstall-yyum-utilsdevice-mapper-persis
- 从0搭建到持续优化:提示工程架构师的评估体系迭代全流程
从0搭建到持续优化:提示工程架构师的评估体系迭代全流程引言:AI时代的关键角色与评估挑战在人工智能技术迅猛发展的今天,提示工程(PromptEngineering)已从一个小众技能演变为决定AI系统成败的核心能力。随着大语言模型(LLM)能力的不断增强,提示工程架构师(PromptEngineeringArchitect)作为一个新兴职业应运而生,成为连接业务需求与AI能力的关键桥梁。为什么提示工
- 生成式引擎优化(GEO)在 Google Gemini 中的实践与探索
GEO优化助手
生成式引擎优化AI搜索优化GEO优化人工智能生成式引擎优化搜索引擎AI搜索营销GEO优化GoogleGemini
2025年,生成式AI(如GoogleGemini、ChatGPT、DeepSeek)已占据全球63%的互联网用户信息获取入口。用户行为从"浏览多个网页"转向"直接获取AI生成的精准答案",这一转变使传统SEO(搜索引擎优化)面临失效风险——即使内容优质,若未被AI模型识别为"可信信源",仍可能被淹没在信息洪流中。在此背景下,生成式引擎优化(GEO,GenerativeEngineOptimiza
- 这个“看不见的问题”,才是工业数据管理的终极难题
CSDN资讯
TDengine大数据
在谈论#工业数据管理时,我们常常会听到“4V”这样的术语,而在#大数据领域,也有类似的版本,甚至扩展成了5V、6V、乃至8V。但一个问题随之而来:这些被广泛引用的数据特征,真的代表了用户的痛点吗?真的切中了工业企业在实际应用中最棘手的挑战吗?TDengine解决方案架构师陈展隆结合自己多年服务工业客户的经验,分享了他对这个问题的深入观察与思考。或许,我们该重新思考:数据管理的“用户”到底是谁?又是
- 大数据工程师:职责与技能全景图 -- 从“数据搬运工”到“价值架构师”
大数据工程师:职责与技能全景图从“数据搬运工”到“价值架构师”在抖音的推荐流里精准蹦出你刚想买的球鞋、在双十一零点让支付成功率提升0.1%、在流感季来临前2周把奥司他韦铺到正确门店……这些“魔法”背后都站着同一群人——大数据工程师(BigDataEngineer)。他们不是数据分析师,也不是算法科学家,而是让**海量数据从“原材料”变成“生产线燃料”**的隐形架构师。本文用一张“职责地图”+一份“
- Drag框架为什么需要@Module这个注解
始于足下 方能行更远
17_Drag2注入框架android
这个问题的答案取决于Engine类的具体实现。在Dagger中,依赖注入的方式主要有两种:构造函数注入和模块提供。1.无参@Module注解解释情况1:Engine类使用了@Inject注解构造函数如果Engine类的构造函数被@Inject注解标记(且构造函数参数也可被解析),那么不需要模块也能注入成功:@ComponentpublicinterfaceCarComponent{voidinje
- @Binds/@IntoMap/@ClassKey的使用
下面是一个完整的Dagger多绑定映射(@IntoMap)示例,展示从定义到使用的全过程:@Binds注解@Binds:这是Dagger中的一个注解,用于声明某个抽象方法的返回类型是接口或抽象类,而方法的参数是其具体实现类!!!@IntoMap@IntoMap:将EngineService放入一个Map,Provider>集合中@ClassKey@ClassKey(EngineService.cl
- pandas.to_sql mysql_pandas to_sql
weixin_39929595
pandas.to_sqlmysql
实例:importpymysqlimportpandasaspdimportnumpyasnpfromsqlalchemyimportcreate_enginedf=pd.DataFrame([[1,"Bob",0],[2,"Kim",1]],columns=["id","name","sex"])dfidnamesex01Bob012Kim1fromsqlalchemyimportcreate_
- TDengine 的 HISTOGRAM() 函数用户手册
HISTOGRAM函数用户使用手册概述HISTOGRAM函数是TDengine中的一个聚合函数,用于对数值数据进行直方图统计分析。它将数据按照指定的区间(bins)进行分组统计,返回每个区间内数据的数量分布,帮助用户理解数据的分布特征。语法HISTOGRAM(expr,bin_type,bin_desc,normalized)参数说明参数类型必需描述expr数值类型是要进行直方图分析的字段或表达式
- 如何将 Python代码打包成 exe程序
索拉里斯最强共鸣者
基础pythonpygame开发语言
这篇文章主要介绍了如何把python代码打包成可执行软件,具有一定借鉴价值,需要的朋友可以参考下。1.首先python代码需要能运行。importpygameimportrandomimportsys#初始化Pygamepygame.init()#游戏常量WIDTH,HEIGHT=800,600GRID_SIZE=20GRID_WIDTH=WIDTH//GRID_SIZEGRID_HEIGHT=H
- Prompt Engineering(提示词工程)基础了解
Fuly1024
LLMprompt
参考:https://blog.csdn.net/qq_56438555/article/details/1448865171.基础概念:提示词工程(promptEngineering)是指通过设计、优化输入给大语言模型的文本指令(即“提示词”),引导LLM输出我们期望的结果。让大模型在无需微调(Fine-tuning)的情况下,通过“更好的提问方式”完成复杂任务(开发潜力,不会的还是不会)。但是
- 利用 pygame 开发一款游戏:「跳跳兔」(一)
懒编程-二两
简介Python是否可以开发简单的游戏?明显是可以的。在Python中可以利用pygame来开发一款游戏,有了pygame,就不需要我们自己去实现很低层的逻辑,如界面的刷新,物体的碰撞检测等等。这一系列文章是我个人此前学习笔记加以整理而成(学习内容来自:http://kidscancode.org/),所以开发的游戏并不是我个人原创的,本系列文章会开发一款「跳跳兔」,比互联网上随处可见的飞机大战有
- 利用 pygame 开发一款游戏:「跳跳兔」(完结篇)
懒编程-二两
前言通过前面九篇文章的编写,「跳跳兔」游戏基本已经被编写出来了,本节在此基础上进一步完善它,并添加上云彩背景。添加云彩背景添加云彩背景的大致步骤如下。1.编写云彩类2.载入云彩图片3.随机生成云彩4.云彩同步移动一步步来编写,首先是创建云彩类,代码如下。#sprites.pyclassCloud(pg.sprite.Sprite):def__init__(self,game):self._laye
- docker安装成功启动失败
嗯嗯好的呢!
javadocker容器运维springlinux
docker安装成功却启动失败,查看docker服务,systemctlstatusdocker.service,服务日志提示FailedtostartDockerApplicationContainerEngine.如下图所示:解决方法,修改docker文件,具体命令:vi/etc/sysconfig/docker,在–selinux-enabled后面添加=false。如下图所示:我遇到两次d
- 【大模型实战】提示工程(Prompt Engineering)
喵王叭
AIprompt
文章目录前言一、五大核心原则二、基础技巧1.明确指令与输出2.赋予角色三、进阶技巧1.少样本提示2.思维链提示3.控制输出长度与格式四、迭代与优化:提升提示效果的关键五、提示⼯程最佳实践总结附言前言提示工程是通过优化输入指令(提示词),让AI模型更精准、高效地输出符合需求结果的技术方法。一、五大核心原则清晰明确:避免模糊表述,用具体信息(如“新上市”)替代抽象词汇,精准传递意图。提供上下文:补充背
- ECS设计框架
弟炜啊
游戏引擎java
ECS,Entity(实体)Component(组件)System(系统),是一个gameplay层面的框架,它是建立在渲染引擎,物理引擎之上的,主要解决的问题是如何建立一个模型来处理游戏对象的更新操作,是对数据集合的操作。Entity(实体),有点类似于Unity中的GameObject,在ECS中,它仅仅是一个Component(组件)的组合,不具有任何代表意义,它的意义就在于对其上的Comp
- MySQL中的“引擎“是什么意思
张太行_
mysql数据库
在MySQL中,“引擎”(StorageEngine,存储引擎)是指数据库管理系统中负责数据的存储、检索和管理的底层软件组件。它决定了数据如何被存储、索引以及支持哪些功能。存储引擎的核心概念数据存储机制:不同的引擎使用不同的方式来物理存储数据索引实现:每种引擎实现索引的方式不同,影响查询性能事务支持:有些引擎支持事务(如InnoDB),有些不支持(如MyISAM)锁定级别:行级锁、表级锁等不同锁定
- 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独立出来,数据持