- 第十八单元自动化持续集成
胖虎大魔王
一、概念互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(简称CI)。1、持续集成(采蜜)持续集成:频繁的将代码集成到主干。好处:1)、快速发现错误2)、防止分支大幅偏离主干。2、持续交付持续交付:频繁的将软件的新版本,交给测试,代码通过后,代码就进入生产阶段。3.持续部署持续部署:代码通过评审以后,主动部署到生产环境。目标:代码在任何时刻都是可部署的,可以进入生产阶段
- 一分钟了解云原生应用实践与未来趋势
shawn2000
一分钟了解云原生应用实践与未来趋势1.什么是云原生云原生既包含技术(微服务,敏捷基础设施),也包含管理(DevOps,持续交付等),是一系列Cloud技术、企业管理方法的集合。云原生应用架构包含三个特征:容器化、微服务和DevOps。容器已有10来年的历史,2013年开源的Docker容器引擎,被开发者所广泛熟悉.容器可以理解为隔离环境的“运行时”,这也很好诠释了Docker集装箱的理念---Bu
- 在 CI/CD Pipeline 中实施持续测试的最佳实践!
小码哥说测试
软件测试技术分享自动化测试ci/cdpostman测试工具单元测试自动化测试软件测试持续集成
随着软件开发周期的不断加快,持续集成(CI)和持续交付/部署(CD)已经成为现代软件开发的重要组成部分。在这一过程中,持续测试的实施对于确保代码质量、提高发布效率至关重要。本文将详细介绍在CI/CD流水线中实施持续测试的最佳实践,并提供具体的方案和实战演练。持续测试的意义持续测试是指在整个软件开发生命周期中,持续地对软件进行自动化测试。其主要目标是尽早发现缺陷,减少修复成本,提高软件质量。与传统的
- jenkins+docker实现可持续自动化部署springboot项目
小码农叔叔
linux与容器实战持续集成微服务治理与实战jenkins+dockerjenkins实现可持续集成jenkins集成docker
目录一、前言二、微服务带来的挑战2.1微服务有哪些问题2.2微服务给运维带来的挑战三、可持续集成与交付概述3.1可持续集成与交付概念3.1.1持续集成3.1.2持续交付3.1.3可持续集成与交付核心理念3.2可持续集成优点3.3微服务为什么需要可持续集成四、可持续集成方案4.1可持续集成常用工具4.2常用可持续集成方案4.3jenkins介绍五、环境准备5.1部署架构与流程5.2服务器准备5.3搭
- 百日筑基第六十二天-持续集成和持续交付的 pipeline 概念
不要飞升
百日筑基#功法心得ci/cdjava实习
百日筑基第六十一天-持续集成和持续交付的pipeline概念在软件开发中,Pipeline是一种自动化的过程,它包括从开发人员提交代码,到代码构建,测试,部署等一系列的步骤。在持续集成(ContinuousIntegration)/持续部署(ContinuousDeployment)领域,Pipeline是非常重要的,因为它可以帮助开发团队更快,更有效地构建,测试和部署软件。持续集成和持续部署是什
- 【持续交付和自动化测试】自动化测试在CI/CD中的作用和实现
爱技术的小伙子
CI/CDci/cd
持续交付和自动化测试自动化测试在CI/CD中的作用和实现引言在现代软件开发过程中,持续交付(ContinuousDelivery,CD)和持续集成(ContinuousIntegration,CI)已经成为不可或缺的实践方法。自动化测试作为CI/CD流程的核心环节,确保了软件质量和交付效率。本文将深入探讨自动化测试在CI/CD中的重要作用,并介绍如何实现高效的自动化测试。持续交付简介持续交付是一种
- 微服务架构深度解析微服务定义是什么?微服务与云原生有何关联?
2401_84023683
程序员架构云原生微服务
正是在这样的时代背景和业务诉求下,微服务架构成为了解决复杂问题的灵丹妙药。微服务架构在应对需求的变化、容错处理、服务复用及扩展、提升开发效率、简化交互等方面都有明显的优势。同时,敏捷、DevOps、持续集成/持续交付、容器技术、SpringCloud框架、轻量级服务、领域驱动设计等的涌现也为微服务架构的发展奠定了基础。综上所述,持续快速响应市场、高度动态化、应对复杂场景的能力已经成为企业的核心竞争
- 软考高级第四版备考---第四十二天(软件工程-部署交付)
灬拂尘灬
软件工程
一、软件部署与交付:属于软件开发的后期活动,即通过配置、安装和激活等活动来保障软件制品的后续运行。其中软件配置过程极大地影响着软件的部署结果的正确性,应用系统的配置是整个部署过程中的主要错误来源二、持续交付:持续交付是一系列开发实践方法,用来确保让代码能够快速、安全部署到生产环境中。持续交付是一个完全自动化的过程,当业务开发完成的时候,可以做到一键部署三、持续部署:3.1持续部署方案:容器技术目前
- DevOps - Jenkins
weixin_34217711
devops测试ui
Jenkins简介Jenkins是一个开源项目,其前身为Hudson,旨在提供一个开放易用的持续集成工具,用于监控持续重复的工作。主要用于自动而持续地构建/测试软件项目;监控外部调用执行的工作。Jenkins是驱动整个持续交付和DevOps的核心组件,能够实现项目的自动构建、打包、测试、发布等。作为易用的CI系统,有助于开发者从繁杂的集成中解脱出来,专注更为重要的业务逻辑实现监控集成中存在的错误,
- (十四)devops持续集成开发——jenkins流水线使用pipeline方式发布项目
厉害哥哥吖
devops#jenkinsdevops
前言本节内容我们使用另外一种方式pipeline实现项目的流水线部署发布,JenkinsPipeline是一种允许以代码方式定义持续集成和持续交付流水线的工具。通过JenkinsPipeline,可以将整个项目的构建、测试和部署过程以脚本的形式写入Jenkinsfile中,实现对整个流程的可视化管理和控制。在JenkinsPipeline中,可以定义不同的阶段(stage)、步骤(step)、参数
- CI/CD部署
仲夏那片海
运维文档ci/cd运维
什么是CI,什么是CDCI和CD是软件开发中持续集成和持续交付的缩写。CI代表持续集成(ContinuousIntegration),是一种实践,旨在通过自动化构建、测试和代码静态分析等过程,频繁地将代码变更合并到共享存储库中。其目的是快速发现和修复代码问题,确保开发团队对软件产品持续交付。其中,持续指的是在整个开发周期中经常性地进行集成。CD代表持续交付(ContinuousDelivery)和
- 【前端工程化面试题】什么是 CI/CD
我有一棵树
ci/cd
CI/CD是软件开发中的两个重要实践,分别代表持续集成(ContinuousIntegration)和持续交付/持续部署(ContinuousDelivery/ContinuousDeployment)。持续集成(ContinuousIntegration,CI):持续集成是一种软件开发实践,通过将代码频繁地集成到共享存储库(如版本控制系统)中,并自动运行测试来验证新代码的正确性。主要目标是尽早地
- 在软件测试过程中如何有效的开展接口自动化测试
测试涛叔
技术分享软件测试jmeter网络协议
一.简介接口自动化测试是指使用自动化测试工具和脚本对软件系统中的接口进行测试的过程。其目的是在软件开发过程中,通过对接口的自动化测试来提高测试效率和测试质量,减少人工测试的工作量和测试成本,并且能够快速发现和修复接口错误,确保软件系统的稳定性和可靠性。接口自动化测试可以有效地支持持续集成和持续交付,帮助团队快速交付高质量的软件产品。二.做接口自动化前的准备确定接口测试的范围和需求1.确定接口测试的
- 为什么单元测试不是持续交付的唯一答案
为了让持续集成和持续交付(CI/CD)成为现实,企业必须审查其内部流程,并重新思考如何处理软件交付生命周期。过去的清单和评论根本不是前进的方向。残酷的事实是,大多数企业在持续交付的道路上相当落后。对软件交付过程本身进行根本性的改变与从货架上取下一些工具这样的半个步骤是完全不一样的。如果目标是对客户和用户做出更好的响应,软件团队需要专注于软件交付周期的更快迭代,并围绕快速响应用户反馈进行组织。虽然可
- 极狐GitLab 与 Flux 集成实现 GitOps
flux和GitOps众所周知,weaveworks公司在2017年提出了GitOps这个概念,而flux是weaveworks开源的一款对Kubernetes上的应用实现持续交付的工具,2019年7月15日被CNCF接受,现在处于孵化阶段。关于GitOps的更多详细内容可以查看本公众号过往的文章:云原生时代,你还不懂GitOps?让KAS给GitOps插上腾飞的翅膀极狐GitLab和ArgoCD
- 极狐GitLab 和 ArgoCD 集成实现 GitOps
ArgoCD和GitOps概述ArgoCD是一款开源且主要针对Kubernetes来做GitOps的持续交付工具。现在是CNCF的孵化项目。其整体架构图如下:ArgoCD是以KubernetesController的形式来实现的,它会对运行在Kubernetes集群上的应用程序进行监听,并将实际运行状态和期望状态(在部署清单文件中指定,且存储在版本控制系统中,诸如极狐GitLab)进行对比,当两者
- Jenkins面试系列
梦睡了
jenkins运维面试
1.Jenkins是什么?Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成。2.为什么使用Jenkins?Jenkins是一种使用Java编程语言编写的开源持续集成软件工具,用于实时测试和报告较大代码库中的孤立更改。Jenkins软件使开发人员能够快速找到
- GitOps入门与实践:如何集成Git和K8S?
RancherLabs
也许你之前听说过GitOps,但是对其并不了解。在本文中,我将对其进行简单介绍,它其实是一个应用程序开发和管理中的一个术语,其核心思想是将应用系统的声明性基础架构和应用程序存放在Git的版本控制库中。我们将介绍GitOps是什么,它将如何影响组织以及如何与Kubernetes保持同步。image什么是GitOpsGitOps是一种实现持续交付的模型,利用Git开发工具对云原生应用程序进行操作和管理
- 前端工程化面试题 | 07.精选前端工程化高频面试题
ai_todo
前端javascripttypescript开发语言
前端开发工程师、技术日更博主、已过CET6阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1牛客高级专题作者、打造专栏《前端面试必备》、《2024面试高频手撕题》蓝桥云课签约作者、上架课程《Vue.js和Egg.js开发企业级健康管理项目》、《带你从入门到实战全面掌握uni-app》文章目录请解释一下前端中的持续集成和持续交付。你熟悉的持续集成工具或持续交付工具有哪些?前端性能优化是
- DevOps工具链
Dr Turing
devops运维
DevOps是敏捷研发中持续构建(ContinuousBuild,CB)、持续集成(ContinuousIntegration,CI)、持续交付(ContinuousDelivery,CD)的自然延伸,从研发周期向右扩展到部署、运维,不仅打通研发的“需求、开发与测试”各个环节,还打通“研发”与“运维”。DevOps适合“软件即服务(SaaS)”或“平台即服务(PaaS)”这样的应用领域,其显著的特
- 手工测试向左,测试开发向右
霍格沃兹测试学院
手工测试向左,测试开发向右在移动互联网和大数据时代,互联网企业通常具备“产品功能丰富、用户基数大、业务逻辑复杂、更新迭代频繁、海量数据不容差错、实时性要求高”等显著特点。而随着企业规模扩张,用户对数据和业务稳定性的要求也会越来越高,所谓质量第一。在这种严苛背景下,IT技术团队为了应对产品快速迭代要求,就必须具备持续交付的能力。而在测试这个环节,就意味着必须拥有自动化测试、持续测试以及质量实时监控能
- Spinnaker多云持续交付平台: 部署Minio存储服务
cronaldo91
云原生云计算运维
目录一、实验1.环境2.K8Sstorage节点部署NFS3.K8S动态创建PV4.K8Smaster节点部署HELM34.K8Smaster节点部署Minio存储服务(第一种方式安装)5.Minio客户端安装MC命令6.K8Smaster节点使用Docker部署Minio存储服务(第二种方式安装)二、问题1.K8S无法删除pv,pvc问题2.minio部署模式有哪些3.podReadiness探
- 什么是容器服务
有事找叮当
什么是容器服务容器服务提供高性能可伸缩的容器应用管理服务,支持用Docker和Kubernetes进行容器化应用的生命周期管理,提供多种应用发布方式和持续交付能力并支持微服务架构。容器服务简化了容器管理集群的搭建工作,整合了阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器运行环境。产品功能集群管理,灵活的地域和网络环境选择用户可以根据自己的需求,选择不同的地域创建和删除集群。可灵活配置专有网络
- 大型开发项目中 git 工作流的最佳实践
JerryWang_汪子熙
GitflowWorkflow是一个Git工作流,有助于持续软件开发和实施DevOps实践。它由文森特·德里森(VincentDriessen)在nvie首次出版并广受欢迎。Gitflow工作流定义了围绕项目发布设计的严格分支模型。这为管理大型项目提供了一个强大的框架。Gitflow非常适合具有预定发布周期的项目以及持续交付的DevOps最佳实践。除了功能分支工作流所需的内容之外,此工作流不会添加
- 如何使用 Buildah 构建容器镜像
weixin_34238633
运维操作系统
ProjectAtomic通过他们在OpenContainerInitiative(OCI)上的努力创造了一个名为Buildah的伟大工具。Buildah能帮助创建、构建和更新,它支持Docker容器镜像以及OCI兼容镜像。Buildah处理构建容器镜像时无需安装完整的容器运行时或守护进程。这对建立容器的持续集成和持续交付管道尤其有用。Buildah使容器的文件系统可以直接供构建主机使用。这意味着
- 持续部署(CD)
IoTHub - 物联网开源技术社区
DevOps云原生ci/cddevops云原生容器
文章目录一、概述1.CD介绍2.持续部署(CD)2.1.持续部署规划2.2.部署方案3.持续交付(CD)3.1.持续交付规划3.2.部署方案4.持续部署流水线二、持续部署中间件1.Jenkins1.1.Jenkins凭证管理1.1.1.凭据管理介绍1.1.2.配置部署服务器凭证(Docker)1.1.3.配置部署服务器凭证(k8s)1.2.配置远程服务器1.2.1.Docker1.2.2.Kube
- DevOps 是什么
前浪浪奔浪流
DevOps是敏捷开发的产物,也越来越受到谷歌、Facebook、亚马逊等大型企业的关注。因此,当你要申请DevOps工程师岗位时,除了所需的专业技能外,准备充分的DevOps工作面试,对于成功拿到Offer也至关重要。DevOps是什么什么是DevOps?简而言之,DevOps意味着组织中开发(Dev)和运维(Ops)团队之间的协作,通过持续集成和持续交付,为用户提供更好的产品。因此,它可以降低
- gitlab ci cd 不完全指南
白如意i
gogitlabci/cd
gitlab可能大家很常用,CI、CD也应该早有耳闻,但是可能还没有去真正地了解过,这篇文章就是我对gitlabCI、CD的一些理解,以及踩过的一些坑,希望能帮助到大家。什么是CI、CDCI(ContinuousIntegration)持续集成,CD(ContinuousDeployment)持续部署(也包含了持续交付的意思)。CI指的是一种开发过程的的自动化流程,在我们提交代码的时候,一般会做以
- 自动化测试
Programmer boy
笔记
1.自动化测试在软件测试中,自动化测试指的是使用独立于待测软件的其他软件来自动执行测试、比较实际结果与预期并生成测试报告这一过程。[1]在测试流程已经确定后,测试自动化可以自动执行的一些重复但必要测试工作。也可以完成手动测试几乎不可能完成的测试[2]。对于持续交付和持续集成的开发方式而言,测试自动化是至关重要的。随着软件系统规模的日益扩大,以及应用领域的不断拓展,对软件系统的测试也变得更加困难和复
- 如何写一个其他人可以使用的GitHub Action
晚风予星_Kylin
学习笔记github
前言在GitHub中,你肯定会使用GitHubActions自动部署一个项目到GitHubPage上,在这个过程中总要使用workflows工作流,并在其中使用action,在这个使用的过程中,总会好奇怎么去写一个action呢,所以,我对此进行了一个学习。什么是GitHubActions官方概述如下:GitHubActions是一种持续集成和持续交付(CI/CD)平台,可用于自动执行生成、测试和
- jvm调优总结(从基本概念 到 深度优化)
oloz
javajvmjdk虚拟机应用服务器
JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。
- 【Scala十六】Scala核心十:柯里化函数
bit1129
scala
本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系 1. 什么是柯里化函数
A way to write functions with multiple parameter lists. For instance
def f(x: Int)(y: Int) is a
- HashMap
dalan_123
java
HashMap在java中对很多人来说都是熟的;基于hash表的map接口的非同步实现。允许使用null和null键;同时不能保证元素的顺序;也就是从来都不保证其中的元素的顺序恒久不变。
1、数据结构
在java中,最基本的数据结构无外乎:数组 和 引用(指针),所有的数据结构都可以用这两个来构造,HashMap也不例外,归根到底HashMap就是一个链表散列的数据
- Java Swing如何实时刷新JTextArea,以显示刚才加append的内容
周凡杨
java更新swingJTextArea
在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。
问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现
- servlet或struts的Action处理ajax请求
g21121
servlet
其实处理ajax的请求非常简单,直接看代码就行了:
//如果用的是struts
//HttpServletResponse response = ServletActionContext.getResponse();
// 设置输出为文字流
response.setContentType("text/plain");
// 设置字符集
res
- FineReport的公式编辑框的语法简介
老A不折腾
finereport公式总结
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式。
简单的说下自己感觉的公式要注意的几个地方:
1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3)
- linux mysql 数据库乱码的解决办法
墙头上一根草
linuxmysql数据库乱码
linux 上mysql数据库区分大小写的配置
lower_case_table_names=1 1-不区分大小写 0-区分大小写
修改/etc/my.cnf 具体的修改内容如下:
[client]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/va
- 我的spring学习笔记6-ApplicationContext实例化的参数兼容思想
aijuans
Spring 3
ApplicationContext能读取多个Bean定义文件,方法是:
ApplicationContext appContext = new ClassPathXmlApplicationContext(
new String[]{“bean-config1.xml”,“bean-config2.xml”,“bean-config3.xml”,“bean-config4.xml
- mysql 基准测试之sysbench
annan211
基准测试mysql基准测试MySQL测试sysbench
1 执行如下命令,安装sysbench-0.5:
tar xzvf sysbench-0.5.tar.gz
cd sysbench-0.5
chmod +x autogen.sh
./autogen.sh
./configure --with-mysql --with-mysql-includes=/usr/local/mysql
- sql的复杂查询使用案列与技巧
百合不是茶
oraclesql函数数据分页合并查询
本片博客使用的数据库表是oracle中的scott用户表;
------------------- 自然连接查询
查询 smith 的上司(两种方法)
&
- 深入学习Thread类
bijian1013
javathread多线程java多线程
一. 线程的名字
下面来看一下Thread类的name属性,它的类型是String。它其实就是线程的名字。在Thread类中,有String getName()和void setName(String)两个方法用来设置和获取这个属性的值。
同时,Thr
- JSON串转换成Map以及如何转换到对应的数据类型
bijian1013
javafastjsonnet.sf.json
在实际开发中,难免会碰到JSON串转换成Map的情况,下面来看看这方面的实例。另外,由于fastjson只支持JDK1.5及以上版本,因此在JDK1.4的项目中可以采用net.sf.json来处理。
一.fastjson实例
JsonUtil.java
package com.study;
impor
- 【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架
bit1129
spring
HttpInvoker是Spring原生的RPC调用框架,HttpInvoker同Burlap和Hessian一样,提供了一致的服务Exporter以及客户端的服务代理工厂Bean,这篇文章主要是复制粘贴了Hessian与Spring集成一文,【RPC框架Hessian四】Hessian与Spring集成
在
【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中
- 【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析
bit1129
Mahout
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information re
- nginx三种获取用户真实ip的方法
ronin47
随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到<apache获取用户真实IP地址>,如果是后端真实服务器是nginx,那么继续往下看。
实例环境: 用户IP 120.22.11.11
- java-判断二叉树是不是平衡
bylijinnan
java
参考了
http://zhedahht.blog.163.com/blog/static/25411174201142733927831/
但是用java来实现有一个问题。
由于Java无法像C那样“传递参数的地址,函数返回时能得到参数的值”,唯有新建一个辅助类:AuxClass
import ljn.help.*;
public class BalancedBTree {
- BeanUtils.copyProperties VS PropertyUtils.copyProperties
诸葛不亮
PropertyUtilsBeanUtils
BeanUtils.copyProperties VS PropertyUtils.copyProperties
作为两个bean属性copy的工具类,他们被广泛使用,同时也很容易误用,给人造成困然;比如:昨天发现同事在使用BeanUtils.copyProperties copy有integer类型属性的bean时,没有考虑到会将null转换为0,而后面的业
- [金融与信息安全]最简单的数据结构最安全
comsci
数据结构
现在最流行的数据库的数据存储文件都具有复杂的文件头格式,用操作系统的记事本软件是无法正常浏览的,这样的情况会有什么问题呢?
从信息安全的角度来看,如果我们数据库系统仅仅把这种格式的数据文件做异地备份,如果相同版本的所有数据库管理系统都同时被攻击,那么
- vi区段删除
Cwind
linuxvi区段删除
区段删除是编辑和分析一些冗长的配置文件或日志文件时比较常用的操作。简记下vi区段删除要点备忘。
vi概述
引文中并未将末行模式单独列为一种模式。单不单列并不重要,能区分命令模式与末行模式即可。
vi区段删除步骤:
1. 在末行模式下使用:set nu显示行号
非必须,随光标移动vi右下角也会显示行号,能够正确找到并记录删除开始行
- 清除tomcat缓存的方法总结
dashuaifu
tomcat缓存
用tomcat容器,大家可能会发现这样的问题,修改jsp文件后,但用IE打开 依然是以前的Jsp的页面。
出现这种现象的原因主要是tomcat缓存的原因。
解决办法如下:
在jsp文件头加上
<meta http-equiv="Expires" content="0"> <meta http-equiv="kiben&qu
- 不要盲目的在项目中使用LESS CSS
dcj3sjt126com
Webless
如果你还不知道LESS CSS是什么东西,可以看一下这篇文章,是我一朋友写给新人看的《CSS——LESS》
不可否认,LESS CSS是个强大的工具,它弥补了css没有变量、无法运算等一些“先天缺陷”,但它似乎给我一种错觉,就是为了功能而实现功能。
比如它的引用功能
?
.rounded_corners{
- [入门]更上一层楼
dcj3sjt126com
PHPyii2
更上一层楼
通篇阅读完整个“入门”部分,你就完成了一个完整 Yii 应用的创建。在此过程中你学到了如何实现一些常用功能,例如通过 HTML 表单从用户那获取数据,从数据库中获取数据并以分页形式显示。你还学到了如何通过 Gii 去自动生成代码。使用 Gii 生成代码把 Web 开发中多数繁杂的过程转化为仅仅填写几个表单就行。
本章将介绍一些有助于更好使用 Yii 的资源:
- Apache HttpClient使用详解
eksliang
httpclienthttp协议
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会
- zxing二维码扫描功能
gundumw100
androidzxing
经常要用到二维码扫描功能
现给出示例代码
import com.google.zxing.WriterException;
import com.zxing.activity.CaptureActivity;
import com.zxing.encoding.EncodingHandler;
import android.app.Activity;
import an
- 纯HTML+CSS带说明的黄色导航菜单
ini
htmlWebhtml5csshovertree
HoverTree带说明的CSS菜单:纯HTML+CSS结构链接带说明的黄色导航
在线体验效果:http://hovertree.com/texiao/css/1.htm代码如下,保存到HTML文件可以看到效果:
<!DOCTYPE html >
<html >
<head>
<title>HoverTree
- fastjson初始化对性能的影响
kane_xie
fastjson序列化
之前在项目中序列化是用thrift,性能一般,而且需要用编译器生成新的类,在序列化和反序列化的时候感觉很繁琐,因此想转到json阵营。对比了jackson,gson等框架之后,决定用fastjson,为什么呢,因为看名字感觉很快。。。
网上的说法:
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
- 基于Mybatis封装的增删改查实现通用自动化sql
mengqingyu
DAO
1.基于map或javaBean的增删改查可实现不写dao接口和实现类以及xml,有效的提高开发速度。
2.支持自定义注解包括主键生成、列重复验证、列名、表名等
3.支持批量插入、批量更新、批量删除
<bean id="dynamicSqlSessionTemplate" class="com.mqy.mybatis.support.Dynamic
- js控制input输入框的方法封装(数字,中文,字母,浮点数等)
qifeifei
javascript js
在项目开发的时候,经常有一些输入框,控制输入的格式,而不是等输入好了再去检查格式,格式错了就报错,体验不好。 /** 数字,中文,字母,浮点数(+/-/.) 类型输入限制,只要在input标签上加上 jInput="number,chinese,alphabet,floating" 备注:floating属性只能单独用*/
funct
- java 计时器应用
tangqi609567707
javatimer
mport java.util.TimerTask; import java.util.Calendar; public class MyTask extends TimerTask { private static final int
- erlang输出调用栈信息
wudixiaotie
erlang
在erlang otp的开发中,如果调用第三方的应用,会有有些错误会不打印栈信息,因为有可能第三方应用会catch然后输出自己的错误信息,所以对排查bug有很大的阻碍,这样就要求我们自己打印调用的栈信息。用这个函数:erlang:process_display (self (), backtrace).需要注意这个函数只会输出到标准错误输出。
也可以用这个函数:erlang:get_s