
Java技术
文章平均质量分 85
codematrixer
深知知识虽不是改变命运的充要条件但却是丰富生命体验的必要积累!!
展开
-
Java数据库连接池 学习笔记
背景对于一个简单的数据库应用,由于对于数据库的访问不是很频繁。这时可以简单地在需要访问数据库时,就新创建一个连接,用完后就关闭它,这样做也不会带来什么明显的性能上的开销。但是对于一个复杂的数据库应用,情况就完全不同了。频繁的建立、关闭连接,会极大的减低系统的性能,因此对于连接的使用成了系统性能的瓶颈。正是由于以上原因,数据库连接池技术出现了!! 数据库连接池负责分配,管理和释放数据库连接,它允许原创 2016-10-17 21:21:04 · 4592 阅读 · 1 评论 -
Web Service (SOAP)和HTTP接口的区别
什么是web service?soap请求是HTTP POST的一个专用版本,遵循一种特殊的xml消息格式Content-type设置为: text/xml任何数据都可以xml化。 SOAP:简单对象访问协议,简单对象访问协议(SOAP)是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。 SOAP 可以和现存的许多转载 2016-09-29 17:27:43 · 33162 阅读 · 0 评论 -
HttpClient学习笔记 --发送Http和Https请求
前言在前面有一章我转载过一篇关于HttpClient的文章:HttpClient使用详解,在那篇文章中详细讲解了HttpClient的特性,使用方法和实例。 这篇文章主要就上篇文章进一步浓缩,封装了HttpClient发送http和https请求的方法,形成一个工具类HttpClientUtil,大家以后在用到网络请求时,直接用这个工具类即可。本文是为后续接口测试框架系列的文章做铺垫,大家可以好好原创 2016-10-31 21:38:26 · 11120 阅读 · 4 评论 -
HttpClient学习笔记 --发送Cookie
简介前面一篇博文HttpClient学习笔记 – 发送Http和Https请求 ,我主要讲HttpClient的get,post基本方法的封装。现在有这样一个场景:比如我们在天猫购物时,想浏览购物车中的商品,做这步操作的前提是我们的app必须是已登录状态,也就是说某些资源或业务只有登录后才可以操作和查看。上面的这个场景,app端和服务端其实是做了如下的操作:app端向服务端发送一个请求,也就是访问原创 2016-11-01 14:46:15 · 9508 阅读 · 1 评论 -
JVM类加载机制
概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。与那些在编译时需要进行链接工作的语言不同,在Java语言里,类型的加载、连接和初始化过程都是在程序运行期间完成的,例如import java.util.*下面包含很多类,但是,在程序运行的时候,虚拟机只会加载哪些我们程序需要的转载 2016-11-21 12:41:11 · 663 阅读 · 0 评论 -
理解Java虚拟机体系结构
1 概述 众所周知,Java支持平台无关性、安全性和网络移动性。而Java平台由Java虚拟机和Java核心类所构成,它为纯Java程序提供了统一的编程接口,而不管下层操作系统是什么。正是得益于Java虚拟机,它号称的“一次编译,到处运行”才能有所保障。1.1 Java程序执行流程 Java程序的执行依赖于编译环境和运行环境。源码代码转变成可执行的机器代码,由下面的流程转载 2016-11-21 12:43:49 · 599 阅读 · 0 评论 -
Java 堆、栈、方法区的区别
结构化语言里函数(子程序)调用最方便的实现方式就是用栈,以至于现在绝大部分芯片都对栈提供芯片级的硬件支持,一条指令即可搞定栈的pop操作。栈的好处是:方便、快、有效避免内存碎片化。栈的问题是:不利于管理大内存(尤其在16位和32位时代)、数据的生命周期难于控制(栈内的有效数据通常是连续存储的,所以pop时后申请的内存必须早于先申请的内存失效),所以栈不利于动态地管理并且有效地利用宝贵的内存资源。于是原创 2016-11-21 12:49:10 · 11564 阅读 · 4 评论 -
在MAC平台下使用Eclipse出现了中文乱码
在MAC平台下使用Eclipse出现了中文乱码 在Preference(偏好设置)中,搜索框中输入content找到Content Types,然后在text中找到并选中Java Source File,然后在Defalut encoding输入UTF-8或者输入GBK(具体输入哪个你根据源代码的中文乱码变化区分和尝试),最后点击Update按钮更新就可以了。原创 2016-12-21 15:53:08 · 747 阅读 · 0 评论 -
Protobuffer 和 Json 深度对比
JSON相信大家都知道是什么东西,如果不知道,那可就真的OUT了,GOOGLE一下去。这里就不介绍啥的了。Protobuffer大家估计就很少听说了,但如果说到是GOOGLE搞的,相信大家都会有兴趣去试一下,毕竟GOOGLE出口,多属精品。Protobuffer是一个类似JSON的一个传输协议,其实也不能说是协议,只是一个数据传输的东西罢了。那它跟JSON有什么区别呢?转载 2017-01-24 17:50:04 · 2057 阅读 · 0 评论 -
Java通过JDBC 进行Dao层的封装
前言前面有一章节,我专门讲解了Java通过JDBC 进行MySQL数据库操作,这主要讲解了MaySQL数据库的连接和简单的操作,但是在真正的java项目中,我们要不断的和数据库打交道,为了提高数据库操作的执行效率和增加代码的复用性,将重新封装一个Dao层,也就是数据访问层 ,用来访问数据库实现数据的持久化。Dao层设计Dao层操作通用的步骤:1.写SQL语句2.获取连接3.创建stmt4.执原创 2016-10-16 23:50:33 · 9334 阅读 · 0 评论 -
Java通过JDBC 进行MySQL数据库操作
一:前言在测试工作中难免会和数据库打交道,可能大家对数据库语句都比较熟,比如常见的增删改查等,但是当我们在做自动化测试时,比如接口测试,大部分请求参数,可能都是从数据库中取值,并且接口返回值最后都会记录在数据库中,这样前提就需要和数据库建立连接,才能进行读写操作。二:JDBC是什么java提供了一个API也就是JDBC(Java Data Base Connectivity),可以为多种关系数据库提原创 2016-10-10 16:46:41 · 10146 阅读 · 0 评论 -
Token ,Cookie和Session的区别--学习笔记
传统身份验证HTTP 是一种没有状态的协议,也就是它并不知道是谁是访问应用。这里我们把用户看成是客户端,客户端使用用户名还有密码通过了身份验证,不过下回这个客户端再发送请求时候,还得再验证一下。解决的方法就是,当用户请求登录的时候,如果没有问题,我们在服务端生成一条记录,这个记录里可以说明一下登录的用户是谁,然后把这条记录的 ID 号发送给客户端,客户端收到以后把这个 ID 号存储在 Cookie原创 2016-09-09 12:18:04 · 23953 阅读 · 9 评论 -
Log4j详细使用教程
本文转载自:http://blog.youkuaiyun.com/evankaka/article/details/45815047日志是应用软件中不可缺少的部分,Apache的开源项目Log4j是一个功能强大的日志组件,提供方便的日志记录。在apache网站:jakarta.apache.org/log4j 可以免费下载到Log4j最新版本的软件包。一、入门实例本例子工程下载转载 2016-08-24 11:02:47 · 611 阅读 · 0 评论 -
Maven在Mac OS环境配置
一:安装maven1. 下载Maven Mac安装包http://maven.apache.org/download.cgi2. 下载后解压到某个文件夹下如图:3. 配置环境变量cd 到用户路径, cd ~新建文件修改MAVEN_HOME=/Users/boolin/develop/apache-maven-3.0.5 PATH=$PATH:$MAVEN_HOME/binexport MAVEN_原创 2016-08-25 18:43:00 · 1001 阅读 · 0 评论 -
HttpClient 使用详解
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会转载 2016-10-09 15:57:44 · 868 阅读 · 0 评论 -
Jackson框架,实现Java对象/Json/XML相互转换
Jackson 框架,轻易转换JSONJackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html相比json-lib框架,Jackson所依赖的jar包较少转载 2016-10-09 16:11:42 · 5072 阅读 · 2 评论 -
单元测试断言利器 AssertJ
前言 由于JUnit的Assert是公认的烂API,所以不推荐使用,目前推荐使用的是AssertJ。AssertJ网站: http://joel-costigliola.github.io/assertj/github上examples 地址 https://github.com/joel-costigliola/assertj-examples附件中asse转载 2016-09-07 16:33:02 · 2122 阅读 · 0 评论 -
Eclipse打包成jar文件的两种方法
方案一:用Eclipse自带的Export功能步骤1:准备主清单文件 “MANIFEST.MF”,由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目下建立文件MANIFEST.MF,内容如下:Manifest-Version: 1.0Class-Path: lib/commons-codec.jar lib/commons-转载 2016-09-26 15:33:22 · 35654 阅读 · 0 评论 -
TestNG实现用例运行失败自动截图和重跑
在前面我的自动化测试框架系列文章中,有一个知识点没有讲到,现在补上。 在运行自动测试脚本时,经常会需要增加失败时自动截图的功能,以及失败重跑功能,下面介绍一下通过监听器的方式来实现自动截图和重跑功能。一:失败自动截图功能1. 定义一个截图工具类:ScreenShotpackage com.dji.utils;import java.io.File;import java.text.SimpleD原创 2016-09-27 20:58:11 · 8549 阅读 · 11 评论 -
String.matches()的用法
本文系转载:http://blog.youkuaiyun.com/amaowolf/article/details/7758215String.matches() 这个方法主要是返回是否匹配指定的字符串,如果匹配则为true,否则为false;如:/** * 判断字符创是否是一个有效的日期 * * @param theStr * @return t转载 2016-09-29 22:42:22 · 754 阅读 · 0 评论 -
BeanUtils组件 学习笔记
一:BeanUtils组件简介1.什么是BeanUtils程序中对javabean的操作很频繁, 所以apache提供了一套开源的api,方便对javabean的操作,即BeanUtils组件。2.BeanUtils的作用简化javabean的操作。 在一般的写bean组件的时候,都必须要写setter和getter方法,当然假如我们事先已经知道bean的相关属性和方法,写bean是比较简单的。3原创 2016-10-16 15:48:52 · 2869 阅读 · 0 评论