Java EE

JMeter性能测试基本过程及示例

时间秒杀一切 提交于 2021-01-12 08:47:15
前言 性能测试是我们日常测试过程中,必须掌握的技能。通过进行性能测试,我们能分析服务端的整体性能、负载等,以便进一步评估我们的业务系统是否能满足当前运营生产及未来业务增长情况下如何进一步调整我们的服务配置方案。 jmeter为性能测试提供了一下特色: jmeter可以对测试静态资源(例如js、html等)以及动态资源(例如php、jsp、ajax等等)进行性能测试 jmeter可以挖掘出系统最大能处理的并发用户数 jmeter提供了一系列各种形式的性能分析报告 使用jmeter一般用于以下两种类型的性能测试 负载测试:通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。 压力测试:测试系统能承受的最大负载能力。目的在于发挖掘出目标服务系统可以处理的最大负载。 基本过程 下面我们看下使用jmeter进行性能测试的基本过程。 对上图进行简要的说明 新增线程组 创建测试线程组,并设置线程数量及线程初始化启动方式。 新增JMeter元组 创建各种默认元组及测试元组,填入目标测试静态资源请求和动态资源请求参数及数据。 新增监听器 创建各种形式的结果搜集元组,以便在运行过程及运行结束后搜集监控指标数据。 运行&查看结果 调试运行,分析指标数据,挖掘性能瓶颈、评估系统性能状态、 示例 下面我们以打开百度演示上述过程。 新增线程组

ssm整合

主宰稳场 提交于 2021-01-12 07:03:20
在mybatis和spring整合后 , 在把springmvc整合进来 在maven里创建web工程 然后进行mybatis和spring的整合步骤(写在其他博客里) 在把springmvc 加进来 步骤 引入依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.liy</groupId> <artifactId>SSM-01</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <properties> <spirng.version>4.3.3.RELEASE</spirng.version> </properties> <dependencies> <!-- Spring相关jar包 --> <dependency>

Kafka 学习笔记

北城以北 提交于 2021-01-12 06:55:53
以下部分内容来源于网络摘抄~ 1、简介 Broker : Kafka 服务器 ,一个服务器被称为一个Broker Topic : 每一类消息可以定义一个Topic Partition : 每个Topic都有1个或者多个partition,属于物理上的分隔 offset : 偏移量每个partition中的消息唯一标识 Producer : 消息发布者 Consumer : 消息订阅者 Consumer Group : 属于订阅者独有的概念,默认为统一的group 它提供了类似于JMS的特性,但是在 设计 实现上完全不同,此外它并不是JMS规范的实现。 ①kafka对消息保存时根据Topic进行归类,发送消息者成为Producer,消息接受者成为Consumer, ②此外kafka集群有多个kafka实例组成,每个实例( server )成为 broker 。 ③无论是kafka集群,还是producer和consumer都依赖于 zookeeper 来保证系统可用性集群保存一些meta信息。 2.Topics/logs ① 一个Topic可以认为是一类消息,每个topic将被分成多个partition(区),每个partition在存储层面是append log文件。 ②任何发布到此partition的消息都会被直接追加到log文件的尾部,每条 消息 在文件中的 位置 称为

JavaWeb【1.6jsp中的out与response的输出区别】

断了今生、忘了曾经 提交于 2021-01-11 10:55:38
jsp中的out与response的输出区别 1.response缓冲区的输出优先于out缓冲区中的数据输出 2.使用out.flush操作将out缓冲区中的输出数据添加到response缓冲区中,随后按照response缓冲区中的顺序输出 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>测试页面</title> </head> <body> <% out.write("out输出序列1"); out.flush(); out.write("out输出序列2"); response.getWriter().write("response输出序列1"); response.getWriter().write("response输出序列2"); %> </body> </html> 输出结果: out输出序列1 response输出序列1 response输出序列2 out输出序列2 由于jsp翻译之后底层都是用out来进行输出,我们在jsp页面中统一使用out.print()来进行输出 来源: oschina 链接: https://my.oschina.net/u/4238564/blog/4889385

从零开始学习java一般需要多长时间?

☆樱花仙子☆ 提交于 2021-01-10 09:01:45
从零开始学习java一般需要多长时间? 其实学 java一般要多久?因人而异,例如一个零基础的小白自学java,每天学习8个小时来算,而且在有学习资料的基础上,每天学习,从零到找到工作,起码要半年起步,而且还要有项目经验,否则是不会有公司要你的。而一个有一些基础的人,在经过有人系统的教学后,是可以很快学会掌握java的,大概3个月左右。 不过 java相对于C,C++java而言,java无疑简单了很多,不需要指针,不需要销毁对象,使得对java初学者来讲更容易入门,挫折感也少。 很多人自学 java,因为抓不到学习java的重点,找不到学习java的方向。往往花费大量的时间和精力,而效果却不大。面试IT企业office时或者参与真正的项目开发忽然发现自己一无所知。 我认为正确的学习路径应该是一个月 java基础,两个月JavaSE,半个月html+css+div,一个月的数据库,servlet+jsp一个月,然后SSH框架两个月。然后通起来串一遍,把知识结合起来,再做几个项目练练手,就差不多了。(其实学习java 基础部分需要时间不止一个月,至于说不止一个月,是需要你将java 基础部分完全明白,能够串起来综合运用,甚至需要两遍三遍;之所以这么说,不是为了说java 有多难,而是为了强调基础有多重要。) 我想要告诉你的是学习 Java不难,但是也会很艰辛的敲代码

简单拿网站思路

那年仲夏 提交于 2021-01-10 07:36:17
只提供思路经验分享.不提供日站方法....大牛可以继续补充.. 一般站点那里最容易出现问题 入手思路: 主站一般都很安全.一般从二级域名下手 多看看那些大站新出来的测试分站点 猜路径别忘了google 考虑看站点下的robot.txt或者robots.txt 永远别忘记社会工程学 简单的密码也会有以外收获 别忽视XSS,别忽视cookie,XSS可以偷cookie cookie可以伪造登陆,cookie可以注入,cookie注入可以绕绝大多数的防火墙 注入经常出现的地方: 在文章那里注入,用户登录点,投票,后台,接着是分站,或者update型注入 1.无论什么站,无论什么语言,要渗透,第一件事就是扫目录 2.找上传点. 国外棒子国. 一般都存在于站点论坛. 留言版 必须注册资料后 这里我错了 。台湾是我国不可分割的部分。 对不起大家了。。发个文章都要道歉。以后绝对不发 3.asp(aspx)+MSSQL先考虑注入 出现dbowner权限直接写shell 库分离 那后台入手 上传 或者修改配置 4.asp(aspx)+ACCESS拿shell一般只有3种方法,一是前台上传或者注入进后台上传;二是注入进后台改配置文件;三是注入进后台备份数据库或者暴库后知道是asp或者asa数据库于是直接写一句话; 5.php+MYSQL一般是注入进后台上传,运气好些权限够高可以注入select

SpringMVC的拦截器(Interceptor)和过滤器(Filter)的区别与联系

六眼飞鱼酱① 提交于 2021-01-10 00:35:07
一 简介 (1)过滤器: 依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数据,比如:在过滤器中修改字符编码;在过滤器中修改HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等 关于过滤器的一些用法可以参考我写过的这些 文章 : 继承HttpServletRequestWrapper以实现在Filter中修改HttpServletRequest的参数:https://www.zifangsky.cn/677.html 在SpringMVC中使用过滤器(Filter)过滤容易引发XSS的危险字符:https://www.zifangsky.cn/683.html (2)拦截器: 依赖于web框架,在SpringMVC中就是依赖于SpringMVC框架。在实现上基于 Java 的反射机制,属于面向切面 编程 (AOP)的一种运用。由于拦截器是基于web框架的调用,因此可以使用Spring的依赖注入(DI)进行一些业务操作,同时一个拦截器实例在一个controller生命周期之内可以多次调用。但是缺点是只能对controller请求进行拦截,对其他的一些比如直接访问静态资源的请求则没办法进行拦截处理

Spring 梳理

青春壹個敷衍的年華 提交于 2021-01-09 23:57:32
spring mvc中的Interceptor可以理解为是Spring MVC框架对AOP的一种实现方式。一般简单的功能又是通用的,每个请求都要去处理的,比如判断token是否失效可以使用spring mvc的HanlderInterceptor, 复杂的,比如缓存,需要高度自定义的就用spring aop。一般来说service层更多用spring aop,controller层有必要用到request和response的时候,可以用拦截器。 servlet filter和spring mvc Interceptor区别: 1.拦截器是基于java的反射机制的,而过滤器是基于函数回调。 2.拦截器不依赖与servlet容器,过滤器依赖与servlet容器。 3.拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。 4.拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。 5.在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次。 6.拦截器可以获取IOC容器中的各个bean,而过滤器就不行,这点很重要,在拦截器里注入一个service,可以调用业务逻辑。 servlet filter和spring mvc Interceptor执行顺序: ===========before doFilter1 ========

web测试与移动App测试的常见测试要点

我们两清 提交于 2021-01-09 18:03:28
手机APP项目测试点(内容)总结 对于手机项目(应用软件),主要是进行系统测试。 而针对手机应用软件的系统测试,我们通常从如下几个角度开展测试工作: 功能模块测试 交叉事件测试 性能测试 安全测试 容量测试 兼容性测试 接口测试 易用性/用户体验测试 硬件环境测试 安装/卸载测试 升级/更新测试 1、功能模块测试: 根据软件需求说明书或者用户需求验证app的各个功能是否实现,采用如下方法实现并评估功能测试过程: 采用时间、地点、对象、行为、和背景五元素或业务分析等方法、提炼app的用户使用场景,对比说明和需求,整理出内在,外在及非功能直接相关需求,构建测试点和用例,并明确测试标准,若用户需求中无明确标准遵循,则需要参考行业或相关国际标准或准则。 根据被测试功能点的特性列出相应类型的测试用例对其进行覆盖,如:涉及输入的地方需要考虑等价、边界、负面、异常或非法、场景回滚、关联测试等测试类型对其进行覆盖。 在测试实现的各个阶段跟踪测试实现与需求输入的覆盖情况,及时修正业务或需求理解错误地方。 运行 1)App安装完成后的试运行,可正常打开软件。 2)App打开测试,是否有加载状态进度提示。 3)App打开速度测试,速度是否可观。 4)App页面间的切换是否流畅,逻辑是否正确 5)注册 –同表单编辑页面 –用户名密码长度 –注册后的提示页面 –前台注册页面和后台的管理页面数据是否一致

day64_SpringMVC学习笔记_02

若如初见. 提交于 2021-01-09 17:11:24
1、springmvc对多视图的支持 (1)导入xml格式视图支持的jar包    注意 :springmvc本身就支持xml格式,所以不用导入其他支持的jar包了。 (2)在springmvc.xml中配置支持多视图 <!-- 配置支持多视图 --> < bean class = "org.springframework.web.servlet.view.ContentNegotiatingViewResolver" > <!-- 配置支持的媒体类型 --> <!-- spring3.2后改成如下配置 --> < property name = "contentNegotiationManager" > < bean class = "org.springframework.web.accept.ContentNegotiationManagerFactoryBean" > <!-- 指定多个媒体类型 --> < property name = "mediaTypes" > < map > < entry key = "json" value = "application/json" > </ entry > < entry key = "xml" value = "application/xml" > </ entry > <!-- <entry key="pdf" value