- C++高级教程——C++ 预处理器
joker-wt
C++学习c++开发语言
C++高级教程——C++预处理器C++预处理器#define预处理函数宏条件编译#和##运算符运算符用于连接两个令牌。下面是一个实例:C++中的预定义宏C++预处理器预处理器是一些指令,指示编译器在实际编译之前所需完成的预处理。所有的预处理器指令都是以井号(#)开头,只有空格字符可以出现在预处理指令之前。预处理指令不是C++语句,所以它们不会以分号(;)结尾。我们已经看到,之前所有的实例中都有#i
- C++ | 基础语法 | 函数参数[总结]
拟墨画扇_
C++c++函数参数指针参数数组参数引用参数
函数传递参数指针参数/*传递指针参数*///定义时voidfunc(int*var){}//使用时func(&var);voidswap(int*x,int*y){inttemp=*x;*x=*y;*y=temp;}...intx=5,y=10;swap(&x,&y);数组参数整型数组int[]/*传递int类型数组参数*///定义时voidfunc(int*arr){}或voidfunc(int
- C++ | 基础语法 | 动态数组
拟墨画扇_
C++c++动态数组
概念序列容器,允许运行时动态地插入和删除元素。基于数组的数据结构,可以自动管理内存,不需要手动分配和释放内存。C++标准模板库(STL)的一部分,提供灵活的接口和高效的操作。准备工作使用动态数组需要包含头文件:#include创建数组创建一个空整数vector向量std::vectormyVector;//创建一个存储整数的空vector在创建时指定初始大小、初始值std::vectormyVec
- 学懂C++ (十八):高级教程——C++预处理器及宏定义深入详解
猿享天开
c++开发语言预处理器宏定义
目录1.文件包含2.宏定义2.1简单宏定义2.2参数宏2.3宏定义注意点(重点)3.条件编译4.#和##运算符5.预定义宏6.文件包含保护总结C++预处理器是编译器在实际编译之前所执行的一个步骤,它处理代码中的预处理指令,并生成一个已预处理的源文件供编译器使用。预处理器指令都是以井号(#)开头,这些指令不是C++语句,因此它们不以分号(;)结尾。以下是对C++预处理器及其指令的深入详解。1.文件包
- C++经典机试题目
choutiaolin8504
c/c++数据结构与算法
1.表达式求值-中缀转后缀#include#includeusingnamespacestd;intPriority(charoper){switch(oper){case'(':return0;case'+':case'-':return1;case'*':case'/':return2;}}intmid_to_post(conststring&ori){charc,t;stacksyms;sy
- 提升C++项目编译速度
进击ing小白
设计模式与项目优化c++开发语言qt
目录一、问题背景二、代码规范方面的解决方案2.1拆分头文件2.2拆分巨型类2.3使用前置声明2.4避免在头文件中包含实现2.5避免头文件重复包含2.6将常用且变动较少的独立到一个文件三、代码业务重构方面经验3.1使用PIMPL(PointertoImplementation)技术3.2单例模式的使用3.3模板模式的使用3.4工厂模式的使用3.5备忘录模式的使用3.6职责链模式的使用3.7适配器模式
- 自用的代码相关AI提示词
写有意思的代码
AI编程
分析函数角色:C++编程专家任务:根据要求分析输入c++的函数代码要求:1.一句话概括该函数的功能;2.从输入输出角度对函数参数进行分类;3.从数据输入输出角度一句话概括函数的逻辑;4.列出函数中调用的其他函数的名称,名称不要含有括号,按降序排序;5.列出函数中使用的宏的名称,名称不要含有括号,按降序排序;代码:xxxx绘制流程图角色:Mermaid专家任务:按照要求用Mermaid绘制代码的流程
- 自用的ripgrep搜索代码技巧
写有意思的代码
linux
目录搜索调用指定名称的C++函数的地方命令解释搜索时排除单个指定文件搜索时排除多个指定文件搜索定义指定名称的C/C++函数的地方搜索定义指定名称的C/C++宏的地方搜索调用指定名称的C++函数的地方命令rg'\bexampleFunction\s*\('/path/to/search解释\b:单词边界,确保匹配的是完整的函数名,避免匹配到包含该名称的其他单词。exampleFunction:要匹配
- 编程小白必看!这套 C++ 精品视频教程,带你从入门到精通
七七知享
开发教程c++开发语言c语言程序人生学习方法改行学it程序员创富
在当今竞争激烈的编程领域,C++作为一门基础且强大的编程语言,是众多开发者的必修课。现在,为大家精心分享一套C++精品视频教程,它堪称C++学习的绝佳指南。这套教程由行业内资深编程专家精心打造,内容编排极为系统。从C++基础语法入手,如变量、数据类型、运算符等,以通俗易懂的方式,让零基础的小白也能轻松入门。逐步深入到函数、类与对象、模板等核心知识,配合丰富的案例,细致剖析每一个知识点在实际编程中的
- 【linux-vim编辑器】VIM创建常用的代码模板
Japathy
linux编辑器vim
之前在vim上尝试在过插件,一句话,很麻烦,很多问题,如果怕麻烦或者没有太多空闲时间,建议不要用,太浪费时间了.如果你经常写c/c++代码的话会经常有一些固定的模板要多次写如,比如模板类,要写好多的template,如果你用Sublime写的话可能会快些,他会把之前写过的字符串进行动态匹配,但是对于VIM就不行.当然你可以ctrl+n或者ctrl+p来匹配之前写过的,但是如果要匹配多行的信息可能你
- 仅需 5 分钟!用 Python 调用微信 OCR,解锁超高效文本识别神器
测试工程师成长之路
python微信ocr
前言想象一下,不需要复杂的C++代码,仅凭Python,就能轻松调用微信的本地OCR引擎,实现对图片中文本内容的精准识别。是的!你没听错,本项目正是一个专为Python用户打造的解决方案,将微信内置的OCR能力变成触手可及的工具!核心亮点零门槛接入:无需理解复杂的微信C++调用机制,直接用纯Python实现。快速高效:直接调用微信官方OCR模型,识别速度和准确度更胜一筹。批量处理:支持多张图片的快
- 打卡信奥刷题(865)用C++信奥P11077[普及组/提高] 「FSLOI Round I」石子
Loge编程生活
C++c++开发语言算法青少年编程数据结构
P11077「FSLOIRoundI」石子题目背景Englishstatement.YoumustsubmityourcodeattheChineseversionofthestatement.小F和小L正在玩一种古老的博弈游戏的改版。题目描述给定nnn堆石子,第iii堆有aia_iai个石子。设序列a1,a2,⋯ ,ana_1,a_2,\cdots,a_na1,a2,⋯,an的平均数为xxx。此
- LeetCode102. 二叉树的层序遍历
iiiiiankor
LeetCode刷题之路算法队列层序遍历二叉树
文章目录题目要求:思路C++代码题目要求:给你二叉树的根节点root,返回其节点值的层序遍历。(即逐层地,从左到右访问所有节点)。思路首先想到的就是根节点入队取队头元素(出队),把队头节点的左右孩子入队。重复但如何要把每一层分别区分出来?★关键一个一个的出显然无法判断是第几层,所以考虑一层一层地出。用一个变量levelSize记录该层的节点个数,levelSize=queue.size()当lev
- 【贪心+二分+双指针】P9559 [SDCPC2023] Fast and Fat|普及
软件架构师何志丹
#洛谷普及c++洛谷算法贪心二分查找双指针队员
本文涉及知识点本博文代码打包下载C++贪心C++二分查找C++算法:滑动窗口及双指针总结[SDCPC2023]FastandFat题面翻译【题目描述】您正在参加一场团体越野比赛。您的队伍共有nnn名队员,其中第iii名队员的速度为viv_ivi,体重为wiw_iwi。比赛允许每名队员独立行动,也允许一名队员背着另一名队员一起行动。当队员iii背着队员jjj时,如果队员iii的体重大于等于队员jjj
- java中classpath的配置
saygoodbyetoyou
JAVAjavatomcatclassjavaeewindowspath
关于java中classpath的配置classpath从名字上看是类的路径的意思,也就是java程序在运行时装载类的路径,java不同于c或c++等编译形语言,在运行前就要完成编译,连接等过程,java是在运行时装载所需要的类。classpath的值可以从命令行中输入echo%classpath%来查看,也可以从"我的电脑"-->"属性"-->"高级"-->"环境变量"-->"系统变量"中查看(
- C++ 中 cin 和 cout 教程
2501_90255623
c++数据结构
一、概述在C++里,cin和cout是标准库中用于输入输出操作的重要对象,它们基于流的概念,为开发者提供了方便且类型安全的输入输出方式。cin是标准输入流对象,主要用于从标准输入设备(一般是键盘)读取数据;cout是标准输出流对象,用于将数据输出到标准输出设备(通常是控制台)。二、使用cout进行输出2.1基本输出cout结合插入运算符intmain(){//输出整数intnum=10;std::
- 【C++】模版
一代...
c++开发语言
1.非类型模版参数模板参数分类类型形参与非类型形参。类型形参即:出现在模板参数列表中,跟在class或者typename之类的参数类型名称。非类型形参:用一个常量作为类(函数)模板的一个参数,在类(函数)模板中可将该参数当成常量来使用。注意:在C++20之前,只允许整形做非类型模板参数,C++20之后,可以支持double类型等其他内置类型,但不支持自定义类型做非类型模板参数templatecla
- 【C++笔试强训】如何成为算法糕手Day11
循环渐进Forward
笔试强训Day48c++开发语言算法动态规划牛客
学习编程就得循环渐进,扎实基础,勿在浮沙筑高台循环渐进Forward-CSDN博客目录游游的水果大礼包思路代码实现:买卖股票的最好时机(二)思路:代码实现:倒置字符串思路:代码实现:游游的水果大礼包牛客网做题链接:游游的水果大礼包(nowcoder.com)思路面对这样一个问题——给定一定数量的苹果和桃子,以及两种不同价值组合方式的礼包(一号礼包和二号礼包),目标是最大化所能组成的礼包总价值。这个
- 【C++阅览室】C++三大特性之继承
循环渐进Forward
C++学习历程c++开发语言c语言数据结构算法
前言:继承在C++中是十分重要的,它在面向对象程序设计时使代码可以复用的重要手段。继承可以允许程序员在保持原有类的特性下进行拓展,增加新的功能,这样产生的类,称为派生类。继承呈现了面向对象程序设计的层次结构,体现了由简到繁的过程。在此之前,我们接触到的都是函数的复用,继承是类设计之间的复用。目录前言:继承的定义继承基类成员访问方式的变化基类和派生类对象赋值转换继承中的作用域派生类的默认成员函数继承
- 自学c++之stl
拾萤
c++开发语言
stl六大组件,容器、算法、迭代器、仿函数、适配器、空间配置器容器各种数据结构,例如:vector、list、deque、set、mapvctor#include#include#includeusingnamespacestd;voidmyprint(intval){coutv;//相当于数组//插入数据v.push_back(10);v.push_back(20);//通过迭代器来访问数据//
- C++ 编程基础(8)模版 | 8.4、类型萃取
一个不务正业的程序猿
C++编程基础c++开发语言
文章目录一、类型萃取1、基本类型萃取2、类型修饰符操作3、类型关系判断4、类型转换5、自定义类型萃取前言:C++中的类型萃取(TypeTraits)是模板元编程的重要工具,用于在编译时获取和操作类型信息。类型萃取主要通过标准库中的头文件实现,提供了多种类型特性查询和操作的工具。一、类型萃取1、基本类型萃取类型萃取的核心是模板类std::integral_constant,它封装了一个常量值和类型。
- 智能指针c/c++
天上飞的粉红小猪
c++学习c++
目录1、内存泄漏1.1概念1.2分类1.3工具及处理方案2.RAII2.1概念2.2实现2.3auto_ptr2.4unique_ptr2.5shared_ptr实现问题定制删除器1、内存泄漏智能指针的一个用途,在我异常的文章的异常安全部分里有写,在那篇文章中,我举例了异常安全的多个现象,而其中,内存泄漏是非常恶劣且频发的问题。1.1概念内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存的
- 【GESP】C++二级真题 luogu-b4002, [GESP202406 二级] 平方之和
CoderCodingNo
GESPc++java开发语言
GESP二级真题,多层循环和分支练习,难度★✮☆☆☆。题目题解详见:https://www.coderli.com/gesp-2-luogu-b4002/【GESP】C++二级真题luogu-b4002,[GESP202406二级]平方之和|OneCoderGESP二级真题,多层循环和分支练习,难度★✮☆☆☆。https://www.coderli.com/gesp-2-luogu-b4002/
- C++ 二分法中向下取整与向上取整的区别与应用场景详解
Exhausted、
算法算法数据结构c++开发语言
在C++中,向下取整和向上取整是二分法中常见的两种计算中间值的方式。它们的选择会影响二分法的行为,尤其是在区间划分和边界条件处理上。以下是它们的区别、使用场景和特点:目录1.向下取整2.向上取整3.区别对比4.使用场景示例向下取整(标准二分查找)向上取整(偏向右侧划分)5.如何选择?向下取整:二分法通常采用向下取整的原因主要有以下几点:向上取整:6.总结1.向下取整定义:向下取整是指计算中间值时,
- 大一蒟蒻伴你答pta天梯赛(L1-051--L1-060)
Haostar;
算法c++数据结构
"代码都是c++的"L1-051打折思路:蒟蒻题代码:#includeusingnamespacestd;voidsolve(){doublea,k;cin>>a>>k;printf("%.2f",a*k*0.1);return;}intmain(){intT;T=1;//cin>>T;while(T--){solve();}return0;}L1-0522018我们要赢思路:输出奖励题代码:#i
- Visual Studio 2022开发C++程序实现带多组参数和标签的SQL Server数据库批量数据导出程序
weixin_30777913
c++数据库sqlserver
设计一个基于多个带标签SQL模板作为配置文件和多组参数的C++代码程序,用VisualStudio2022开发,实现根据不同的输入参数,用Airflow进行调度,自动批量地将SQLServer数据库的数据导出为Excel文件到指定目录上,标签和多个参数(以“_”分割)为组成导出数据文件名,文件已经存在则覆盖原始文件。程序使用C++ODBCAPI访问数据库,使用OpenXMLSDK写入Excel文件
- 【001】C++的第一个程序Hello World
Lion 莱恩呀
C++从零开始到精通c++开发语言vscodelinux
C++的第一个应用程序(HelloWorld程序)引言一、代码二、代码解释三、注意事项四、注释语句总结引言作者简介:专注于C/C++高性能程序设计和开发,理论与代码实践结合,让世界没有难学的技术。️CSDN实力新星,社区专家博主专栏介绍:从零到c++精通的学习之路。内容包括C++基础编程、中级编程、高级编程;掌握各个知识点。专栏地址:C++从零开始到精通博客主页:https://blog.csdn
- visual studio 2022 C++ OpenCV开发环境配置(详细教程)
Roc-xb
visualstudioc++opencv
本章教程,主要介绍如何在visualstudio2022中使用opencv。一、下载opencv下载地址:https://opencv.org/releases/选择Windows版本进行下载。下载之后,双击进行安装到指定磁盘中就可以了。二、配置环境变量我是将OpenCV安装到D盘中的,如果你不是安装到D盘的,需要改成你的OpenCV安装目录路径。D:\opencv\build
- C++ 对txt文档进行编辑
阿波茨的鹅
C++语法
#includeusingnamespacestd;#includeFILE*stream;//定义一个文件类型的指针变量,以便接下来对文件操作errno_terr;//定义一个errno_t类型的变量,以便监视读取文件操作(open)是否成功(err=0/err=2)intmain(){//利用fopen(之前定义的FEIL类型的变量地址,|文件地址,|r/w)if((err=fopen_s(&
- C++ 设计模式——代理模式
小冰子X
设计模式代理模式c++
代理模式指代理控制对其他对象的访问,也就是代理对象控制对原对象的引⽤。在某些情况下,⼀个对象不适合或者不能直接被引⽤访问,而代理对象可以在客⼾端和⽬标对象之间起到中介的作⽤。代理模式的结构包括⼀个是真正的你要访问的对象(目标类)、⼀个是代理对象。目标对象与代理对象实现同⼀个接口,先访问代理类再通过代理类访问目标对象。代理模式分为静态代理、动态代理:•静态代理指的是,在编译时就已经确定好了代理类和被
- 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