- 史上最详细的测试用例写作规范
心软小念
测试用例
软件测试用例得出软件测试用例的内容,其次,按照软件测试写作方法,落实到文档中,两者是形式和内容的关系,好的测试用例不仅方便自己和别人查看,而且能帮助设计的时候考虑的更周。一个好的测试用例必须包含足够的内容,将这些内容可以拆分为八个要素:用例编号、测试项目、测试标题、重要级别、预置条件、测试输入、操作步骤、预期输出。1、用例编号1)规则:是由字符和数字组成的字符串,具有唯一性、易识别性。2)不同阶段
- java selenium 元素点击不了
马达马达达
selenium测试工具
最近做了一个页面爬取,很有意思被机缘巧合下解决了。这个元素很奇怪,用xpath可以定位元素,但是就是click()不了。试过了网上搜的一些办法://尝试一WebElementa_tag=driver.findElement(By.xpath("xxx"));a_tag.click();//点击不了,卡住//尝试二WebDriverWaitwait=newWebDriverWait(driver,1
- 【学习】软件测试中,我们如何有效地跟踪和管理缺陷?
青岛国之信检测
学习压力测试单元测试测试覆盖率功能测试安全性测试
在软件测试中,如何有效地跟踪和管理缺陷?别急,一起来看下小编今日带来的分享。1.缺陷报告建立一个缺陷报告系统,让用户和团队成员能够提交缺陷报告。确保缺陷报告中包括清晰的问题描述、重现步骤、预期结果和实际结果等信息。2.分类和优先级对缺陷进行分类和确定优先级。将缺陷按照严重程度、影响范围和紧急程度等进行分类,根据影响用户体验和产品功能的重要性来确定每个缺陷的优先级。3.设定标准建立一套标准和准则来评
- 接口测试之测试原则、测试用例、测试流程......
程序员老鹰
测试工具功能测试测试用例测试覆盖率系统安全
一、接口的介绍软件测试中,常说的接口有两种:图形用户接口(GUI,人与程序的接口)、应用程序编程接口(API)。接口(API)是系统与系统之间,模块与模块之间或者服务与服务之间相互调用的入口。它的本质:其实就是一种约定,在开发前期,我们约定接口会接收什么数据;在处理完成后,它又会返回什么数据。开发岗位分为前端和后端,他们相互配合完成工作,会协商接口的定义方法。一般后端定义接口,前端调用接口。前后端
- 【软件测试】如何设计自动化测试脚本
咖啡加剁椒④
软件测试软件测试功能测试自动化测试程序人生职场和发展
软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)【持续更新最新版】-CSDN博客企业中如何设计自动化测试脚本呢?今天我们就来为大家分享一些干货。一、线性设计线性脚本设计方式是以脚本的方式体现测试用例,是一种非结构化的编码方式,多数采用录制+回放的方式,测试工程师通过录制+回访的访问对被测系统进行自动化测试,录制的脚本会产生某些冗余的代码内容或函数及脚本。线性设计
- 软件测试 - postman高级使用
咖啡加剁椒⑧
软件测试postmanlua测试工具软件测试自动化测试程序人生功能测试
断言概念:让程序代替人判断测试用例执行的结果是否符合预期的一个过程特点:postman断言使用js编写,断言写在postman的tests中tests脚本在发送请求之后执行,会把断言的结果最终在testresult中进行展示常用的postman提供的断言片段有以下几个:statuscodeis200:断言响应状态码是否为200JSONvaluecheck:断言响应体json数据校验contains
- 【Selenium】常用断言及Assert常用方法
墨撕酒家
seleniumUI自动化测试selenium测试工具
一、项目中我常用的断言方式:根据页面URL页面的标题页面的提示信息页面关键字以及一些逻辑处理后的元素信息等方式二、断言——Assert(继承于Object)的一些方法AssertEquals(Stringactual,Stringexpected)Assert.assertTrue(Boolean)有时候同一个场景,既可以用AssertEquals也可以用Assert.assertTrue做断言1
- TestLink管理测试
robot_test_boy
测试是一个过程。从测试计划开始,然后进行测试用例的设计、测试执行直至测试结果分析和报告,贯穿软件开发生命周期。对于上规模的软件团队,同时会有多个项目在运行,而且其中一些是大项目,可能要设计几千个、甚至几万个测试用例。如果通过手工方式进行文档管理,那么工作量很大,效率低。我们必须借助基于数据库、XML等技术的测试管理系统,实现测试管理的自动化。软件测试管理工具能管理整个测试过程,可以提高测试用例的复
- 全网最全的软件测试面试八股
测试1998
软件测试自动化测试python测试工具测试用例面试职场和发展
视频学习:文末有免费的配套视频可观看点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快Part11、你的测试职业发展是什么?测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程师的要点去要求自己,不断更新自己改正自己,做好测试任务。优势在于我对测试坚定不移的信心和热情,虽然经验还不够,
- 【python】自动化工具Selenium与playwright去除webdriver检测
音乐学家方大刚
爬虫Pythonpython自动化selenium
对这个世界如果你有太多的抱怨跌倒了就不敢继续往前走为什么人要这么的脆弱堕落请你打开电视看看多少人为生命在努力勇敢的走下去我们是不是该知足珍惜一切就算没有拥有周杰伦《稻香》#-*-coding:utf-8-*-importtimefromseleniumimportwebdriverfromselenium.webdriver.edge.serviceimportServiceoption=webd
- Selenium教程:一文了解Selenium的元素查找
旦莫
#Selenium教程selenium测试工具python
注:本文内容基于selenium3.141.0Selenium的元素查找指的是使用SeleniumWebDriver库中提供的方法来定位和操作网页上的各种元素,如文本框、按钮、下拉框、链接等。通过元素查找,可以在自动化测试中模拟用户操作,比如输入文本、点击按钮、选择下拉选项等。Selenium提供了多种元素查找的方法,可以根据元素的特征和位置来进行定位。常用的元素查找方法包括:通过ID查找元素通过
- web端自动化基础
ln111
一、认识web自动化测试什么是自动化测试?了解为什么要进行自动化测试?掌握自动化测试的分类?web自动化测试的使用条件和场景自动化测试工具的优缺点自动化测试的前景和发展方向1.1什么是自动化测试1.1.1自动化测试的概念软件自动化测试就是通过测试工具或者其他手段,按照测试人员的预定计划对软件产品进行自动化测试,他是软件测试的一个重要组成部分,能够完成许多手工测试无法完成或者难以实现的测试工作,正确
- selenium被识别,修改navigator的方法
音乐学家方大刚
爬虫seleniumchrome爬虫
#-*-coding:utf-8-*-importtimefromseleniumimportwebdriverfromselenium.webdriver.chrome.optionsimportOptionschrome_options=Options()#chrome_options.add_argument('--headless')#chrome_options.add_argument
- Selenium WebDriver 中用于查找网页元素的两个方法
铁松溜达py
selenium测试工具
这里提供了SeleniumWebDriver中用于查找元素的两个方法:find_element()和find_elements()。find_element(by='id',value:Optional[str]=None)→selenium.webdriver.remote.webelement.WebElement这个方法用于查找满足指定定位策略(Bystrategy)和定位器(locator
- 谷歌浏览器使用selenium的驱动chromedriver 116~118版本,解决版本不匹配问
美美打不死
seleniumpython
**谷歌浏览器使用selenium的驱动chromedriver116~118版本,解决版本不匹配问题**下载链接:https://googlechromelabs.github.io/chrome-for-testing/#stable
- 软件测试学习笔记丨数据库基础知识
软件测试大空翼
学习笔记数据库自动化测试测试开发软件测试
本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/30175数据库数据库基础知识数据库简介数据库(DataBase)就是一个以某种有组织的方式存储的数据集合是存储和管理数据的仓库其本质是一个文件系统数据库管理系统(DBMS)是一款管理软件数据库分类关系型数据库(RDB:RelationshipDataBase)非关系型数据库(NoSQL)使用场景关系型数据库需
- 怎样开始用selenium进行自动化测试?
Spider赵毅
selenium测试工具python
在当今的软件开发过程中,自动化测试已成为确保应用程序质量和效率的关键工具。其中,Selenium作为一个强大的自动化测试工具,已经被广泛应用于Web应用程序的自动化测试。但初学者要如何使用Selenium进行自动化测试?这当中包括Selenium的基础知识、安装配置、编写测试脚本、运行测试以及结果验证等方面的内容,今天我们就来系统为大家解说一下。首先,我们要知道Selenium是什么。Seleni
- scrapy 爬取当当网-图书排行榜-多条件爬取
韩小禹
自学爬虫框架scrapy,爬取当当网-图书排行榜练手目标:爬取当当网-图书畅销榜中的图书数据,要求各种条件的数据都要有。dangdang.pngspider#-*-coding:utf-8-*-importscrapyfromdd_book.itemsimportDdBookItemfromseleniumimportwebdriverfromselenium.common.exceptionsi
- 2023-selenium 实现知乎自动登录(第三方登录/使用cookie自动登录)+指定用户的信息相关搜集(2023.3)
irontys
seleniumpythonchrome
目录零、写在前面一、自动登录:数据采集前,个人账号应通过程序自动登录,若遇到验证码可在程序中手动输入并继续登录二、指定用户基本属性信息采集三、社交关系信息四、动态信息(一)本文在多线程加速方面做了许多尝试:1.所有的信息处理按顺序执行缺点:2.将所有的信息处理统统并行(X)(1)缺点3.提问信息和其他信息搜集两个线程并行五、监控信息变化六、可视化:以Web形式较美观的展示采集到的数据附录(一)使用
- 【iPhone16】iPhone16抢购脚本 苹果官网抢购 iPhone16 pro max
腹有诗书气自华777
chromepython
fromseleniumimportwebdriverimporttimedefclick_element(driver,xpath):element=driver.find_element_by_xpath(xpath)driver.execute_script("arguments[0].click();",element)defmain():#设置浏览器驱动路径driver_path="./
- 外包干了5天,技术退步明显。。。。。
sszmvb1234
软件测试面试软件测试自动化测试
在湖南的一个安静角落,我,一个普通的大专生,开始了我的软件测试之旅。四年的外包生涯,让我在舒适区里逐渐失去了锐气,技术停滞不前,仿佛被时间遗忘。然而,生活的转机总是在不经意间降临。与女友的分手,让我重新审视了自己。我开始反思,难道我真的要这样一成不变地过下去吗?我想要的不只是安稳,更是技术的进阶与突破。于是,我下定决心,要冲击大厂,找回失去的自我。但现实是残酷的,长时间的功能测试工作让我几乎忘记了
- selenium常见控件实际应用
糖果店的幽灵
seleniumselenium测试工具
selenium常见控件实际应用搜索框按钮复选框链接select下拉框input下拉框表格框架javaScipt弹窗非javaScript弹窗时间控件文件下载搜索框按钮复选框链接select下拉框input下拉框表格框架javaScipt弹窗非javaScript弹窗时间控件文件下载
- selenium模拟鼠标操作详解
测试老哥
python软件测试自动化测试职场和发展接口测试selenium测试工具
前言我们在做Web自动化的时候,有时候页面的元素不需要我们点击,值需要把鼠标移动上去就能展示各种信息。这个时候我们可以通过操作鼠标来实现,接下来我们来讲一下使用selenium做Web自动化的时候如何来操作鼠标。鼠标操作,我们可以使用selenium的ActionChains类来实现,我们先来认识一下这个类。同时,在这我准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看
- 初级软件测试面试题
测试界的世清
自动化测试软件测试技术分享集成测试学习
【软件测试面试突击班】2024吃透软件测试面试最全八股文攻略教程,一周学完让你面试通过率提高90%!(自动化测试)今天是一场线下面试,面试的流程又有所不同了,这一次是先做了笔试,然后才看是的面试。今天的内容有点长,我也把它记下来给大家分享一下,同时这一次我把简历放进来,大家可以参考,但是更希望大家给我一点建议。首先笔试大概一个小时,答题过程是自己独自在一个小房间里面,也可以使用手机。内容一共四页,
- 软件测试基础理论(一)
allyxmiko
计算机软件的分类按层次划分系统软件如:操作系统支持软件如:DBMS(数据库管理软件)应用软件如:很多...按结构划分单机软件如:WinRAR分布式软件C/S如:QQ,LOLB/S如:淘宝,天猫网格计算如:Googlemap,GoogleEarth云计算如:阿里云按组织划分开源软件(开源不代表免费)闭源(商业)软件软件缺陷的由来Bug(在计算机中相当于Error)Defect(缺陷)缺陷的定义软件未
- 2024华为软件测试笔试面试真题,抓紧收藏不然就看不到了
咖啡加剁椒..
软件测试华为面试职场和发展功能测试软件测试自动化测试程序人生
一、选择题1、对计算机软件和硬件资源进行管理和控制的软件是(D)A.文件管理程序B.输入输出管理程序C.命令出来程序D.操作系统2、在没有需求文档和产品说明书的情况下只有哪一种测试方法可以进行的(A)A.错误推测法测试B.路劲分析测试C.语句覆盖测试D.条件覆盖测试3、某测试人员通过执行测试软件测试的方法对当前功能进行了测试,该测试人员使用的测试方法为(C)A.静态测试B.单元测试C.黑盒测试4、
- 2022 Java 核心概念知识点
我是王小贱
面试技巧javajvm开发语言
2022Java核心概念知识点JavaDevelopmentTestPractice(软件测试)什么是黑盒测试?什么是白盒测试?什么是灰盒测试?StringString、StringBuffer、StringBuilderString和char的区别StringBuffer、StringBuilder的区别?常用字符集LockinJava(Java里的锁)什么是CAS?介绍一下synchroniz
- 软件测试面试题(含答案)
程序员威子
安全性测试功能测试程序人生面试职场和发展
1、你的测试职业发展是什么?测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程师的要点去要求自己,不断更新自己改正自己,做好测试任务。优势在于我对测试坚定不移的信心和热情,虽然经验还不够,但测试需要的基本技能我有信心在工作中得以发挥。2、你认为测试人员需要具备哪些素质做测试应该要有一定的协调能
- python鼠标移动事件_python+selenium 鼠标事件操作方法
weixin_39905037
python鼠标移动事件
一、前言除了可以使用click()来模拟鼠标的单击操作,现在Web产品中还提供了更丰富的鼠标交互方式,例如鼠标右键、双击、悬停、拖动等功能,在WebDriver中,将这些关于鼠标操作的方法都封装在ActionChains类中。ActionChains类提供了鼠标操作的常用方法:perform()执行所有ActionChains中存储的行为context_click()右击double_click(
- 【selenium】WebElement常用api、WebDriver常用api、三种等待方式
墨撕酒家
seleniumUI自动化测试selenium测试工具
目录一、WebElement1、click()——触发当前元素的点击事件2、clear()——清空内容3、sendKeys(...)4、按键操作,回车解决button不好定位和点击的情况,用回车去解决5、getTagName()——获取元素的的标签名6、getAttribute(当前标签具有的属性名称)——获取属性值()根据属性名获取元素属性值常用于断言7、getText()——获取当前元素的文本
- tomcat基础与部署发布
暗黑小菠萝
Tomcat java web
从51cto搬家了,以后会更新在这里方便自己查看。
做项目一直用tomcat,都是配置到eclipse中使用,这几天有时间整理一下使用心得,有一些自己配置遇到的细节问题。
Tomcat:一个Servlets和JSP页面的容器,以提供网站服务。
一、Tomcat安装
安装方式:①运行.exe安装包
&n
- 网站架构发展的过程
ayaoxinchao
数据库应用服务器网站架构
1.初始阶段网站架构:应用程序、数据库、文件等资源在同一个服务器上
2.应用服务和数据服务分离:应用服务器、数据库服务器、文件服务器
3.使用缓存改善网站性能:为应用服务器提供本地缓存,但受限于应用服务器的内存容量,可以使用专门的缓存服务器,提供分布式缓存服务器架构
4.使用应用服务器集群改善网站的并发处理能力:使用负载均衡调度服务器,将来自客户端浏览器的访问请求分发到应用服务器集群中的任何
- [信息与安全]数据库的备份问题
comsci
数据库
如果你们建设的信息系统是采用中心-分支的模式,那么这里有一个问题
如果你的数据来自中心数据库,那么中心数据库如果出现故障,你的分支机构的数据如何保证安全呢?
是否应该在这种信息系统结构的基础上进行改造,容许分支机构的信息系统也备份一个中心数据库的文件呢?
&n
- 使用maven tomcat plugin插件debug关联源代码
商人shang
mavendebug查看源码tomcat-plugin
*首先需要配置好'''maven-tomcat7-plugin''',参见[[Maven开发Web项目]]的'''Tomcat'''部分。
*配置好后,在[[Eclipse]]中打开'''Debug Configurations'''界面,在'''Maven Build'''项下新建当前工程的调试。在'''Main'''选项卡中点击'''Browse Workspace...'''选择需要开发的
- 大访问量高并发
oloz
大访问量高并发
大访问量高并发的网站主要压力还是在于数据库的操作上,尽量避免频繁的请求数据库。下面简
要列出几点解决方案:
01、优化你的代码和查询语句,合理使用索引
02、使用缓存技术例如memcache、ecache将不经常变化的数据放入缓存之中
03、采用服务器集群、负载均衡分担大访问量高并发压力
04、数据读写分离
05、合理选用框架,合理架构(推荐分布式架构)。
- cache 服务器
小猪猪08
cache
Cache 即高速缓存.那么cache是怎么样提高系统性能与运行速度呢?是不是在任何情况下用cache都能提高性能?是不是cache用的越多就越好呢?我在近期开发的项目中有所体会,写下来当作总结也希望能跟大家一起探讨探讨,有错误的地方希望大家批评指正。
1.Cache 是怎么样工作的?
Cache 是分配在服务器上
- mysql存储过程
香水浓
mysql
Description:插入大量测试数据
use xmpl;
drop procedure if exists mockup_test_data_sp;
create procedure mockup_test_data_sp(
in number_of_records int
)
begin
declare cnt int;
declare name varch
- CSS的class、id、css文件名的常用命名规则
agevs
JavaScriptUI框架Ajaxcss
CSS的class、id、css文件名的常用命名规则
(一)常用的CSS命名规则
头:header
内容:content/container
尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
左右中:left right
- 全局数据源
AILIKES
javatomcatmysqljdbcJNDI
实验目的:为了研究两个项目同时访问一个全局数据源的时候是创建了一个数据源对象,还是创建了两个数据源对象。
1:将diuid和mysql驱动包(druid-1.0.2.jar和mysql-connector-java-5.1.15.jar)copy至%TOMCAT_HOME%/lib下;2:配置数据源,将JNDI在%TOMCAT_HOME%/conf/context.xml中配置好,格式如下:&l
- MYSQL的随机查询的实现方法
baalwolf
mysql
MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。但是,后来我查了一下MYSQL的官方手册,里面针对RAND()的提示大概意思就是,在ORDER BY从句里面不能使用RAND()函数,因为这样会导致数据列被多次扫描。但是在MYSQL 3.23版本中,
- JAVA的getBytes()方法
bijian1013
javaeclipseunixOS
在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这个表示在不同OS下,返回的东西不一样!
String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示,如:
byte[] b_gbk = "
- AngularJS中操作Cookies
bijian1013
JavaScriptAngularJSCookies
如果你的应用足够大、足够复杂,那么你很快就会遇到这样一咱种情况:你需要在客户端存储一些状态信息,这些状态信息是跨session(会话)的。你可能还记得利用document.cookie接口直接操作纯文本cookie的痛苦经历。
幸运的是,这种方式已经一去不复返了,在所有现代浏览器中几乎
- [Maven学习笔记五]Maven聚合和继承特性
bit1129
maven
Maven聚合
在实际的项目中,一个项目通常会划分为多个模块,为了说明问题,以用户登陆这个小web应用为例。通常一个web应用分为三个模块:
1. 模型和数据持久化层user-core,
2. 业务逻辑层user-service以
3. web展现层user-web,
user-service依赖于user-core
user-web依赖于user-core和use
- 【JVM七】JVM知识点总结
bit1129
jvm
1. JVM运行模式
1.1 JVM运行时分为-server和-client两种模式,在32位机器上只有client模式的JVM。通常,64位的JVM默认都是使用server模式,因为server模式的JVM虽然启动慢点,但是,在运行过程,JVM会尽可能的进行优化
1.2 JVM分为三种字节码解释执行方式:mixed mode, interpret mode以及compiler
- linux下查看nginx、apache、mysql、php的编译参数
ronin47
在linux平台下的应用,最流行的莫过于nginx、apache、mysql、php几个。而这几个常用的应用,在手工编译完以后,在其他一些情况下(如:新增模块),往往想要查看当初都使用了那些参数进行的编译。这时候就可以利用以下方法查看。
1、nginx
[root@361way ~]# /App/nginx/sbin/nginx -V
nginx: nginx version: nginx/
- unity中运用Resources.Load的方法?
brotherlamp
unity视频unity资料unity自学unityunity教程
问:unity中运用Resources.Load的方法?
答:Resources.Load是unity本地动态加载资本所用的方法,也即是你想动态加载的时分才用到它,比方枪弹,特效,某些实时替换的图像什么的,主张此文件夹不要放太多东西,在打包的时分,它会独自把里边的一切东西都会集打包到一同,不论里边有没有你用的东西,所以大多数资本应该是自个建文件放置
1、unity实时替换的物体即是依据环境条件
- 线段树-入门
bylijinnan
java算法线段树
/**
* 线段树入门
* 问题:已知线段[2,5] [4,6] [0,7];求点2,4,7分别出现了多少次
* 以下代码建立的线段树用链表来保存,且树的叶子结点类似[i,i]
*
* 参考链接:http://hi.baidu.com/semluhiigubbqvq/item/be736a33a8864789f4e4ad18
* @author lijinna
- 全选与反选
chicony
全选
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>全选与反选</title>
- vim一些简单记录
chenchao051
vim
mac在/usr/share/vim/vimrc linux在/etc/vimrc
1、问:后退键不能删除数据,不能往后退怎么办?
答:在vimrc中加入set backspace=2
2、问:如何控制tab键的缩进?
答:在vimrc中加入set tabstop=4 (任何
- Sublime Text 快捷键
daizj
快捷键sublime
[size=large][/size]Sublime Text快捷键:Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件Ctrl+Shift+W:关闭所有打开文件Ctrl+Shift+V:粘贴并格式化Ctrl+D:选择单词,重复可增加选择下一个相同的单词Ctrl+L:选择行,重复可依次增加选择下一行Ctrl+Shift+L:
- php 引用(&)详解
dcj3sjt126com
PHP
在PHP 中引用的意思是:不同的名字访问同一个变量内容. 与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容在内存中存放的地址 变量的引用 PHP 的引用允许你用两个变量来指向同一个内容 复制代码代码如下:
<?
$a="ABC";
$b =&$a;
echo
- SVN中trunk,branches,tags用法详解
dcj3sjt126com
SVN
Subversion有一个很标准的目录结构,是这样的。比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是svn://proj/|+-trunk+-branches+-tags这是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改)。但是具体这几个目录应该如何使用,svn并没有明确的规范,更多的还是用户自己的习惯。
- 对软件设计的思考
e200702084
设计模式数据结构算法ssh活动
软件设计的宏观与微观
软件开发是一种高智商的开发活动。一个优秀的软件设计人员不仅要从宏观上把握软件之间的开发,也要从微观上把握软件之间的开发。宏观上,可以应用面向对象设计,采用流行的SSH架构,采用web层,业务逻辑层,持久层分层架构。采用设计模式提供系统的健壮性和可维护性。微观上,对于一个类,甚至方法的调用,从计算机的角度模拟程序的运行情况。了解内存分配,参数传
- 同步、异步、阻塞、非阻塞
geeksun
非阻塞
同步、异步、阻塞、非阻塞这几个概念有时有点混淆,在此文试图解释一下。
同步:发出方法调用后,当没有返回结果,当前线程会一直在等待(阻塞)状态。
场景:打电话,营业厅窗口办业务、B/S架构的http请求-响应模式。
异步:方法调用后不立即返回结果,调用结果通过状态、通知或回调通知方法调用者或接收者。异步方法调用后,当前线程不会阻塞,会继续执行其他任务。
实现:
- Reverse SSH Tunnel 反向打洞實錄
hongtoushizi
ssh
實際的操作步驟:
# 首先,在客戶那理的機器下指令連回我們自己的 Server,並設定自己 Server 上的 12345 port 會對應到幾器上的 SSH port
ssh -NfR 12345:localhost:22
[email protected]
# 然後在 myhost 的機器上連自己的 12345 port,就可以連回在客戶那的機器
ssh localhost -p 1
- Hibernate中的缓存
Josh_Persistence
一级缓存Hiberante缓存查询缓存二级缓存
Hibernate中的缓存
一、Hiberante中常见的三大缓存:一级缓存,二级缓存和查询缓存。
Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存是由hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存
- 对象关系行为模式之延迟加载
home198979
PHP架构延迟加载
形象化设计模式实战 HELLO!架构
一、概念
Lazy Load:一个对象,它虽然不包含所需要的所有数据,但是知道怎么获取这些数据。
延迟加载貌似很简单,就是在数据需要时再从数据库获取,减少数据库的消耗。但这其中还是有不少技巧的。
二、实现延迟加载
实现Lazy Load主要有四种方法:延迟初始化、虚
- xml 验证
pengfeicao521
xmlxml解析
有些字符,xml不能识别,用jdom或者dom4j解析的时候就报错
public static void testPattern() {
// 含有非法字符的串
String str = "Jamey친ÑԂ
- div设置半透明效果
spjich
css半透明
为div设置如下样式:
div{filter:alpha(Opacity=80);-moz-opacity:0.5;opacity: 0.5;}
说明:
1、filter:对win IE设置半透明滤镜效果,filter:alpha(Opacity=80)代表该对象80%半透明,火狐浏览器不认2、-moz-opaci
- 你真的了解单例模式么?
w574240966
java单例设计模式jvm
单例模式,很多初学者认为单例模式很简单,并且认为自己已经掌握了这种设计模式。但事实上,你真的了解单例模式了么。
一,单例模式的5中写法。(回字的四种写法,哈哈。)
1,懒汉式
(1)线程不安全的懒汉式
public cla