- Ansible集成Git的CI/CD流水线详解
wespten
Linux自动化运维智能运维性能监控系统调优TSansibleci/cd
Ansible是一款强大且易用的自动化工具,从简单的任务到复杂的多环境部署,Ansible提供了丰富的功能和灵活性。通过编写结构良好、易于维护的剧本,可以显著提高IT任务的效率和可靠性。将Ansible集成到CI/CD流程中,可以实现自动化的应用部署和测试。常见的集成方式包括:Jenkins:通过Jenkins插件或Pipeline,执行Ansible剧本进行部署。GitLabCI/CD:在Git
- selenuim自动化测试笔记二:元素查找
任性八孔木笛
自动化测试定位seleniumcssxpath
selenuim自动化测试笔记二:元素查找一、查看页面是否包含某段字符串查看页面是否包含“”写法driver.getPageSource().contains("百度一下,你就知道")if(driver.getPageSource().contains("百度一下,你就知道")){System.out.println("包含");}else{System.out.println("不包含");}二
- 通过 Ollama 本地部署 DeepSeek-r1:1.5b 模型后,用 Python 调用推理并生成基于 pytest + PO 设计模式的 Playwright 自动化测试文件
Python测试之道
测试提效pythonpythonpytest设计模式
以下是完整的实现步骤和代码示例,详细说明了如何通过Python调用本地部署的DeepSeek-r1:1.5b模型,将功能测试用例转换为适合pytest和PageObject(PO)设计模式的Playwright自动化测试脚本。一、前提条件DeepSeek模型本地部署通过Ollama部署DeepSeek-r1:1.5b模型。Ollama提供的本地推理服务默认可通过HTTPAPI访问,地址通常为:ht
- Web UI自动化测试--元素操作
每 天 早 睡
持续集成与自动化测试ui
一、介绍什么是webui自动化测试1、通过代码来模拟人的手工操作,执行测试内容2、自动化是为了代替重复的手工操作,提高测试效率ui自动化的价值:1、回归速度的对比,以前进行全量回归测试需要x天,现在有没有减少2、负责功能测试的同事,是不是有更多的时间测试新需求了3、自动化测试不是为了发现bug,而是为手工测试节省回归时间ui自动化的原理(selenium与webdriver):selenium是一
- AI 驱动的软件测试革命:从自动化到智能化的进阶之路
綦枫Maple
AI+软件测试人工智能自动化运维
引言:软件测试的智能化转型浪潮在数字化转型加速的今天,软件产品的迭代速度与复杂度呈指数级增长。传统软件测试依赖人工编写用例、执行测试的模式,已难以应对快速交付与高质量要求的双重挑战。人工智能技术的突破为测试领域注入了新动能,通过机器学习、深度学习、自然语言处理等技术,测试流程正从“被动验证”向“主动预防”演进。本文将深入探讨AI与软件测试的融合路径,结合技术原理、工具实践与行业趋势,为读者呈现一幅
- CICD系列之jenkins
john137724
DEV-OPSdockerjenkins
jenkins专题安装docker&docker-compose安装jenkins编写docker-compose.yml脚本配置jenkins安装常用插件记录jenkins安装、配置、使用的常用操作linux物理机安装安装docker&docker-composedocker安装与配置安装jenkins#创建docker桥接网络dockernetworkcreatejohn-net#新建数据目录
- 自动化测试中的等待机制优化:显式等待 vs 隐式等待
测试渣
python自动化
摘要在自动化测试中,等待机制是确保脚本稳定性的核心环节。由于页面渲染、异步请求、动态元素加载等技术挑战,测试脚本若缺乏合理的等待策略,极易引发误判或失败。本文聚焦于两种主流等待机制——显式等待(ExplicitWait)与隐式等待(ImplicitWait),从原理、适用场景、优缺点对比到优化实践,结合真实案例与代码示例,为测试团队提供系统性优化方案,助力提升测试效率与可靠性。一、引言随着软件迭代
- 数据驱动测试(DDT)与关键字驱动测试(KDT)框架设计
测试渣
自动化
摘要:随着软件系统的日益复杂和规模的不断扩大,软件测试的效率和质量成为保障软件成功交付的关键因素。数据驱动测试(DDT)和关键字驱动测试(KDT)作为两种重要的测试框架设计方法,在自动化测试领域得到了广泛的应用。本文深入探讨了数据驱动测试和关键字驱动测试的原理、优势、设计要点以及实际应用中的相关实践,分析了它们在提高测试覆盖度、减少测试用例维护成本等方面的作用,并通过具体案例展示了如何设计和实施这
- 测试中,哪些地方可以有效的利用deepseek
海姐软件测试
测试工具
在软件测试全生命周期中,以下10个关键环节可高效利用DeepSeek实现智能化升级,每个场景均附带典型应用示例:---###一、需求分析阶段1.**需求漏洞挖掘**```python#输入PRD文档检测逻辑漏洞vulnerabilities=deepseek.detect_ambiguity(prd_text)#输出:发现未定义密码复杂度规则、缺少登录会话超时说明```2.**测试点自动提取**`
- 软件测试之安全测试详解
天才测试猿
自动化测试软件测试python测试工具测试用例安全性测试职场和发展
一、测试范围管理系统:url、登录框、搜索框、输入框、文件上传、文件下载客户端:搜索框、输入框、文件上传、系统功能二、测试点密码安全XSS注入SQL注入操作越权上传安全下载安全三、工具fiddlersqlmap四、测试过程1、密码安全(1)密码输入错误次数超限会锁定账号(2)除了账号密码,需要图形验证码或短信验证码(3)用户名不存在和密码错误需提示用户名或密码错误(4)密码传输非明文传输,且加密类
- 软件测试基础详解
天才测试猿
python测试工具测试用例功能测试软件测试自动化测试职场和发展
1、黑盒测试、白盒测试、灰盒测试1.1黑盒测试黑盒测试又叫功能测试、数据驱动测试或基于需求规格说明书的功能测试。该类测试注重于测试软件的功能性需求。采用这种测试方法,测试工程师把测试对象看作一个黑盒子,完全不考虑程序内部的逻辑结构和内部特性,只依据程序的《需求规格说明书》,检查程序的功能是否符合它的功能说明。测试工程师无需了解程序代码的内部构造,完全模拟软件产品的最终用户使用该软件,检查软件产品是
- Selenium 中 ActionChains 支持的鼠标和键盘操作设置及最佳实践
那片海还在吗
testselenium计算机外设测试工具
Selenium中ActionChains支持的鼠标和键盘操作设置及最佳实践一、引言在使用Selenium进行自动化测试时,ActionChains类提供了强大的功能,用于模拟鼠标和键盘的各种操作。通过ActionChains,可以实现复杂的用户交互,如鼠标悬停、拖放、组合键输入等。以下将详细介绍ActionChains支持的全部鼠标和键盘操作,并给出相应的最佳实践示例。二、鼠标操作2.1鼠标移动
- Python Selenium 库:高级自动化测试与网页交互
三带俩王
pythonselenium交互
在当今的软件开发和网页自动化领域,Python的Selenium库是一个强大的工具。它允许开发者通过编程方式与网页进行交互,实现自动化测试、数据抓取等多种任务。本文将深入探讨PythonSelenium库的高级用法,展示其在不同场景下的强大功能。一、Selenium库简介Selenium是一个用于自动化测试网页的工具集,它支持多种浏览器,包括Chrome、Firefox、Safari等。Selen
- android自动化测试 python3.0+appium+uiautomatorviewer+unittest+csv+HTMLTestRunner 登录测试框架
luoyangcoding
app自动化测试app登录自动化脚本
#coding:utf-8importcsv#导入csv库,可以读取csv文件fromappiumimportwebdriverimportunittest#单元测试fromtimeimportsleep#等待时间importtime#时间方法importos#文件、目录方法importsys#引用系统函数fromHTMLTestRunnerimportHTMLTestRunner#定义路径变量,
- JavaScript+Selenium自动化测试
爱学测试的李木子
软件测试javascriptselenium开发语言
Seleniumisabrowserautomationlibrary.Mostoftenusedfortestingweb-applications,Seleniummaybeusedforanytaskthatrequiresautomatinginteractionwiththebrowser.Selenium是一个浏览器自动化测试库,大多时候我们用它来测试web应用,Selenium可以胜
- Kubernetes_15_k8s交付jenkins并集成docker/k8s/java/maven环境
hellowordx007
Kuberneteskubernetes服务器linux
配置jenkins镜像并集成Docker环境在运维机执行[root@wwwjenkins]#pwd/opt/sortware/jenkins[root@wwwjenkins]#vimDockerfile##配置Dockerfile集成Docker环境FROMjenkins/jenkins:2.287USERrootADDkubectl/usr/bin/kubectlADDget-docker.sh
- 巨坑之Can‘t resolve ‘./App.vue‘ in ‘/app/src‘
Yan_an_n
坑npmvue.js前端
问题报错:前因后果:项目本地打包的时候都没有问题,但是在公司部署的jenkins里打包就出现了如上问题,尝试将文件APP.vue的路径修改,本地打包成功,但是jenkins打包仍然有问题,后来问了有经验的前端才知道问题原因:main.js文件内引入app.vue是importAppfrom'./App'importrouterfrom'./router'import*asaxiosfrom'./a
- Jenkins + Docker 一键自动化部署 Java Spring Boot 应用最精简流程
财高八斗者
JavaJava程序员jenkinsdockerjava
本文章实现最简单全面的Jenkins+Docker+SpringBoot一键自动部署项目。步骤齐全,少走坑路。环境:CentOS7+Git(Gitee)实现步骤:在Docker安装Jenkins,配置Jenkins基本信息,利用Dockerfile和Shell脚本实现项目自动拉取打包并运行。一、安装Docker安装社区版本DockerCE1.确保yum包更新到最新yumupdate2.卸载旧版本(
- jenkins+maven+docker java项目编译、打包、构建镜像、上传私有仓库、web容器部署
大敌
docker自动化运维jenkinsdocker运维
本环境非常简单,主要实现如下流程功能员工通过eclipse提交java代码———gitlab更新代码————jenkins通过maven编译打包————生成war包————制作docker镜像并上传到私有仓库————web服务器下载镜像————运行容器对外服务部分说明:jenkins服务器上已经安装了maven,并已配置。jenkins服务器上安装docker服务。(打包镜像,并上传至私有仓库)提
- Python接口自动化测试:断言封装详解
程序员潇潇
软件测试python开发语言软件测试自动化测试功能测试程序人生职场和发展
在进行API接口测试时,断言起着至关重要的作用。断言是用于验证预期结果与实际结果是否一致的过程。在Python中,我们可以利用一些库来实现断言功能。1.安装必要的库在Python中,我们主要会使用两个库:requests和jsonpath。requests库用于发送HTTP请求,而jsonpath库则用于解析JSON数据。首先,我们需要安装这两个库。打开命令行,输入以下命令:pipinstallr
- 全面掌握Python&Java分层自动化测试:从单元测试到安全检测的完整指南
jardonwang1
pythonjava
分层自动化(LayeredAutomation)是一种软件测试策略,通过将自动化测试分为不同层次或阶段,针对不同类型的测试需求,确保测试覆盖的全面性以及提高测试效率。这种方法通过分解复杂的测试任务,将其分配到适当的层级,从而降低测试的维护成本并提高自动化测试的稳定性和复用性。通常,分层自动化包括以下几层:1.单元测试层(UnitTestLayer)定义:单元测试是针对代码中的最小功能单元(通常是函
- pytest框架 核心知识的系统复习
双子测试
pytest
1.pytest介绍是什么:Python最流行的单元测试框架之一,支持复杂的功能测试和插件扩展。优点:语法简洁(用assert替代self.assertEqual)。自动发现测试用例。丰富的插件生态(如失败重试、并发执行、报告生成)。兼容unittest框架,比自带unittest框架更加简洁高效,在unittest框架迁移到pytest框架时不需要重写代码。适用场景:单元测试、接口测试、UI自动
- 没有最好的,只有最合适的:重新认识测试工具的价值
测试者家园
软件测试测试开发和测试质量效能测试工具软件测试人工智能智能化测试自动化测试自主化测试
用ChatGPT做软件测试在软件测试领域,关于“测试工具是否有好坏之分”的问题常常引发热议。一方面,经验丰富的测试专家通常有自己偏爱的工具和方法,另一方面,新手常困惑于琳琅满目的测试工具库,渴望寻找“最好”的工具。然而,测试工具真的有绝对的好坏之分吗?本文将从多维度剖析这个问题,旨在帮助读者开阔视野,重新思考测试工具的选择与价值。一、工具好坏的判断标准:适用性胜于绝对性1.1目标导向性:工具的价值
- Pytest自动化框架搭建
柯有Q
pytest自动化python运维
背景入职了一家小公司,需要从0开始搭建一个自动化测试环境,因为是测试板卡项目,所以需要使用串口连接工具pyserial,测试用例批量化执行工具pytest,测试报告自动生成工具allure,大家根据这三个关键词选择是否需要继续阅读1.技术实现1.1技术说明使用pyserial作为串口连接工具,发送读写命令;使用pytest作为用例批量管理工具;使用allure对测试结果进行可视化处理,自动生成测试
- 人工智能生成内容(AIGC)对程序员的影响
AmHardy
AIGC人工智能AIGC程序员chatgptkimi
人工智能生成内容(AIGC)对程序员的影响引言AIGC技术正在深刻影响软件开发行业,给程序员带来诸多机遇和挑战。程序员不仅需要适应这些新兴技术,还要有效利用它们来提升自己的工作效率和创新能力。AIGC技术的优势效率提升代码生成:AI工具如GitHubCopilot可以预测代码片段、自动完成代码和生成文档,从而显著提升编程效率。自动化测试:AI可以自动生成测试用例和检测代码中的潜在问题,减少了手动测
- 完整的Devops流程
河越柯衍
devops
完整的Devops流程Tips:Jenkins是开源的CI&CD工具,提供超过1000个插件来支持构建、部署、自动化,满足任何项目的需要。完整的Devops流程:开发提交代码到代码仓库gitlab>>Jenkins检测到代码更新>>调用k8sapi在k8s中创建Jenkinsslavepod>>Jenkinsslavepod拉取代码>>通过maven把拉取的代码进行构建成war包或者jar包>>上
- DevOps全流程
fengdongnan
devops运维java
DevOps全流程面试速记DevOps是一种融合开与运维的软件研发实践方法,规划从需求调研到开发,测试,部署等全流程,通过Jenkins和Kubernetes等自动化工具集成部署实现从代码编写到部署的无缝衔接,加速软件交付周期。我在实习中涉及到的工作有参与需求评审和开发排期会议,独立开发测试,并通过流水线部署与测试合作完善系统。DevOps是一种软件开发和运维的实践方法,是为了实现更高效、快速、可
- 【DevOps】Jenkins+Kubernetes:K8S集群外部署的Jenkins,设置动态Jenkins-slave工作节点到K8S集群中
运维归一
DevOpsjenkinsdockerkubernetes
视频教程视频教程:https://edu.csdn.net/learn/38191/604447?spm=1003.2001.3001.4143Jenkins部署,设置动态agent到K8S集群中centosdockerjenkinskubernets7.920.102.28919.10通常情况下jenkins单节点自己可以工作,但是一旦发布任务量巨大,server端自己肯定是靠不住的。为了解决这
- 基于k8s安装jenkins集群
水上冰石
云原生-运维架构jenkinsk8s
k8s集群:master:192.168.0.200node1:192.168.0.201node2:192.168.0.202思路:通过在manager的namespace中,创建jenkins服务,来对外提供服务。jenkins集群的数据文件放到master节点的/opt/data/k8s/jenkins目录下,以NFS网络文件系统的方式对整个集群共享jenkins创建jenkins-admi
- 如何安装配置虚拟机
痕517
开发语言
以下是安装和配置虚拟机的一般步骤:**一、选择虚拟机软件**1.**评估需求**-确定使用虚拟机的目的,例如是为了运行特定的操作系统进行软件测试、运行旧版软件,还是为了创建隔离的开发环境等。-考虑操作系统兼容性,不同的虚拟机软件在不同的主机操作系统上的表现和支持程度有所不同。2.**常见虚拟机软件**-**VMwareWorkstation**:功能强大,支持多种操作系统,适用于企业和高级用户。-
- SQL的各种连接查询
xieke90
UNION ALLUNION外连接内连接JOIN
一、内连接
概念:内连接就是使用比较运算符根据每个表共有的列的值匹配两个表中的行。
内连接(join 或者inner join )
SQL语法:
select * fron
- java编程思想--复用类
百合不是茶
java继承代理组合final类
复用类看着标题都不知道是什么,再加上java编程思想翻译的比价难懂,所以知道现在才看这本软件界的奇书
一:组合语法:就是将对象的引用放到新类中即可
代码:
package com.wj.reuse;
/**
*
* @author Administrator 组
- [开源与生态系统]国产CPU的生态系统
comsci
cpu
计算机要从娃娃抓起...而孩子最喜欢玩游戏....
要让国产CPU在国内市场形成自己的生态系统和产业链,国家和企业就不能够忘记游戏这个非常关键的环节....
投入一些资金和资源,人力和政策,让游
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
商人shang
jvm内存
jvm区域总体分两类,heap区和非heap区。heap区又分:Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)。
HotSpot虚拟机GC算法采用分代收
- 页面上调用 QQ
oloz
qq
<A href="tencent://message/?uin=707321921&Site=有事Q我&Menu=yes">
<img style="border:0px;" src=http://wpa.qq.com/pa?p=1:707321921:1></a>
- 一些问题
文强chu
问题
1.eclipse 导出 doc 出现“The Javadoc command does not exist.” javadoc command 选择 jdk/bin/javadoc.exe 2.tomcate 配置 web 项目 .....
SQL:3.mysql * 必须得放前面 否则 select&nbs
- 生活没有安全感
小桔子
生活孤独安全感
圈子好小,身边朋友没几个,交心的更是少之又少。在深圳,除了男朋友,没几个亲密的人。不知不觉男朋友成了唯一的依靠,毫不夸张的说,业余生活的全部。现在感情好,也很幸福的。但是说不准难免人心会变嘛,不发生什么大家都乐融融,发生什么很难处理。我想说如果不幸被分手(无论原因如何),生活难免变化很大,在深圳,我没交心的朋友。明
- php 基础语法
aichenglong
php 基本语法
1 .1 php变量必须以$开头
<?php
$a=” b”;
echo
?>
1 .2 php基本数据库类型 Integer float/double Boolean string
1 .3 复合数据类型 数组array和对象 object
1 .4 特殊数据类型 null 资源类型(resource) $co
- mybatis tools 配置详解
AILIKES
mybatis
MyBatis Generator中文文档
MyBatis Generator中文文档地址:
http://generator.sturgeon.mopaas.com/
该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中文版的文档的也会有一定的障碍,所以本章根据该中文文档以及实际应用,使用通俗的语言来讲解详细的配置。
本文使用Markdown进行编辑,但是博客显示效
- 继承与多态的探讨
百合不是茶
JAVA面向对象 继承 对象
继承 extends 多态
继承是面向对象最经常使用的特征之一:继承语法是通过继承发、基类的域和方法 //继承就是从现有的类中生成一个新的类,这个新类拥有现有类的所有extends是使用继承的关键字:
在A类中定义属性和方法;
class A{
//定义属性
int age;
//定义方法
public void go
- JS的undefined与null的实例
bijian1013
JavaScriptJavaScript
<form name="theform" id="theform">
</form>
<script language="javascript">
var a
alert(typeof(b)); //这里提示undefined
if(theform.datas
- TDD实践(一)
bijian1013
java敏捷TDD
一.TDD概述
TDD:测试驱动开发,它的基本思想就是在开发功能代码之前,先编写测试代码。也就是说在明确要开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例。然后循环进行添加其他功能,直到完全部功能的开发。
- [Maven学习笔记十]Maven Profile与资源文件过滤器
bit1129
maven
什么是Maven Profile
Maven Profile的含义是针对编译打包环境和编译打包目的配置定制,可以在不同的环境上选择相应的配置,例如DB信息,可以根据是为开发环境编译打包,还是为生产环境编译打包,动态的选择正确的DB配置信息
Profile的激活机制
1.Profile可以手工激活,比如在Intellij Idea的Maven Project视图中可以选择一个P
- 【Hive八】Hive用户自定义生成表函数(UDTF)
bit1129
hive
1. 什么是UDTF
UDTF,是User Defined Table-Generating Functions,一眼看上去,貌似是用户自定义生成表函数,这个生成表不应该理解为生成了一个HQL Table, 貌似更应该理解为生成了类似关系表的二维行数据集
2. 如何实现UDTF
继承org.apache.hadoop.hive.ql.udf.generic
- tfs restful api 加auth 2.0认计
ronin47
目前思考如何给tfs的ngx-tfs api增加安全性。有如下两点:
一是基于客户端的ip设置。这个比较容易实现。
二是基于OAuth2.0认证,这个需要lua,实现起来相对于一来说,有些难度。
现在重点介绍第二种方法实现思路。
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGe
- jdk环境变量配置
byalias
javajdk
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:
1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-7u79-windows-x64.exe
2、安装jdk-7u79-windows-x64.exe
3、配置环境变量:右击"计算机"-->&quo
- 《代码大全》表驱动法-Table Driven Approach-2
bylijinnan
java
package com.ljn.base;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.uti
- SQL 数值四舍五入 小数点后保留2位
chicony
四舍五入
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位。
2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
例如:
select cast(round(12.5,2) as numeric(5,2))  
- c++运算符重载
CrazyMizzz
C++
一、加+,减-,乘*,除/ 的运算符重载
Rational operator*(const Rational &x) const{
return Rational(x.a * this->a);
}
在这里只写乘法的,加减除的写法类似
二、<<输出,>>输入的运算符重载
&nb
- hive DDL语法汇总
daizj
hive修改列DDL修改表
hive DDL语法汇总
1、对表重命名
hive> ALTER TABLE table_name RENAME TO new_table_name;
2、修改表备注
hive> ALTER TABLE table_name SET TBLPROPERTIES ('comment' = new_comm
- jbox使用说明
dcj3sjt126com
Web
参考网址:http://www.kudystudio.com/jbox/jbox-demo.html jBox v2.3 beta [
点击下载]
技术交流QQGroup:172543951 100521167
[2011-11-11] jBox v2.3 正式版
- [调整&修复] IE6下有iframe或页面有active、applet控件
- UISegmentedControl 开发笔记
dcj3sjt126com
// typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {
// UISegmentedControlStylePlain, // large plain
&
- Slick生成表映射文件
ekian
scala
Scala添加SLICK进行数据库操作,需在sbt文件上添加slick-codegen包
"com.typesafe.slick" %% "slick-codegen" % slickVersion
因为我是连接SQL Server数据库,还需添加slick-extensions,jtds包
"com.typesa
- ES-TEST
gengzg
test
package com.MarkNum;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation
- 为何外键不再推荐使用
hugh.wang
mysqlDB
表的关联,是一种逻辑关系,并不需要进行物理上的“硬关联”,而且你所期望的关联,其实只是其数据上存在一定的联系而已,而这种联系实际上是在设计之初就定义好的固有逻辑。
在业务代码中实现的时候,只要按照设计之初的这种固有关联逻辑来处理数据即可,并不需要在数据库层面进行“硬关联”,因为在数据库层面通过使用外键的方式进行“硬关联”,会带来很多额外的资源消耗来进行一致性和完整性校验,即使很多时候我们并不
- 领域驱动设计
julyflame
VODAO设计模式DTOpo
概念:
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对
- 单例设计模式
hm4123660
javaSingleton单例设计模式懒汉式饿汉式
单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。
&nb
- logback
zhb8015
loglogback
一、logback的介绍
Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-class
- 整合Kafka到Spark Streaming——代码示例和挑战
Stark_Summer
sparkstormzookeeperPARALLELISMprocessing
作者Michael G. Noll是瑞士的一位工程师和研究员,效力于Verisign,是Verisign实验室的大规模数据分析基础设施(基础Hadoop)的技术主管。本文,Michael详细的演示了如何将Kafka整合到Spark Streaming中。 期间, Michael还提到了将Kafka整合到 Spark Streaming中的一些现状,非常值得阅读,虽然有一些信息在Spark 1.2版
- spring-master-slave-commondao
王新春
DAOspringdataSourceslavemaster
互联网的web项目,都有个特点:请求的并发量高,其中请求最耗时的db操作,又是系统优化的重中之重。
为此,往往搭建 db的 一主多从库的 数据库架构。作为web的DAO层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数