- chrome扩展,“manifest_version“: 3, chrome 扩展图标点击事件
徐同保
chrome前端
在Chrome扩展中,从ManifestV3开始,后台脚本(backgroundscripts)被服务工作线程(serviceworkers)所取代。这改变了扩展图标点击事件(通常称为浏览器操作或者页面操作)的处理方式。在ManifestV3中,您需要使用chrome.action.onClicked监听器来处理扩展图标的点击事件。下面是一个如何设置扩展图标点击事件处理器的示例:在manifest
- 谷歌浏览器驱动Chromedriver(114-120版本)文件以及驱动下载教程
pigerr杨
Pythonpythonchromedrivers
ChromeDriver官方网站GitHub||GoogleChromeLabs/chrome-for-testingChromeDriver113-125_JSONChromeforTestingavailability123-125zip白月黑羽Python基础|进阶|Qt图形界面|Django|自动化测试|性能测试|JS语言|JS前端|原理与安装
- Ubuntu下安装Chrome浏览器(简单,使用)
Starry-sky(jing)
[linux操作系统笔记]chrome深度学习linux
下载安装GoogleChrome浏览器deb包极速下载:下载链接32位wgethttps://dl.google.com/linux/direct/google-chrome-stable_current_i386.deb64位wgethttps://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb安装sudodpk
- 开发chrome扩展( 禁止指定域名使用插件)
徐同保
chrome前端
mainfest.json:{"manifest_version":3,"name":"ChatGPT学习","version":"0.0.2","description":"ChatGPT,GPT-4,Claude3,Midjourney,StableDiffusion,AI,人工智能,AI","icons":{"16":"./images/logo.png","48":"./images/lo
- MAC电脑运行windows程序或者游戏怎么办,crossover介绍,
山外有山a
macos游戏
CrossOver是一款特别为Mac设计的应用程序,它基于Wine项目,可以直接在macOS上运行许多Windows应用程序,而无需安装完整的Windows操作系统。是一款由CodeWeavers公司开发的商业软件,它基于开源项目Wine,并对其进行了深度优化和增强。该软件的主要目的是让非Windows操作系统的用户能够在MacOSX、Linux以及ChromeOS等平台上运行Windows应用程
- selenium被识别,修改navigator的方法
音乐学家方大刚
爬虫seleniumchrome爬虫
#-*-coding:utf-8-*-importtimefromseleniumimportwebdriverfromselenium.webdriver.chrome.optionsimportOptionschrome_options=Options()#chrome_options.add_argument('--headless')#chrome_options.add_argument
- 第三百九十七回
talk_8
一起TalkFlutter吧移动开发Flutter
文章目录概念介绍使用方法示例代码我们在上一章回中介绍了通道相关的内容,本章回中将介绍StreamProvider组件.闲话休提,让我们一起TalkFlutter吧。概念介绍在Flutter中Stream是经常使用的组件,对该组件的监听可voidmain(){///让状态栏和程序的appBar融为一体构成沉浸式效果,android有效果,需要IOS是否有效果///SystemChrome这个类及其方
- 谷歌浏览器使用selenium的驱动chromedriver 116~118版本,解决版本不匹配问
美美打不死
seleniumpython
**谷歌浏览器使用selenium的驱动chromedriver116~118版本,解决版本不匹配问题**下载链接:https://googlechromelabs.github.io/chrome-for-testing/#stable
- Python爬虫打印状态码为521,返回数据为乱码?
马龙强_
python前端javascript
爬虫代码:importrequestsheaders={'User-Agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/107.0.0.0Safari/537.36','Referer':'https://www1.rmfysszc.gov.cn/projects.shtml?d
- docker chrome 镜像制作
a cool fish(无名)
docker运维容器
1.构建基础镜像dockerbuild-fDockerfile-tmycentos:0.1.FROMcentos:7MAINTAINERwuming@herogo.comRUNyuminstall-ywgetnet-toolsiproutebind-utilslrzsz\&&rm-rf/var/cache/tmp/*\&&ln-sf/usr/share/zoneinfo/Asia/Shanghai
- SAP Spartacus Product 明细页面 meta description 标签页的数据源
JerryWang_汪子熙
例子:http://localhost:4200/Open-Catalogue/Cameras/DigitalCameras/Digital-SLR/DSLR-A330-%252BDT-18---55-mm/p/2934302该产品的metadescription的值,在Chrome开发者工具里显示如下:这个description的值,通过OCCAPI从CommerceCloud后台读取:在pro
- 测试用例例子:在线购物平台的结算功能测试
测试也是会开发的
#用例编写测试用例功能测试
用例标题:在线购物平台结算功能测试测试目的:验证在线购物平台的结算功能是否正常工作,确保用户能够顺利完成支付流程。用例级别:高测试环境:操作系统:Windows10浏览器:Chrome最新版网络环境:稳定网络前置条件:用户已登录到在线购物平台购物车中至少有一个商品用户已选择配送地址用户已选择支付方式(如信用卡、支付宝等)测试步骤:用户进入购物车页面,确认购物车中的商品和数量。用户点击“结算”按钮,
- C#全屏打开Edge浏览器
太空漫步11
c#edge开发语言
我为什么写这个呢?因为网上关于全屏打开浏览器的都是Chrome的,而按照他们的方法应用在Edge上就失效了。众所周知,C#可以利用Progress打开Windows的某个应用。而我要用Progress打开的不是Edge浏览器,而是命令行窗口。之后输入从微软官网的Edge官方文档中找到的cmd命令全屏打开浏览器并打开百度网址。usingSystem;usingSystem.Diagnostics;u
- Python自动检测Chrome浏览器版本并下载相应驱动chromedriver.exe
m0_57638202
seleniumpythonchrome爬虫selenium
fromunicodedataimportnameimportwinregimportrequestsimportjsonimportreimportzipfileimportos#zip解压defun_zip(file_name):"""unzipzipfile"""zip_file=zipfile.ZipFile(file_name)ifos.path.isdir(file_name+"把此文
- 『与善仁』Appium基础 — 23.uiautomatorviewer定位工具
繁华似锦Fighting
之前我们在做web页面自动化的时候就说过,元素定位是页面自动化的第一步。同理App自动化测试的第一步,也是元素的定位。在APP中定位元素的话,需要借助一些元素定位工具。APP中的元素定位工具大致有三种:uiautomatorviewerAppiumInspectorChromeInspect(一)uiautomatorviewer定位工具1、uiautomatorviewer介绍在开始编写测试代码
- uniApp h5解决Chrome跨域问题的最终方法
kuanxu
uni-appchrome前端
最近用Dcloud工具HBuilderX写了一个uniapp客户端项目,代码在HBuilder工具内运行没有问题,打包后放在androidapp和iosapp内运行也没有问题,唯有把h5链接地址放在chrome里会有如下跨域问题:AccesstoXMLHttpRequestat'https://www.yachen.com/api/auth/sendinfo'fromorigin'http://l
- Chrome 浏览器代理插件 SwitchyOmega 安装与使用
上海-悠悠
Mitmproxy代理mockchrome
前言SwitchyOmega是什么?ProxySwitchyOmega是Chrome和Firefox浏览器上的代理扩展程序,可以轻松快捷的管理和切换多个代理设置,支持HTTP、HTTPS、SOCKS4、SOCKS5等多种代理协议。SwitchyOmega只是管理代理的,本身并不提供代理服务,需要配合节点使用。下载SwitchyOmega插件官网Github仓库下载SwitchyOmega官网Git
- 解决:selenium web browser 的版本适配问题
暖仔会飞
selenium前端自动化工具webdriver
文章目录解决方案:使用webdrivermanager自动适配驱动使用selenium操控浏览器的时候报错:Thechromedriverversion(114.0.5735.90)detectedinPATHat/opt/homebrew/bin/chromedrivermightnotbecompatiblewiththedetectedchromeversion(122.0.6261.69)
- 解决Chrome插件安装时出现的“程序包无效”问题
UPUPUPEveryday
参考如下网址,解决谷歌浏览器安装插件显示“Yourfilewasnotfound”的问题:https://jingyan.baidu.com/article/6079ad0e8bf19428ff86dbe5.html
- Chrome DevTools调试技巧
dingFY
【1】DevTools触发伪类右键单击Elements面板中的元素节点并选择“forcestate”。或者在Sytle子窗格中单击“:hov”图标。可以触发元素上的伪类来研究元素在悬停时的效果和样式【2】DevTools-在任何网页上运行预定义的代码片段DevTools中有一个叫做代码段的特性,它允许您可以在网页上运行的测试代码(这比在控制台面板中重新键入JavaScript代码要方便一些)单击S
- Selenium 模拟浏览器操作案例
数字化信息化智能化解决方案
selenium测试工具
Selenium是一个非常流行的自动化测试工具,它允许你模拟浏览器操作,如点击、输入、滚动等。以下是一个使用Python和Selenium模拟浏览器操作的简单案例:首先,确保你已经安装了Selenium和相应的浏览器驱动(如ChromeDriver)。你可以使用pip安装Selenium:bash复制代码pipinstallselenium然后,你需要下载与你的浏览器版本相匹配的驱动。以下是一个使
- chrome devtools 技巧
1.Chrome117可以直接修改接口返回的数据了在前后端联调的时候,往往后端的数据会出现问题,这时候通知后端改接口,改数据,他们修改发布需要个过程,而前端很想把当前的功能调通,这个时候可直接在devtools修改接口返回的数据,简直不要太香。具体怎么操作可移步Chrome117重大更新:Network面板就能发起Mock请求!!!
- 防止你的 Web 应用被别人通过 Chrome 开发者工具进行调试的一种简单办法
chrome
performance.now()代码中使用了performance.now()方法来获取高精度的时间戳,它返回从某一时间点到当前时间的毫秒数,不受系统时间的影响。在这里,startTime和endTime分别记录了debugger语句前后的时间点。debuggerdebugger语句是JavaScript中的一个调试关键字,当浏览器的开发者工具开启并且处于调试模式时,执行到debugger语句会
- 使用Node.js开发RESTful API
JJCTO
Node.jsnode.jsrestful后端
在当今信息时代,不管是企业级应用还是个人项目,都离不开RESTfulAPI的使用。RESTfulAPI是现代web应用的基石,通过它,我们可以实现前后端的高效沟通和数据传输。而在开发RESTfulAPI的过程中,Node.js的强大功能和灵活性让其成为首选的开发工具之一。Node.js是基于ChromeV8引擎的JavaScript运行环境,它的出现使得JavaScript可以在服务器端运行,极大
- uview组件封装form表单后有关弹框的组件安卓部分机型不显示
阳光先做
androidapache
环境背景介绍:使用uniapp开发小程序和app,uview版本是1.8.3,分别为ios端安卓端和小程序端封装了form表单组件,u-selectu-action-sheetu-picker等组件通过u-input@click事件唤起荣耀部分机型oppo部分机型和小米部分机型点击input没反应,调试了半天发现u-input内部设置disabled后click事件不执行上网查找答案Chrome内
- selenium的使用
-wellplayed-
爬虫爬虫
一介绍selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转、输入、点击、下拉等,来拿到网页渲染之后的结果,可支持多种浏览器fromseleniumimportwebdriverbrowser=webdriver.Chrome()browser=webdri
- Airtest-Selenium实操小课:爬取新榜数据
测试界的路飞
软件测试技术分享selenium测试工具
1.前言最近看到群里很多小伙伴都在用Airtest-Selenium做一些web自动化的尝试,正好趁此机会,我们也出几个关于web自动化的实操小课,仅供大家参考~今天跟大家分享的是一个非常简单的爬取网页信息的小练习,在百度找到新榜网页,搜索关键词“自动化”,爬取前5名的公众号名称。2.需求分析和准备整体的需求大致可以分为以下步骤:打开chrome浏览器打开百度网页搜索“新榜官网”点击“找达人”按钮
- What are some things you wish you knew when you started programming?
ylgwhyh
开发意识开发开发意识如何学习编程
HadiMoshayedi,SoftwareEngineer@GoogleChromeTeamWrittenJun3,2013OriginallyAnswered:Whatarethethingsyouwishyouknewwhenyoustartedprogrammingforthefirsttime?RobPike's5RulesofProgrammingRule1.Youcan'ttellw
- 带tkinter界面的m3u8单程下载
卡卡啦啦_
采用tkinter模块搭建GUI界面image代码如下:importrequestsfromtkinterimport*header={'User-Agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/76.0.3809.132Safari/537.36'}defts_url():
- 资讯|WebGPU必将成为Web生态的新未来!
前端
1WebGPU简介经过六年的开发和测试,今年5月2日谷歌正式宣布Chrome将从版本113开始提供WebGPU支持,从而在ChromeOS、Windows和macOS设备上实现逼真的渲染视觉效果和复杂的计算。WebGPU为Web生态的发展开创了的新可能性。它可以为沉浸式虚拟世界、交互式数据可视化、高级功能的图像和视频编辑、物理仿真、机器学习等提供支持,所有这些都可以在浏览器中运行。同时,WebGP
- knob UI插件使用
换个号韩国红果果
JavaScriptjsonpknob
图形是用canvas绘制的
js代码
var paras = {
max:800,
min:100,
skin:'tron',//button type
thickness:.3,//button width
width:'200',//define canvas width.,canvas height
displayInput:'tr
- Android+Jquery Mobile学习系列(5)-SQLite数据库
白糖_
JQuery Mobile
目录导航
SQLite是轻量级的、嵌入式的、关系型数据库,目前已经在iPhone、Android等手机系统中使用,SQLite可移植性好,很容易使用,很小,高效而且可靠。
因为Android已经集成了SQLite,所以开发人员无需引入任何JAR包,而且Android也针对SQLite封装了专属的API,调用起来非常快捷方便。
我也是第一次接触S
- impala-2.1.2-CDH5.3.2
dayutianfei
impala
最近在整理impala编译的东西,简单记录几个要点:
根据官网的信息(https://github.com/cloudera/Impala/wiki/How-to-build-Impala):
1. 首次编译impala,推荐使用命令:
${IMPALA_HOME}/buildall.sh -skiptests -build_shared_libs -format
2.仅编译BE
${I
- 求二进制数中1的个数
周凡杨
java算法二进制
解法一:
对于一个正整数如果是偶数,该数的二进制数的最后一位是 0 ,反之若是奇数,则该数的二进制数的最后一位是 1 。因此,可以考虑利用位移、判断奇偶来实现。
public int bitCount(int x){
int count = 0;
while(x!=0){
if(x%2!=0){ /
- spring中hibernate及事务配置
g21121
Hibernate
hibernate的sessionFactory配置:
<!-- hibernate sessionFactory配置 -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<
- log4j.properties 使用
510888780
log4j
log4j.properties 使用
一.参数意义说明
输出级别的种类
ERROR、WARN、INFO、DEBUG
ERROR 为严重错误 主要是程序的错误
WARN 为一般警告,比如session丢失
INFO 为一般要显示的信息,比如登录登出
DEBUG 为程序的调试信息
配置日志信息输出目的地
log4j.appender.appenderName = fully.qua
- Spring mvc-jfreeChart柱图(2)
布衣凌宇
jfreechart
上一篇中生成的图是静态的,这篇将按条件进行搜索,并统计成图表,左面为统计图,右面显示搜索出的结果。
第一步:导包
第二步;配置web.xml(上一篇有代码)
建BarRenderer类用于柱子颜色
import java.awt.Color;
import java.awt.Paint;
import org.jfree.chart.renderer.category.BarR
- 我的spring学习笔记14-容器扩展点之PropertyPlaceholderConfigurer
aijuans
Spring3
PropertyPlaceholderConfigurer是个bean工厂后置处理器的实现,也就是BeanFactoryPostProcessor接口的一个实现。关于BeanFactoryPostProcessor和BeanPostProcessor类似。我会在其他地方介绍。
PropertyPlaceholderConfigurer可以将上下文(配置文件)中的属性值放在另一个单独的标准java
- maven 之 cobertura 简单使用
antlove
maventestunitcoberturareport
1. 创建一个maven项目
2. 创建com.CoberturaStart.java
package com;
public class CoberturaStart {
public void helloEveryone(){
System.out.println("=================================================
- 程序的执行顺序
百合不是茶
JAVA执行顺序
刚在看java核心技术时发现对java的执行顺序不是很明白了,百度一下也没有找到适合自己的资料,所以就简单的回顾一下吧
代码如下;
经典的程序执行面试题
//关于程序执行的顺序
//例如:
//定义一个基类
public class A(){
public A(
- 设置session失效的几种方法
bijian1013
web.xmlsession失效监听器
在系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动退出登录,销毁session。具体设置很简单,方法有三种:(1)在主页面或者公共页面中加入:session.setMaxInactiveInterval(900);参数900单位是秒,即在没有活动15分钟后,session将失效。这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所
- java jvm常用命令工具
bijian1013
javajvm
一.概述
程序运行中经常会遇到各种问题,定位问题时通常需要综合各种信息,如系统日志、堆dump文件、线程dump文件、GC日志等。通过虚拟机监控和诊断工具可以帮忙我们快速获取、分析需要的数据,进而提高问题解决速度。 本文将介绍虚拟机常用监控和问题诊断命令工具的使用方法,主要包含以下工具:
&nbs
- 【Spring框架一】Spring常用注解之Autowired和Resource注解
bit1129
Spring常用注解
Spring自从2.0引入注解的方式取代XML配置的方式来做IOC之后,对Spring一些常用注解的含义行为一直处于比较模糊的状态,写几篇总结下Spring常用的注解。本篇包含的注解有如下几个:
Autowired
Resource
Component
Service
Controller
Transactional
根据它们的功能、目的,可以分为三组,Autow
- mysql 操作遇到safe update mode问题
bitray
update
我并不知道出现这个问题的实际原理,只是通过其他朋友的博客,文章得知的一个解决方案,目前先记录一个解决方法,未来要是真了解以后,还会继续补全.
在mysql5中有一个safe update mode,这个模式让sql操作更加安全,据说要求有where条件,防止全表更新操作.如果必须要进行全表操作,我们可以执行
SET
- nginx_perl试用
ronin47
nginx_perl试用
因为空闲时间比较多,所以在CPAN上乱翻,看到了nginx_perl这个项目(原名Nginx::Engine),现在托管在github.com上。地址见:https://github.com/zzzcpan/nginx-perl
这个模块的目的,是在nginx内置官方perl模块的基础上,实现一系列异步非阻塞的api。用connector/writer/reader完成类似proxy的功能(这里
- java-63-在字符串中删除特定的字符
bylijinnan
java
public class DeleteSpecificChars {
/**
* Q 63 在字符串中删除特定的字符
* 输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。
* 例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”
*/
public static voi
- EffectiveJava--创建和销毁对象
ccii
创建和销毁对象
本章内容:
1. 考虑用静态工厂方法代替构造器
2. 遇到多个构造器参数时要考虑用构建器(Builder模式)
3. 用私有构造器或者枚举类型强化Singleton属性
4. 通过私有构造器强化不可实例化的能力
5. 避免创建不必要的对象
6. 消除过期的对象引用
7. 避免使用终结方法
1. 考虑用静态工厂方法代替构造器
类可以通过
- [宇宙时代]四边形理论与光速飞行
comsci
从四边形理论来推论 为什么光子飞船必须获得星光信号才能够进行光速飞行?
一组星体组成星座 向空间辐射一组由复杂星光信号组成的辐射频带,按照四边形-频率假说 一组频率就代表一个时空的入口
那么这种由星光信号组成的辐射频带就代表由这些星体所控制的时空通道,该时空通道在三维空间的投影是一
- ubuntu server下python脚本迁移数据
cywhoyi
pythonKettlepymysqlcx_Oracleubuntu server
因为是在Ubuntu下,所以安装python、pip、pymysql等都极其方便,sudo apt-get install pymysql,
但是在安装cx_Oracle(连接oracle的模块)出现许多问题,查阅相关资料,发现这边文章能够帮我解决,希望大家少走点弯路。http://www.tbdazhe.com/archives/602
1.安装python
2.安装pip、pymysql
- Ajax正确但是请求不到值解决方案
dashuaifu
Ajaxasync
Ajax正确但是请求不到值解决方案
解决方案:1 . async: false , 2. 设置延时执行js里的ajax或者延时后台java方法!!!!!!!
例如:
$.ajax({ &
- windows安装配置php+memcached
dcj3sjt126com
PHPInstallmemcache
Windows下Memcached的安装配置方法
1、将第一个包解压放某个盘下面,比如在c:\memcached。
2、在终端(也即cmd命令界面)下输入 'c:\memcached\memcached.exe -d install' 安装。
3、再输入: 'c:\memcached\memcached.exe -d start' 启动。(需要注意的: 以后memcached将作为windo
- iOS开发学习路径的一些建议
dcj3sjt126com
ios
iOS论坛里有朋友要求回答帖子,帖子的标题是: 想学IOS开发高阶一点的东西,从何开始,然后我吧啦吧啦回答写了很多。既然敲了那么多字,我就把我写的回复也贴到博客里来分享,希望能对大家有帮助。欢迎大家也到帖子里讨论和分享,地址:http://bbs.csdn.net/topics/390920759
下面是我回复的内容:
结合自己情况聊下iOS学习建议,
- Javascript闭包概念
fanfanlovey
JavaScript闭包
1.参考资料
http://www.jb51.net/article/24101.htm
http://blog.csdn.net/yn49782026/article/details/8549462
2.内容概述
要理解闭包,首先需要理解变量作用域问题
内部函数可以饮用外面全局变量
var n=999;
functio
- yum安装mysql5.6
haisheng
mysql
1、安装http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
2、yum install mysql
3、yum install mysql-server
4、vi /etc/my.cnf 添加character_set_server=utf8
- po/bo/vo/dao/pojo的详介
IT_zhlp80
javaBOVODAOPOJOpo
JAVA几种对象的解释
PO:persistant object持久对象,可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作.
VO:value object值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可
- java设计模式
kerryg
java设计模式
设计模式的分类:
一、 设计模式总体分为三大类:
1、创建型模式(5种):工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式。
2、结构型模式(7种):适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式。
3、行为型模式(11种):策略模式,模版方法模式,观察者模式,迭代子模式,责任链模式,命令模式,备忘录模式,状态模式,访问者
- [1]CXF3.1整合Spring开发webservice——helloworld篇
木头.java
springwebserviceCXF
Spring 版本3.2.10
CXF 版本3.1.1
项目采用MAVEN组织依赖jar
我这里是有parent的pom,为了简洁明了,我直接把所有的依赖都列一起了,所以都没version,反正上面已经写了版本
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht
- Google 工程师亲授:菜鸟开发者一定要投资的十大目标
qindongliang1922
工作感悟人生
身为软件开发者,有什么是一定得投资的? Google 软件工程师 Emanuel Saringan 整理了十项他认为必要的投资,第一项就是身体健康,英文与数学也都是必备能力吗?来看看他怎么说。(以下文字以作者第一人称撰写)) 你的健康 无疑地,软件开发者是世界上最久坐不动的职业之一。 每天连坐八到十六小时,休息时间只有一点点,绝对会让你的鲔鱼肚肆无忌惮的生长。肥胖容易扩大罹患其他疾病的风险,
- linux打开最大文件数量1,048,576
tianzhihehe
clinux
File descriptors are represented by the C int type. Not using a special type is often considered odd, but is, historically, the Unix way. Each Linux process has a maximum number of files th
- java语言中PO、VO、DAO、BO、POJO几种对象的解释
衞酆夼
javaVOBOPOJOpo
PO:persistant object持久对象
最形象的理解就是一个PO就是数据库中的一条记录。好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。
BO:business object业务对象
封装业务逻辑的java对象