- STM32 FreeROTS 任务创建和删除实验(静态方法)
雁过留声花欲落
STM32FreeRTOSstm32嵌入式硬件单片机
实验目标学会xTaskCreateStatic()和vTaskDelete()的使用:start_task:用来创建其他的三个任务。task1:实现LED1每500ms闪烁一次。task2:实现LED2每500ms闪烁一次。task3:判断按键KEY1是否按下,按下则删掉task1。看代码直接看代码修改,其余和动态创建和删除一样。STM32FreeRTOS任务创建和删除实验(动态方法)-CSDN博
- 计算机网络03(传输层工作原理,TCP/UDP协议)
~须尽欢
计算机网络tcp/ipudp网络网络协议tcp
目录一:介绍传输层二:TCP协议1.TCP包头结构信息2.三次握手3.四次挥手4.流量控制5.差错控制三:UDP协议1、UDP介绍2、UDP常用领域四:TCP和UDP的对比1、应用方面及服务端口2、整体对比一:介绍传输层1.作用:传输层是整个网络体系结构中的关键层次之一,主要负责向两个主机中进程之间的通信提供服务。由于一个主机同时运行多个进程,因此运输层具有复用和分用功能。传输层在终端用户之间提供
- SpringCloud Alibaba:RocketMQ - 分布式消息中间件的最佳实践
mckim_
笔记学习springcloudrocketmq
引言随着分布式系统和微服务架构的发展,消息队列作为异步通信的关键组件,其重要性日益凸显。RocketMQ作为一款高性能、高可靠的消息中间件,在处理海量消息方面表现卓越。本文将结合实际应用场景,全面介绍RocketMQ的基础知识、配置要点、高级特性以及性能监控的最佳实践。一、RocketMQ基础知识1.概述RocketMQ是由阿里巴巴开源的一款分布式消息中间件,以其高效、可靠、易用的特点著称。它支持
- 第04课:组件和商品详情
疯狂紫萧
ReactNative实战:构建电商App移动开发ReactNative前端电商
知识点:使用路由跳转内页开发完整的商品详情页弹出选择数量前面的代码已经加入Git仓库,链接地址详见这里,将项目放在本地的同学也可以试着将代码放到仓库里,这个地方可以使用单独的分支合并到master,也可以直接覆盖带master分支。为了能够更直观的看到每次提交的代码,我尽量把每一节的内容都做一次提交,备注也会写的非常清楚,另外我也会不定时的增加各种注释到代码里。一般情况只需要切换到不同的提交时间点
- AI赋能Flutter开发:新手也能轻松入门
前端
Flutter作为一款跨平台移动应用开发框架,凭借其“一次编写,多端运行”的特性,赢得了众多开发者的青睐。然而,Flutter的学习曲线相对陡峭,特别是对于编程新手而言,上手难度较大。大量的代码编写、复杂的UI搭建以及对Dart语言的学习,都可能成为学习过程中的阻碍。但现在,借助AI写代码工具,这一切都将变得更加轻松便捷!本文将以ScriptEcho为例,介绍如何利用AI辅助工具高效入门Flutt
- 基于云端的SIEM解决方案
运维
最近的一项市场研究爆出了一组惊人的数字,在2024年,网络攻击增加了600%!更加令人担忧的是,这恐怕只是冰山一角。世界各地的组织都已经认识到了这一威胁,并正在采取多重措施来抵御来自线下和远程混合式办公模式带来的网络安全问题。尽管如此,根据福布斯顾问提供的数据,2023年数据泄露事件仍然增加了72%,2365次网络攻击影响了3.43亿受害者,比两年前创下的历史纪录大幅增加。随着企业的数字化转型,受
- 33岁人在重庆,程序员,从国企辞职了
前端后端程序员
在我28岁的时候,会为“程序员的35岁”焦虑,那年纪的我真的很害怕未来没了工作该怎么办。当时这焦虑是我内心下一层次的忧虑,它更多来自于平日里的网上冲浪以及和菠萝包的聊天:“咱们未来失业了可怎么办呢?”当时我并不细究焦虑的前前后后,我的第一优先级,还只是“回不回重庆,以及什么时候回重庆”。转眼5年过去,去到深圳两年又已经回到重庆一年半的我,在写公众号、读书、反思解剖自己的过程中,仿佛将这焦虑一点点拆
- Python内置模块-Math
-MaoKe-
Python模块python前端
文章目录Python内置模块-Math一、模块介绍二、数值运算1.math.ceil()2.math.floor()3.math.fabs()4.math.modf()5.math.trunc()6.math.factorial()7.math.fmod()8.math.fsum()9.math.gcd()10.math.frexp()11.math.ldexp()12.math.copysign
- 沁恒CH32V208GBU6绑定配对:MITM设置为FALSE后加密失败;原装代码密码为6位数并且不会自动重连;增加官方HIDconsumer服务造成发现服务失败手动连接一次后自动重连
cheng@yi
沁恒CH32V208GBU6绑定配对不会自动重连
从事嵌入式单片机的工作算是符合我个人兴趣爱好的,当面对一个新的芯片我即想把芯片尽快搞懂完成项目赚钱,也想着能够把自己遇到的坑和注意事项记录下来,即方便自己后面查阅也可以分享给大家,这是一种冲动,但是这个或许并不是原厂希望的,尽管这样有可能会牺牲一些时间也有哪天原厂让我停更的可能,但是我依旧乐于此,如果哪位道友想一起交流或者原厂同志想让我停更以及其他事项都可通过如下邮箱联系我:2478278759@
- 题解:洛谷 P1351 [NOIP2014 提高组] 联合权值
网络骑士hrg.
算法深度优先c++经验分享
题目https://www.luogu.com.cn/problem/P1351我们可以发现,若点对的距离为,则它们一定会经过一个中转点,因此我们考虑枚举中转点,然后枚举与有直接边连接的两个点,按照题意统计答案即可。#includeusingnamespacestd;#pragmaG++optimisze(3,"Ofast","inline")#defineintlonglongconstintm
- 2024年全国信息素养大赛图形化挑战赛国赛(决赛)真题——绘制20个多边形
嗨信奥
scratch青少年编程
绘制20个多边形编程任务从三角形开始,递增边数,一次画出20个多边形。参数说明:1.画笔初始位置(-25,180),粗细为2;2.每个多边形的边长都是50;3.每画一个多边形,画笔要改变颜色。完整题目可点击下方链接:绘制20个多边形_scratch_少儿编程题库学习中心-嗨信奥https://www.hixinao.com/tiku/scratch/show-3937.html程序演示及获取源码可
- C++11中的新特性
rainboots
C++基础学习笔记c++python算法
C++11中的新特性文章目录一、基于范围的for循环C++11提供了一个特殊版本的for循环,在很多情况下,它都可以简化数组的处理,这就是基于范围的for循环。在使用基于范围的for循环处理数组时,该循环可以自动为数组中的每个元素迭代一次。不必使用计数器变量控制其迭代,也不必担心数组下标越界的问题。基于范围的for循环使用了一个称为范围变量的内置变量。每次基于范围的for循环迭代时,它都会复制下一
- TCP 为什么采用三次握手和四次挥手以及 TCP 和 UDP 的区别
2的n次方_
网络tcp
1.TCP为什么采用三次握手和四次挥手采用三次握手的原因:确认双方的收发能力。第一次握手,客户端发送SYN报文,告诉服务器自身具备发送数据的能力,第二次握手,服务器回应SYN+ACK报文,表名自己既能发送数据也能接受数据,第三次握手,客户端发送ACK报文,确认自己也具备接受数据能力,以此来确保双方的收发能力处于正常情况。防止失效连接请求干扰。如果客户端发送的连接请求因为网路延迟或其他原因停滞,之后
- go语言两个协程goroutine交替打印1-100
Cider瞳
读研的日常拾光golang开发语言后端go面试算法
go语言两个协程goroutine交替打印1-100该程序使用了sync.WaitGroup来协调两个goroutine的执行。首先创建了两个无缓冲的通道ch1和ch2,并将WaitGroup的计数器设置为2,表示需要等待两个goroutine完成。第一个goroutine从1开始,每次加2生成奇数,将奇数发送到ch1并打印,然后等待从ch2接收数据,接收数据后继续下一次迭代,当完成1到100的奇
- PHP基于Google Authenticator双因素身份验证实现动态码验证
一:介绍GoogleAuthenticator双因素身份验证是谷歌推出的一款动态口令工具,解决大家各平台账户遭到恶意攻击的问题,一般在相关的服务平台登陆中除了用正常用户名和密码外,需要再输入一次谷歌认证器生成的动态口令才能验证成功,相当于输入二次密码,以达到账户的高安全性。二:拓展安装composerrequirehuaweichenai/google-authenticator三:使用1:创建密
- 搭建个人AI知识库:RAG与本地模型实践指南
ai开发知识库
引言你是否想过拥有一个私人订制的AI助手,能够随时为你提供最个性化的信息?本文将带你一步步搭建一个基于本地模型和RAG技术的个人知识库。搭建本地模型环境os:archlinux内存:32gcpu:6核12线程python:3.12.7docker27.3.1+docker-compose向量库:milvus2.4.13+attu2.4(客户端)ollamapacman-Sollamasystemc
- CV高手是怎么炼成的?
工具
引言你平时都怎么复制粘贴的?是否每次都是复制一段粘贴一段?是否厌倦了每次只能复制粘贴一次的限制?那这篇文章就是为你量身订做的。CopyQ简介CopyQisclipboardmanager–adesktopapplicationwhichstorescontentofthesystemclipboardwheneveritchangesandallowstosearchthehistoryandco
- 第七篇:vue3 计算属性:computed
小画家~
前端vue.jsjavascript前端
v-model="firstName".//v-model.就是双向绑定的意思//通过v-model进行绑定姓:名:全称:!!!!!import{ref}from'vue'//这里数据的双向绑定,通过ref实现数据响应letfirstName=ref("zhan")letlastName=ref("san")计算属性——只读取,不修改//计算属性——只读取,不修改/*letfullName=com
- 图论06-飞地的数量(Java)
XYX的Blog
算法学习图论算法java
6.飞地的数量题目描述给你一个大小为mxn的二进制矩阵grid,其中0表示一个海洋单元格、1表示一个陆地单元格。一次移动是指从一个陆地单元格走到另一个相邻(上、下、左、右)的陆地单元格或跨过grid的边界。返回网格中无法在任意次数的移动中离开网格边界的陆地单元格的数量。示例1:输入:grid=[[0,0,0,0],[1,0,1,0],[0,1,1,0],[0,0,0,0]]输出:3解释:有三个1被
- Mac 使用 GVM 管理多版本 Go 环境
自学AI的鲨鱼儿
#环境安装macosgolang开发语言
使用GVM管理多版本Go环境在本文中,我们将使用gvm(GoVersionManager)工具管理本地多个Go语言版本。gvm功能类似于Python的Anaconda,可以方便地切换不同版本的Go环境,非常适合需要多版本开发与测试的场景。需要注意的是,gvm在第一次安装Go时,需要终端环境中已经存在一个可用的Go语言版本,因为gvm需要依赖现有的Go环境来编译安装新的版本。为了满足这一需求,我们可
- 关于钜泉光电ATT7053C计量芯片使用的若干经验
恬宝的猪头
单片机c语言嵌入式硬件
大家好!第一次写东西,完全是当作自己的一个笔记来写的,笔法不成熟,有些凌乱。如果对一些小伙伴有所帮助的话是我的荣幸,也欢迎各位小伙伴指出其中的问题。首先说一下,使用这款芯片呢是因为一个项目需求,之前一直使用的是ADE9078这款,但为了节约成本,而且项目需求是单相电就行,所以选取了ATT7053C这款芯片。一开始的时候,和钜泉光电那边的技术人员也沟通过,提供过一些demo程序,当对于我的开发项目没
- 11. 盛最多水的容器
年轮不改
LeetCode热题100算法leetcode
该题也是一道双指针的典型题目,需要注意的是木桶效应。根据木桶效应,短板决定了容器的高;如果使用暴力遍历的方法,一个短板进行的循环是没有意义的。需要避开对短板的循环,来提升效率。本题的双指针开始的时候应放在数组的两端,这样开始拥有最大的宽度。每一次的缩短宽度都是在摸索是否存在最大的短板能够比初始来的大。左右指针进行比较,谁小,谁就往中间移动。classSolution{public:intmaxAr
- springboot图书馆管理系统前后端分离版本
酷爱码
springboot后端java
springboot图书馆管理系统前后端分离版本,系统供的功能全部都可以使用这是一个成品,系统的架构包括代码的层次都比较清晰而且功能比较丰富大家可以拿到手里改改界面改改文字的描述细节稍微修改一下就可以完成自己的毕业设计了,也可二次开发系统特性技术先进:使用了最新的SpringBoot框架,简化了项目配置,提高了开发效率。模块化设计:系统分为多个独立但相互关联的模块,如用户管理、书籍管理、借阅记录等
- 火山引擎 VeDI 平台以 AIGC 技术,助力企业提效营销、快速增长
大模型营销
当今市场竞争激烈的大环境下,企业要想在业绩方面有所突破,其首要增长点在哪里?带着这个问题,中欧国际工商学院等机构于今年年中,联合发布了《2023年中国首席营销官(CMO)调查报告》(下称“报告”)。在调研了167家企业的营销决策后,报告指开拓新市场、新产品、新服务的“拓新”策略,成为了企业在激烈市场竞争下的“心头好”。而在营销费用利用率上,报告显示,2023年中,企业在B2C产品、B2B服务、B2
- LoadBalancer负载均衡服务调用
胡尔摩斯.
java后端springcloudLoadBalancer
LoadBalancerLoadBalancer(负载均衡器)是SpringCloud中的一个关键组件,用于在微服务架构中实现服务请求的负载均衡。它的主要作用是将客户端的请求分发到多个服务实例上,以提高系统的可用性、性能和容错能力。通过LoadBalancer,可以实现服务的水平扩展,使得系统能够处理更多的并发请求。LoadBalancer的类型在SpringCloud中,LoadBalancer
- pythonffmpeg 推流_Python实现推流直播
简单心理
pythonffmpeg推流
教程https://codingchaozhang.blog.csdn.net/article/details/102732555?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_rele
- AI未来趋势:AIGC浪潮下看AI训练师如何塑造智能未来(技术变革)
用心去追梦
前端htmlcss
在AIGC(AIGeneratedContent,人工智能生成内容)浪潮下,AI训练师扮演着至关重要的角色,他们不仅推动了技术的发展,还在确保这些技术能够安全、高效地服务于社会方面发挥了重要作用。以下是AI训练师如何塑造智能未来的几个关键方面:1.技术变革与创新算法与模型训练预训练:通过大规模无标注数据的学习,构建具备基础语言理解和生成能力的基座模型。这一过程为后续更精细的任务打下了坚实的基础。指
- C#高级:用Csharp操作鼠标和键盘
我是苏苏
C#高级c#开发语言
一、winform1.实时获取鼠标位置publicForm1(){InitializeComponent();InitialTime();}privatevoidInitialTime(){//初始化Timer控件vartimer=newSystem.Windows.Forms.Timer();timer.Interval=100;//设置为100毫秒,即每0.1秒更新一次timer.Tick+=
- K8S中Pod控制器之CronJob(CJ)控制器
元气满满的热码式
kubernetes容器云原生
CronJob控制器是Kubernetes中用于周期性执行任务的一种控制器,它基于Job控制器来创建和管理作业。以下是CronJob的一些关键特点:周期性调度:CronJob允许您定义一个基于时间的调度,类似于Linux的cron工具,来周期性地执行任务。时间点触发:CronJob根据指定的时间表(cron表达式)触发,可以精确到分钟。一次性或重复执行:尽管CronJob主要用于重复性任务,但它也
- 软件测试行业的前世今生
蚂蚁质量
测试管理软件测试功能测试
萌芽起步:初期阶段(1945-1960年代)回溯到计算机发展的黎明期,1945年至1960年代,计算机宛如科学与军事领域的“神秘巨兽”。当时的计算机体积庞大,占据着巨大的空间,造价高昂,只有少数科研机构和军事部门有能力使用。以ENIAC为例,它占地170平方米,重达30吨,每秒仅能进行5000次加法运算。软件在这个时期还处于萌芽阶段,开发过程简单而直接。程序员们编写代码时,测试只是顺带的工作,基本
- 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