- 微服务架构中10个常用的设计模式
微服务
在当今的微服务架构中,常见的十种设计模式,分别是服务发现模式、API网关模式、断路器模式、边车模式、负载均衡模式、Saga事务模式、CQRS模式、分片模式、分布式日志跟踪模式、熔断与降级模式。其中,服务发现模式十分关键,通过自动化发现和定位服务,减少人工配置带来的不确定性,让系统可扩展性与高可用性得以更好地保障。同时,这一模式还能有效降低运维难度,在服务数量急剧增加的情况下依然保持灵活管理,提高线
- MultiCodeBench:首个涵盖 12 个特定软件应用领域和 15 种编程语言的代码生成基准测试
数据集
2024-12-25,由中山大学、西安交通大学、重庆大学共同创建的MultiCodeBench,填补了特定应用领域代码生成性能评估的空白,为开发者选择适合的LLM提供了实践洞见。一、研究背景:随着大型语言模型(LLMs)在代码生成任务中展现出卓越性能,越来越多的AI编程助手被集成到实际的软件开发环境中,显著提升了开发效率。然而,现有的代码生成基准测试主要集中在通用场景,对于LLMs在特定应用领域的
- Spring事务失效,常见的情况有哪些?
后端spring
1、事务失效的7种情况未启用spring事务管理功能方法不是public类型的数据源未配置事务管理器自身调用问题异常类型错误异常被吞了业务和spring事务代码必须在一个线程中1.1、未启用spring事务管理功能@EnableTransactionManagement注解用来启用spring事务自动管理事务的功能,这个注解千万不要忘记写了。1.2、方法不是public类型的@Transactio
- DeepBranchTracer:一种使用多特征学习进行曲线结构重建的通用方法
数据集
2024-02-02,由刘超、赵婷、郑能干一起提出了一种名为DeepBranchTracer的新型方法,是一种高效、通用的曲线结构重建方法,适用于多种2D和3D图像数据集。通过结合图像特征和几何特征,显著提高了重建的准确性和连续性。一、研究背景曲线结构(curvilinearstructures)是图像中常见的几何元素,广泛应用于医学图像中的神经分支和血管,以及遥感图像中的道路等。从图像中重建这些
- 实现一个轻量级 C++ 单元测试框架
獨梟
单元测试c++单元测试
如何实现一个轻量级C++单元测试框架——MiniTest在C++项目开发中,单元测试是保证代码质量的重要手段。尽管GoogleTest和Boost.Test是流行的测试框架,但它们较为复杂,适用于大型项目。如果你想要一个轻量级、易于理解的C++单元测试框架,本文将带你实现MiniTest,一个仅需几个头文件即可完成的C++单元测试框架。为什么需要自定义单元测试框架?在C++项目中,单元测试通常需要
- Python 3.14版本的彩蛋
使用3.14版本的Python创建一个虚拟环境,会看到在虚拟环境的bin目录中,不仅有python3、python3.14等常规文件,竟然还存在一个特殊的文件thon。/tmp/venv/bin$lltotal72...-rwxr-xr-x1useruser290BMar510:57pip3.14*lrwxr-xr-x1useruser10BMar510:57python@->python.exe
- 差异中寻找共识:浅析中美欧AIGC服务商的标识义务
人工智能
2025年1月7日,西藏日喀则地震中一张被广泛传播的图片“被压在废墟下的小男孩”被证明是AI合成图片,[1]这随即引发了社会对于人工智能生成物(ArtificialIntelligenceGeneratedContent,以下简称“AIGC”)的广泛讨论。随着AI大模型生成逼真图像、音频与视频的能力日益增强,人类作品与AIGC之间的界限愈发模糊。如不加以管控,则会产生“真相侵蚀”(TruthDec
- 美国首例AI训练数据版权案:从汤森路透诉罗斯案看AI训练数据的“合理使用”
人工智能
随着人工智能(AI)技术的快速发展和广泛应用,复杂的版权问题也随之而来。2025年2月11日,美国特拉华州联邦地区法院对汤森路透(ThomsonReuters)诉罗斯(Ross)案作出部分简易判决,认定被告罗斯公司未经授权使用受版权保护的作品训练AI法律检索工具的行为构成版权侵权,且不属于合理使用。[1]这是美国首个就AI训练数据作出实质性判决的案件。本文将重点分析其合理使用论述中对于“转换性目的
- 如何进行OceanBase 运维工具的部署和表性能优化!
oceanbase
随着OceanBase数据库应用的日益深入,数据量不断攀升,单个表中存储数百万乃至数千万条数据的情况变得愈发普遍。因此,部署专门的运维工具、实施针对性的表性能优化策略,以及加强指标监测工作,都变得更为重要。以下为基于我们的使用场景,所采取的一些部署和优化措施分享。一、OCP部署升级1.OCP升级(1)4.2.1BP1升级到4.2.2,本来以为毫无波澜但是下载完毕一键包并完成前期准备工作启动后发现无
- 理解持续测试,才算理解DevOps
软件产品的成功与否,在很大程度上取决于对市场需求的及时把控,采用DevOps可以加快产品交付速度,改善用户体验,从而有助于保持领先于竞争对手的优势。作为敏捷开发方法论的一种扩展,DevOps强调开发、测试和运维不同团队间的协作与沟通。持续集成和持续测试是一个在迭代中构建、测试产品并修复Bug的过程。它有助于团队在开发阶段的初期发现缺陷,这时的缺陷通常相对不那么复杂,并且更容易被解决。通过持续集成和
- ActiveMQ消息队列服务(三)监听器
chouxin3832
c#开发工具网络
在前面的示例中,我们发现消费者每次只能消费一条消息。当队列中有多条消息的时候,我们需要多次运行消费者,才能消费完这些消息。很麻烦!!!!如何解决这个问题呢?那就是使用ActiveMQ监听器来监听队列,持续消费消息。配置步骤说明创建一个监听器对象。修改消费者代码,加载监听器。第一步:创建监听器MyListener类说明:自定义监听器需要实现MessageListener接口packagecn.act
- 一文了解 Go 方法
challenge后端go
前言在前面的文章中,介绍了Go函数的声明,函数的几种形式如匿名函数、闭包、基于函数的自定义类型和函数参数详解等,而本文将对方法进行介绍,方法的本质就是函数,介绍方法的同时也会顺带对比其与函数的不同之处。方法在Go中,我们可以为任何的数据类型定义方法(指针或接口除外),现在让我们看一看方法的声明和组成部分以及与函数有什么不同之处。typePersonstruct{ageint}func(p*Pers
- PostgreSQL 用户及授权管理 04:授予及回收权限
LavenLiu
postgresql
PostgreSQL是一个坚如磐石的数据库,它非常注重安全性,提供了非常丰富的基础设施来处理权限、特权和安全策略。在前面的章节中以我们介绍的基本概念为基础,重新审视角色概念,特别关注授予角色的安全性和权限(角色可以是用户,也可以是用户组)。我们将学习如何配置角色的各个方面以细致管理安全性,从连接到访问数据库中的数据。文章目录授予及回收权限表相关的权限基于列的权限序列相关的权限schema相关的权限
- 数据归档 - 冷热数据处理大师
趣链科技
区块链技术算法数据处理区块链
——Part1现状——区块链可以视作一个在分布式环境下众多可信节点共同维护的且不可篡改的账本。在区块链系统中,数据以区块作为基本单位,区块链系统利用levelDB基于Key-Value结构的数据库存取数据,通过多节点冗余存储实现账本可信,然而随着区块链运行时间的增长,区块链的存储容量将呈线性增长,且这种数据的增长速度甚至会超过存储介质容量增长的速度,因此,区块链数据存储将成为限制区块链技术发展的重
- 《java面向对象(2)》<不含基本语法>
java小白板
java开发语言
提示:本笔记基于黑马程序员java教程整理,仅供参考文章目录前言1.继承2.多态2.1对象多态2.2行为对象2.3多态的问题前言本文纯笔记,主要记录了java面向对象的高级方法继承与多态1.继承在创建多个对象类时,它们可能会有很多相似的属性,如姓名,身高,体重等,就会造成代码的重复,所以我们可以采用继承的思想,将它们相同的属性放在同一个父类中,而其它作为子类的都可以继承父类的属性,子类本身就只用定
- 消息队列的特性与使用场景:Kafka、ActiveMQ、RabbitMQ与RocketMQ的深度剖析
啊sen丶
kafkaactivemqrabbitmqrocketmq分布式消息队列
在分布式系统和微服务架构中,消息队列是实现服务间通信和解耦的核心组件。Kafka、ActiveMQ、RabbitMQ和RocketMQ是当前最受欢迎的消息队列解决方案,它们各自具有独特的特性和适用场景。本文将从特性和使用场景两个维度进行对比分析,帮助读者更好地理解它们的差异,并根据实际需求选择合适的消息队列。一、特性对比(一)吞吐量与延迟-Kafka:以高吞吐量著称,适合大规模数据的批量处理。延迟
- 从FFmpeg命令行到Rust:多场景实战指南
FFmpeg作为功能强大的多媒体处理工具,被广泛应用于视频编辑、格式转换等领域。然而,直接使用FFmpeg的命令行界面(CLI)可能会遇到以下挑战:命令复杂度高:FFmpeg的命令行参数众多且复杂,初学者可能难以掌握,配置错误时调试困难。集成困难:在Rust等现代编程语言中,直接调用FFmpeg的C语言API需要处理复杂的内存管理和安全性问题,可能引发内存泄漏、非法访问等问题。为了解决这些问题,R
- 如何设计一个低成本数据归档及查询的架构
LavenLiu
架构
引言随着企业数据的快速增长,如何高效地管理和查询这些数据成为了一个亟待解决的问题。尤其是当数据量达到一定程度时,传统的数据存储和查询方式往往面临成本高、效率低等挑战。因此,设计一个低成本、高效的数据归档及查询架构变得尤为重要。目标分析在设计低成本数据归档及查询架构之前,我们首先需要明确几个关键目标:成本控制:在保证数据完整性和查询效率的前提下,尽可能降低存储和查询的成本。可扩展性:系统应能够轻松应
- JVM基础概念整理
喜欢薄荷味
Javanotes
JVMJVM简介虚拟机:通过软件模拟的具有完整硬件功能的、运行在一个完全隔离环境中的完整的计算机系统。JVM:通过软件模拟Java字节码的指令集,JVM中只保留了PC寄存器内存区域与内存溢出异常1.运行时数据区域线程私有区域程序计数器、Java虚拟机栈、本地方法栈线程私有:生命周期与具体线程相同,随着线程的创建而创建,随着线程销毁,对应空间回收线程共享区域java堆、方法区、运行时常量池1.1程序
- PyTorch中tensor赋值运算符
华zyh
强化学习pytorch
t=torch.ones((3,3))t0=tt1=t.dataprint(id(t),id(t0),id(t1),id(t.data))运行结果:2132926456040213292645604021332763196402132924110392t0与t完全相同。t1与t.data地址不一样(但是,t1.data与t.data地址相同)
- go结构体初始化_golang中结构体的初始化方法
weixin_39724748
go结构体初始化
目录1、自定义一个结构体typeVertexstruct{X,Yfloat64}2、初始化方法-指针:rect1:=new(Vertex)rect2:=&Vertex{}rect3:=&Vertex{1,2}rect4:=&Vertex{X:100,Y:200}注意:这几个变量全部为指向Rect结构的指针(指针变量),因为使用了new()函数和&操作符.3、初始化方法-类型实例a:=Rect{}b
- golang time包和日期函数
平谷一勺
Golang基础篇golangjava服务器timehanshu时间函数time定时器
1.简介在程序中日期和时间是我们经常会用到的,在go中time包提供了时间的显示和测量函数。2.获取当前时间通过time.Now()函数获取当前时间对象,然后获取时间对象的年月日时分秒等值。now:=time.Now()fmt.Printf("now=%vtype=%T\n",now,now)fmt.Println("年:",now.Year())fmt.Println("月:",int(now.
- 一篇文章掌握整个JVM,JVM超详细解析!!!(持续更新中)
阿杰同学
JVMjava面试宝典jvmjava虚拟机
一篇文章掌握整个JVM,JVM超详细解析!!!(持续更新中)JVM内存模型JVM内存模型包括:虚拟机栈、堆、方法区、程序计数器、本地方法栈堆(Heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵完全二叉树的数组对象。栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作
- JVM常用概念之FPU溢出
剑海风云
JDK(JavaDevelopmentKit)jvmFPU溢出
问题当自己的代码根本没有浮点或矢量运算,JVM在x86生成的机器代码为什么会用到XMM寄存器?基础知识FPU和矢量单元在现代CPU中随处可见,在许多情况下,它们为FPU特定的操作提供了一组备用寄存器。例如,Intelx86_64中的SSE和AVX扩展具有一组额外的宽XMM、YMM和ZMM寄存器,可与更宽的指令结合使用。虽然非矢量指令集通常与矢量和非矢量寄存器不正交(例如,我们不能在x86_64上将
- C51芯片包下载安装
Book_熬夜!
环境配置有关51单片机
一、前言由于前段时间下载Keil5用于编写stm32单片机程序,最近需要编写C51单片机的程序,在创建新项目时发现没有51单片机的器件型号,花了一点时间解决这个问题,故在此分享。二、解决方法1、下载烧录软件stc-isp百度网盘链接提取码:spvx解压密码:51打开后选择使用的芯片->Keil仿真设计->添加型号和头文件到Keil中即可。2、常见报错在执行上述操作时,注意添加时要求Keil安装的一
- nginx中proxy_pass和root的区别
LeonNo11
nginxnginx运维
在location配置中,proxy_pass和root是完全不同的指令,它们的作用和适用场景不同。1.proxy_pass:代理请求到后端服务器location/api/{proxy_passhttp://http_backend;}作用把请求转发到后端服务器http_backend,即Nginx作为反向代理。适用于Nginx作为API网关或负载均衡的情况。示例如果http_backend是ht
- 2024年一文1800字从0到1使用Python Flask实战构建Web应用(1)
2401_84564025
程序员pythonflask前端
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛分享他们的经验,还会分享很多直播讲座和技术沙龙可以免费学习!划重点!开源的!!!qq群号:110685036第三部分:运行Flask应用在app.
- Logo语言的学习路线
滕若岚
包罗万象golang开发语言后端
学习Logo语言的路线图引言在计算机编程领域,有许多种编程语言可以选择,Logo语言因其独特的教育理念和简单性而受到广泛欢迎。Logo语言的设计初衷是为了给学生和初学者提供一个轻松愉快的编程学习体验,让他们在学习编程的过程中培养逻辑思维能力和创造力。本文将为您提供一条系统的Logo学习路线,使您能够从基础知识起步,逐渐掌握这门语言。一、Logo语言基础1.1什么是Logo语言?Logo语言最早是在
- 美团Leaf分布式ID生成器:使用详解与核心原理解析
Cloud_.
分布式
引言在分布式系统中,全局唯一ID是贯穿整个业务链路的关键标识,无论是订单号、用户ID、支付流水号,还是日志追踪,都需要唯一且有序的ID来保证数据的一致性。然而,传统的自增ID方案(如数据库自增主键)在分布式场景下面临单点故障、性能瓶颈、分库分表冲突等问题。美团开源的Leaf分布式ID生成器通过创新的设计解决了这些难题,成为业界广泛使用的解决方案之一。本文将深入解析Leaf的两种核心模式(号段模式与
- 利用pprof对golang进行性能分析
忍界英雄
go学习笔记golang
利用pprof进行性能分析pprof性能分析的5个方面一、性能分析的五个核心维度CPU分析-剖析程序的CPU使用情况,定位高耗时函数内存分析-追踪内存分配与泄露,优化内存使用模式IO分析-监控文件/网络IO操作,发现瓶颈资源Goroutine分析-检测协程泄露与异常堆栈并发问题分析-诊断死锁及通过racedetector检测数据竞争数据采集时间生产环境采集:选择业务低峰期进行采样(凌晨2-4点)测
- 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