为您找到搜索结果:5879个
测试工程师,选择python还是java?
问:“你平时工作中,用java多还是用python多”?答:“都还可以,根据具体的场景选择不同的语言”。问:“比如说呢”?答:“开发自己的测试平台,肯定会选择java;在centos服务器跑一些脚本,会选择python或shell;某些压测场景,追求高并发,可能会选择go语言”。问:“我java和python都学了一些基础知识,不知道该选择哪种语言”。答:“可以先选择一门你相对擅长的语言,先开始用起来”。这是前两天,一位身边的小伙伴和我的对话。相信有这样疑问的人不在少数,就是自己到底该选择python?还是java?作为自己主要的语言,这样就能专心的将一门语言学好,因为人的精力毕竟是有限的。我先抛出我的观点和建议:“其实语言是次要的,毕竟都是为测试工作服务,不要让选择阻碍了我们前进的脚步。你要做的仅仅是行动起来!就选择python(其实语言无所谓,我的建议如果没基础,就从python开始),先用起来再说。不要怂,就是干!&rdquo...
Android 4.2 获取应用缓存接口变化
PackageManager.getPackageSizeInfo(StringpackageName,IPackageStatsObserverobserver)不可用,改为PackageManager.getPackageSizeInfo(StringpackageName,intuserHandle,IPackageStatsObserverobserver),至于增加的参数userHandle的解释是:Theuserwhosesizeinformationshouldberetrieved。下面是PackageManager内部的用法: publicvoidgetPackageSizeInfo(StringpackageName,IPackageStatsObserverobserver){getPackageSizeInfo(packageName,UserHandle.myUserId(),observer);} 因此,把UserHan...
Spring拓展接口之BeanPostProcessor,我们来看看它的底层实现
开心一刻 小明:“妈,我被公司开除了”,妈:“啊,为什么呀?”,小明:“我骂董事长是笨蛋,公司召开高层会议还要起诉我”,妈:“告你诽谤是吧?”,小明:“不是,他们说要告我泄露公司机密” 不管三七二十一,我们先来看看它的定义,看看spring是如何描述BeanPostProcessor的/**Copyright2002-2016theoriginalauthororauthors.**LicensedundertheApacheLicense,Version2.0(the"License");*youmaynotusethisfileexceptincompliancewiththeLicense.*YoumayobtainacopyoftheLicenseat**http://www.apache.org/licenses/LICENSE-2.0**Unlessrequiredbyapplicablelaworagreedtoinwriting,softw...
Spring拓展接口之BeanFactoryPostProcessor,占位符与敏感信息解密原理
开心一刻 一只被二哈带偏了的柴犬,我只想弄死隔壁的二哈 BeanFactoryPostProcessor接口很简单,只包含一个方法/***通过BeanFactoryPostProcessor,我们自定义修改应用程序上下文中的bean定义**应用上下文能够在所有的bean定义中自动检测出BeanFactoryPostProcessorbean,*并在任何其他bean创建之前应用这些BeanFactoryPostProcessorbean**BeanFactoryPostProcessor对自定义配置文件非常有用,可以覆盖应用上下文已经配置了的bean属性**PropertyResourceConfigurer就是BeanFactoryPostProcessor的典型应用*将xml文件中的占位符替换成properties文件中相应的key对应的value*/@FunctionalInterfacepublicinterfaceBeanFactoryPostProcessor{/***在应用上下文完成了标准的初始化之后,修改其内部的bean工厂*将加载所有bean定义,但尚未实例...
Spring拓展接口之FactoryBean,我们来看看其源码实现
开心一刻 那年去相亲,地点在饭店里,威特先上了两杯水,男方绅士的喝了一口,咧嘴咋舌轻放桌面,手抚额头闭眼一脸陶醉,白水硬是喝出了82年拉菲的感觉。如此有生活情调的幽默男人,果断拿下,相处后却发现他比较木讷,问他为什么那天喝水那么有趣,他仰头道:鬼知道那杯水怎么那么烫啊! FactoryBean的源码比较简单,大家可以细读下其注释,我做了简单的如下翻译/***实现此接口的bean不能用作普通bean。此bean暴露的对象是通过getObject()创建的对象,而不是它自身*/publicinterfaceFactoryBean<T>{/***返回此工厂管理的对象的实例(可能是共享的或独立的,取决于isSingleton()的返回值)*/@NullableTgetObject()throwsException;/***返回此FactoryBean创建的对象类型,*/@NullableClass<?>getObjectType();/***该工厂管理的对象是否为单例?*如果是(returntrue),getObject()总是返回同一个共享的实例,该对象会被...
WebService与RMI(远程调用方式实现系统间通信)
本文是《分布式java应用基础与实践》读书笔记;另外参考了此博客,感觉讲的挺好的,尤其是其中如下内容: 另外,消息方式实现系统间通信本文不涉及。RMI则只采用springRMI框架来实现效果,更多的则是来讲讲webService及效果。 (RemoteMethodInvocation)----》springRMI(配置及实现直接参考spring文档,已经很详细了) springRMI工作原理图如下: RMI代码结构图: 服务端代码 接口Business.java:packagecom.rmi.server;publicinterfaceBusiness{/***显示客户端提供的消息,并返回*@parammessage*@return*/publicStringecho(Stringmessage);}ViewCode 接口实现类BusinessImpl.java:packagecom.rmi.server;publicclassBusinessImplimplementsBusiness{@OverridepublicStringecho(Stringmess...
TDD(测试驱动开发)死了吗?
01、前言很早之前,曾在网络上见到过TDD这3个大写的英文字母,它是TestDrivenDevelopment这三个单词的缩写,也就是“测试驱动开发”的意思——听起来很不错的一种理念。其理念主要是确保两件事:确保所有的需求都能被照顾到。在代码不断增加和重构的过程中,可以检查所有的功能是否正确。但后来很长一段时间里,都没再听过TDD的消息。有人说,TDD已经死了,给出的意见如下:1)通常来说,开发人员不应该在没有失败的测试用例下编写代码——这似乎是合理的,但是它可能导致过度测试。例如,为了保证一行生产代码的正确性,你不由得写了4行测试代码,这意味着一旦这一行生产代码需要修改,你也得修改那4行测试代码。2)为了遵循TDD而写的代码,容易进入一个误区:代码是为了满足测试用的,而忽略了实际需求。02、TDD到底是什么?不管TDD到底死了没有,先让我们来回顾一下TDD到底是什么。TDD的基本思想就是在开发功能代码之前,先编写测试代码。也就是说在明确要开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编...
Java Serializable:明明就一个空的接口嘛
对于Java的序列化,我一直停留在最浅显的认知上——把那个要序列化的类实现 Serializbale 接口就可以了。我不愿意做更深入的研究,因为会用就行了嘛。但随着时间的推移,见到 Serializbale 的次数越来越多,我便对它产生了浓厚的兴趣。是时候花点时间研究研究了。01、先来点理论Java序列化是JDK1.1时引入的一组开创性的特性,用于将Java对象转换为字节数组,便于存储或传输。此后,仍然可以将字节数组转换回Java对象原有的状态。序列化的思想是“冻结”对象状态,然后写到磁盘或者在网络中传输;反序列化的思想是“解冻”对象状态,重新获得可用的Java对象。再来看看序列化Serializbale接口的定义:public interface Serializable {}明明就一个空的接口嘛,竟然能够保证实现了它的“类的对象”被序列化和反序列化?02、再来点实战在回答上述问题之前,我们先来创建一个类(只有两个字段,...
Java:接口和抽象类,傻傻分不清楚?
01、来看网络上对接口的一番解释:接口(英文:Interface),在Java编程语言中是一个抽象类型,是抽象方法的集合。一个类通过继承接口的方式,从而来继承接口的抽象方法。兄弟们,你们怎么看,这段解释把我绕得晕乎乎的,好像喝过一斤二锅头。到底是解释抽象类呢还是接口呢?傻傻分不清楚。搞不清楚要用抽象类还是接口,就先来看看两者之间的区别。来,抽象类和接口,你俩过来比比身高。抽象类中的方法可以有方法体,能实现方法具体要实现的功能,但是接口中的方法不行,没有方法体。抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是publicstaticfinal类型的,并且是隐式的,缺省的。接口中不能含有静态代码块以及静态方法(用static修饰的方法),而抽象类是可以有静态代码块和静态方法的。一个类只能继承一个抽象类,而一个类却可以实现多个接口。02、好像知道了两者之间的区别,但印象还是有些模糊。没关系,我们进一步深入。抽象类抽象类体现了数据抽象的思想(不然呢),是实现多态的一种机制。抽象类定义了一组抽象的方法,至于这组抽象方法的具体表现形式由子类来继承实现。抽象类就是用来继承的,...
处女作《Web全栈开发进阶之路》出版了!
书中源码下载地址:https://github.com/qinggee/WebAdvanced01、当初决定写博客的原因非常的纯洁:只要每个月写上4篇以上博客,月底的绩效奖金就多500块。你可能会好奇地问,哪里会有这么好的公司呢?偷偷地告诉你,这公司没在别处,就在九朝古都洛阳。有个成语叫做“日久生情”。没错,就这样写着写着,我竟然爱上了写作。写作的原动力也随之发生了改变:搞技术这么多年了,总应该留下点什么;或者,至少应该把自己的经验心得分享出来,让那些没掉坑的人不掉坑,掉坑的人从坑底爬出来。于是,我就在CSDN上写啊写,终于把自己写成了博客专家——这是意料之中的事情,因为我为了写作付出了巨大的精力;但意料之外的是,我真的帮助了众多的读者,他们竟然在我的那些“烂博客”下面留言说“受益匪浅”。再后来,竟然还有出版社的编辑朋友邀我写书稿。这也太高看我了吧?记得我的偶像何塞·穆里尼奥刚去切尔西的时候说过一句话:“请不要说我傲慢,因为我只是实话实说,我是欧洲冠军,因此我并非籍...
Java接口的实例应用:致敬我的偶像——何塞·穆里尼奥
文/沉默王二 曹操在《短歌行》中为杜康酒打过一个价值一亿个亿的广告——“何以解忧,唯有杜康”,我替曹操感到惋惜的是他本人并不会收到这笔不菲的代言费。想一想,要是三国时期的明星人物们有这个代言意识的话,保证各家的军费收入会多出来一个重量级的来源。不过,酒真的能解忧吗?我不大敢相信。李白就曾质疑过:“举杯消愁愁更愁,抽刀断水水更流。”我和李白持相同的观点,酒啊,真的不容易解忧,但绝对可以增加作者莫名的写作冲动。我在写本文之前就小酌了一杯,一不小心激发了我强烈的创作欲望。不过我要奉劝各位,寒冬之际,如果遇到烦心事,千万别肆意地追求一醉方休,万事要懂得适可而止。01抽象类一种比较苍白的说法是:在Java中,通过关键字abstract定义的类叫做抽象类。Java是一门面向对象的语言,因此所有的对象都是通过类来描述的;但反过来,并不是所有的类都是用来描述对象的,抽象类就是其中的一种。以下示例展示了一个简单的抽象类:// 个人认为,一名教练必须攻守兼备abstract class Coac...
以聚合数据免费接口为例,通过 Class 类继承方法,让小程序实现项目化接口调用
微信小程序数据来源,是通过接口实现的。但接口如何调,数据如何取?每个人都有不同的方法,下面以聚合数据免费接口为例。配置接口config.js聚合数据请求接口需要以key作为参数。constconfig={api_base_url:"http://apis.juhe.cn/goodbook",key:"93bdf89de207034fa6c7544f88b99c76"};export{config}封装wx.request方法ES6中有类方法可以直接使用,使用HTTP作为类名,新建request作为类的方法,在这个方法中调用wx.request。classHTTP{//requestrequest(params){letthat=this;if(!params.method){params.method='GET';}wx.request({url:config.api_base_url+params.url+"?key="+config.key,data:params.data,method:params.method,header:{'content-type':'applicati...
使用免费 mongodb数据库 + 免费node.js服务器搭建小程序接口
由于微信的小程序只支持不带端口的域名接口,不支持IP地址和接口,所以我们需要映射到80端口并绑定备案过的域名才能被微信小程序访问到。简单点就是接口需要https协议才行,找了许久的免费的数据库与node.js的环境,都不尽人意,下面是整理的可以考虑的免费的产品:通过新浪云部署Node.js微信小程序商城(不用买域名、不用备案、不用配置https如果已经有备案的网站但是没有配置SSL时,可以考虑阿里云免费证书DVSSL,这个免费的证书隐藏的比较隐蔽:证书类型选择Symantec品牌注意,选择之后你并不会看到免费的证书!选择证书类型你还需要选择一下增强型OVSSL,这时免费型DVSSL选项才会出现。使用国外的,国外有三家非常不错的供应商MongoLab和RedisLabs和MongoDBAtlas,可以提供免费的mongodb数据库,可以考虑,需要翻墙免费的node.js服务器heroku,同样需要翻墙,注册需要使用gmail邮箱,偏慢但(推荐)国外的三家免费的mongodb数据库对比: MongoLab 提供500MB免费的云端存储,Mongo目前版本为3...
使用 phpstudy 搭建本地测试环境
最近在为另一个部门配置一个多语言的网站,因为之前他们已经做过 英文和中文两种语言,这次帮他们添加其它几种语言,从GitLab 上拉下来的代码,是php环境做的,需要在本地跑起来,做完测试通过后再一次性提交。 首先需要安装如下几个软件,phpstudy就不说了,这是必须的:navicat 数据库管理工具,不用它也可以,phpstudy有自带的phpMyAdmin;1、拉代码,配置hosts 域名。我的目录是这个位置:D:2018webkitcc2018,因此给它配置的域名为www.cc.com:默认情况下,配置完域名是不能直接访问的,比如输入www.cc.com,会提示一个没有权限访问服务器2、方便查看应用的目录,需要打开配置文件vhosts.conf(网站的目录),默认情况是这样,options 这里默认:OptionsFollowSymLinksExecCGI。options 的指令是控制目录显示哪些服务,我这里主要是为了让应用的目录显示,需要添加Indexesoptions有多...
跨平台 webapp 开发技术之 Hybrid App
前所知的APP开发模式有三种:基于操作系统运行的APP->NativeApp,侧重于原生开发,用户体验好,需要安装才会升级基于浏览器运行的APP->WebApp,侧重于网页技术实现,跨平台兼容性好,只要开发人员更新代码,无需通过安装升级基于移动应用引擎-> HybridApp,使用H5和JS开发。如果不追求用户体检时,这种方式最快也最省钱下面的图摘自简书,是对三种不同形态的APP的对比: HybridAPP是目前广泛流行的一种APP开发模式,Android、iOS、JS三端内容初步都已经完成,有完善的设计思路、教程以及API文档。 HybridApp,这种既有跨平台开发周期短、成本低的基因,又能发挥NativeApp体验和性能的优势,HybridApp混合式移动应用开发逐渐成为企业移动开发的首选。HybridApp通常是基于第三方跨平台移动应用引擎框架进行开发:在国内开发者中比较知名的有PhoneGap、Titanium和AppCan这些引擎框架一般使用HTML5和Javascript作为编程语言,调用引擎封装的底层功能如照相...