- android新架构,Android项目新架构(2)——Clean Architecture
太球
android新架构
前言由于CSDN在移动端的UI界面不太友好,现在把博客迁到简书。原来CSDN博客地址:http://blog.csdn.net/iigeoxiaoyangCleanArchitecture架构模式很早之前就提出了,FernandoCejas在Github上实现了Android下的CleanArchitecture项目。本文主要根据这个项目源码以及我们项目中的实践说说对这个架构的理解。一CleanA
- ROS2 中 使用奥比中光 Orbbec Astra Pro 深度相机
dotNET跨平台
本文将以Ubuntu20.04和ROS2foxy环境为例,详细介绍如何在ROS2中使用奥比中光OrbbecAstraPro深度相机。在这一篇文章中,你会学到如何创建工作空间,使用usb_cam功能包,编译安装使用ros_astra_camera等。1.引言前面的文章《ROS2机器人操作系统入门和安装以及如何使用.NET进行开发》中提到,组成机器人的关键部分主要是电机、传感器、软件和电池。机器人的智
- HTML/CSS笔记
可能是小李吧
学习笔记csshtml
思维导图HTML网页的基本结构文档声明,声明当前文档版本迭代网页的版本HTML4XHTML2.0HTML5...文档说明文档说明用来告诉浏览器当前的版本进制二进制十进制八进制十六进制字符编码所有的数据在计算机中储存时都是以二进制形式存储的,文字也不例外。所以一段文字在存储到内存时,都需要转换为二进制编码当我们读取这段文字时,计算机会将编码转换为字符,供我们阅读解码将二进制码转换为字符的过程称为解码
- el-select 在iOS手机上,无法唤起软键盘以及二次点击问题
拿回忆下酒
elementuiel-selectiosvue
问题elementUI中有一个el-select组件。我们经常用它来实现下拉框功能。但是在手机上使用时,发现iOS手机上,该组件无法唤起软键盘。主要是因为组件中,input上有一个readonly属性,而该属性规定输入字段为只读。阻止了用户对值进行修改,直到满足某些条件才行。方案//本案例只为处理兼容问题,不包含其他复杂逻辑exportdefault{methods:{clear(async){t
- 单片机、芯片、arduino、树莓派、Jetson Nano、esp32、stm32
Robin罗兵
物联网单片机stm32嵌入式硬件
一、芯片:百科上说半导体元件产品的统称。知乎上说芯片(集成电路),或称微电路、微芯片、晶片/芯片在电子学中是一种把电路小型化的方式,并时常制造在半导体晶圆表面上。前述将电路制造在半导体芯片表面上的集成电路又称薄膜集成电路。二、单片机:(Single-ChipMicrocomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器R
- Scrapy结合Selenium实现滚动翻页数据采集
小白学大数据
pythonscrapyselenium测试工具爬虫
引言在当今的互联网数据采集领域,许多网站采用动态加载技术(如AJAX、无限滚动)来优化用户体验。传统的基于Requests或Scrapy的爬虫难以直接获取动态渲染的数据,而Selenium可以模拟浏览器行为,实现滚动翻页和动态内容加载。本文将介绍如何结合Scrapy(强大的Python爬虫框架)和Selenium(浏览器自动化工具)来高效采集滚动翻页的动态网页数据,并提供完整的代码实现。1.技术选
- Charles 抓包配置保姆教程(PC、IOS、Android)
网络抓包与爬虫
httpudphttpswebsocket网络安全网络协议tcp/ip
抓包工具基础配置与使用指南大家好,我是十一!今天给大家分享一篇关于抓包工具的基础配置与使用指南。无论是开发、测试还是安全分析,抓包工具都是不可或缺的利器。本文将详细介绍如何配置和使用抓包工具,并特别推荐一款功能强大的工具——SniffMaster(抓包大师),帮助大家更高效地完成抓包任务。安装与破解首先,我们需要选择一款合适的抓包工具。市面上有很多抓包工具,比如Charles、Fiddler等,但
- 推荐2款简洁、小巧的实用 Windows 软件:完全免费、无广告
网络神器
网络神器开源软件
聊一聊今天给大家分享2款电脑实用小工具。有喜欢的可以自行下载。软件介绍1.win的桌面时钟这是一款桌面时钟小工具,带天气和日历。显示界面简单大气,需要移动工具,将鼠标放至工具框边沿即可。工具图标在任务栏右下角,右键可以对工具进行设置。2.壁纸切换工具打开工具可以选择图片当壁纸。也可以在网络中选择好看的图片设为桌面。点击工具右下角,可以进行系统设置。这时跳出来的就是电脑的设置。可以选择多张图片,设置
- C# WebForm显示bootstrap模态对话框
boluo_people12345
c#bootstrap开发语言asp.net
1、在aspx中添加,将依赖添加进来2、添加模态对话框的divModaltitle...CloseSavechanges3、我封装了两个C#函数来显示和隐藏bootstrp的对话框publicvoidshowModal(stringid){stringscript="varmyModal=newbootstrap.Modal(document.getElementById('"+id+"'),{\
- 【力扣100】简要总结之哈希
却道海棠
力扣leetcode哈希算法golang
文章目录1、两数之和思路代码(Go)2、字母异位词分组(1)计数法思路实现代码(Go)(2)排序法思路实现代码(Go)(3)比较3、最长连续序列思路实现代码(Go)1、两数之和思路使用map,【键】:元素值【值】:下标遍历原值,找对应的值是否存在于map中若存在,返回两者下标若不存在,将当前值与下标存入map代码(Go)functwoSum(nums[]int,targetint)[]int{m:
- 【虚拟机】将电脑摄像头连接到虚拟机的Linux系统上
却道海棠
linux运维
应用场景:尝试在Linux虚拟机环境中使用OpenPose,这是一个开源的实时多人系统,用于身体、面部和手部关键点检测。为了实现OpenPose的实时拍摄视频功能,需要将电脑摄像头连接到虚拟机中的Linux系统上,以便捕捉并处理实时的视频流。问题描述进入openpose目录cdopenposeopenpose目录下的build文件夹通常是在进行编译和构建openpose项目时创建的./build/
- 【OpenPose常用命令】Linux系统中运行openpose的常用命令
却道海棠
linux运维服务器
文章目录OpenPose简介OpenPose中一些重要的参数及其功能[模型训练与优化][网络结构的作用]OpenPose使用的网络结构【*pose_pairs】【工作原理示例】【*置信度】【置信度的决定方式】【置信度的大小及其影响】【热图峰值】【在OpenPose中的应用】【示例】[默认设置和修改方式示例]1.`net_resolution`:网络分辨率2.`number_people_max`:
- 以有效安全的方式在正式生产环境中模拟真实流量进行全站点性能测试
wenyue1121
MegaEase技术方案算法后端压力测试架构
WhatisEaseLoadEaseLoadisaCloud-NativeperformancetesttoolwritteninGo.EaseLoadaimstosimulaterealtrafficforthewholesiteperformancetestintheproductionenvironmentinaneffectiveandsafeway.ProductprincipleCom
- Python爬虫:抓取外卖平台餐厅菜单、价格与评价数据
Python爬虫项目
2025年爬虫实战项目python爬虫开发语言百度大数据服务器金融
引言随着互联网和移动技术的发展,外卖平台已经成为了现代人日常生活中的一部分。消费者通过外卖平台可以轻松浏览餐厅菜单、查看菜品价格、评估餐厅服务质量等。因此,外卖平台上的数据如餐厅菜单、价格、用户评价等都蕴含着重要的商业价值。这些数据对于研究餐饮行业的市场趋势、消费者偏好、价格敏感性等具有重要意义。本文将详细介绍如何使用Python爬虫抓取外卖平台的数据,帮助您实现从外卖平台抓取餐厅的菜单、价格、评
- 矩阵键盘原理与单片机驱动设计详解—端口反转法(下) | 零基础入门STM32第七十八步
触角01010001
STM32入门教程(100步)stm32嵌入式硬件单片机驱动开发物联网
主题内容教学目的/扩展视频4x4阵列键盘电路连接,电路原理,驱动程序,调用函数。能用程序读出按键值。师从洋桃电子,杜洋老师文章目录一、矩阵键盘驱动架构设计1.1系统整体架构1.2硬件资源配置二、核心驱动实现分析2.1初始化函数解析2.2按键扫描流程图2.3按键解码算法三、关键技术创新点3.1动态IO模式切换3.2复合消抖策略四、扩展设计指南4.1扩展为8x8矩阵4.2多按键组合检测五、性能优化建议
- HTML CSS 使div中的子元素横向排列,并均匀分布
boluo_people12345
htmlcss前端
#do_rect{/*水平均匀排列*/display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;}以上是示例。效果图:你好
- FFmpeg 结构体学习(一): AVFormatContext 分析
音视频开发老马
流媒体服务器Android音视频开发音视频开发1024程序员节ffmpegandroid视频编解码实时音视频
在FFmpeg学习(六):FFmpeg核心模块libavformat与libavcodec分析中,我们分析了FFmpeg中最重要的两个模块以及重要的结构体之间的关系。后面的文章,我们先不去继续了解其他模块,先针对在之前的学习中接触到的结构体进行分析,然后在根据功能源码,继续了解FFmpeg。AVFormatContext是包含码流参数较多的结构体。本文将会详细分析一下该结构体里每个变量的含义和作用
- 如何提升大模型的训练效率deepspeed 和 flash attition
冰蓝蓝
大模型微调python
DeepSpeed详解核心特性1.ZeRO(零冗余优化器)通过消除数据并行训练中的内存冗余,显著降低模型参数、梯度和优化器状态的内存占用。例如,ZeRO-Offload可将部分计算卸载到CPU或NVMe存储,支持在单张GPU上训练数十亿参数的模型。2.3D并行(数据+模型+流水线并行)结合数据并行、模型并行(如张量切分)和流水线并行(PipelineParallelism),支持超大规模模型的分布
- python ffmpeg剪辑视频_python利用ffmpeg将一段大视频等份的切成多个小视频段
weixin_39715926
pythonffmpeg剪辑视频
在剪辑视频的过程中发现部分手机拍摄的视频是带有rotate旋转矫正参数的,一般的opencv脚本剪辑出来的视频是歪的。查询了大量的资料找到一种使用ffmpeg剪辑的方法,将opencv和ffmpeg结合使用可以剪辑目前绝大多数的手机视频。defcutVideo(path,filename):video_full_path=path+r'\\'+filenamevideo_full_path_new
- python把视频切成2秒_python利用ffmpeg将一段大视频等份的切成多个小视频段
墨墨张
python把视频切成2秒
在剪辑视频的过程中发现部分手机拍摄的视频是带有rotate旋转矫正参数的,一般的opencv脚本剪辑出来的视频是歪的。查询了大量的资料找到一种使用ffmpeg剪辑的方法,将opencv和ffmpeg结合使用可以剪辑目前绝大多数的手机视频。defcutVideo(path,filename):video_full_path=path+r'\\'+filenamevideo_full_path_new
- uboot linux-kernel buildroot 编译纪要
suirosu
linux
0.进行前先安装linuxmint系统再安装些编译环境:#aptinstallnightpdfgoldendictdevice-tree-compileremacsgit-guiclangqt6*flexbisonnfs-kernel-serverrpcbindgolang-golibssl-devlibavcodex-devgnunumericopen-vm-toolsffmpeglibboos
- FFmpeg: AVFormatContext 结构体分析
weixin_30407099
AVFormatContext结构体分析这个结构体描述了一个媒体文件或媒体流的构成和基本信息。这是FFMpeg中最为基本的一个结构,是其他所有结构的根,是一个多媒体文件或流的根本抽象。主要成员释义:nb_streams:输入视频的流的个数。duration:输入视频的时长(以微秒为单位,转换成秒须除以1000000)。bit_rate:输入视频的比特率,转换成kpbs需要除以1000。stream
- TensorFlow-MNIST手写数字分类
Enougme
TensorFlowtensorflow分类人工智能
TensorFlow是一个功能强大的深度学习框架,可以用来构建、训练和部署机器学习模型。主要作用于:构建神经网络模型(回归、分类、生成模型等)。进行数值计算,并提供GPU加速。实现自动梯度求导(如反向传播训练)。应用机器学习模型进行预测。数据准备fromtensorflow.keras.datasetsimportmnist#加载数据集(已划分为训练集和测试集)(x_train,y_train),
- ffmpeg批量切片视频
mj412828668
ffmpeg音视频
1、新建一个txt文件,并复制如下代码进入,然后保存。@echooff&titlecd/d%~dp0for%%ain(*.mp4)do(ffmpeg-i"%%~sa"-y-codeccopy-map0-fsegment-segment_time8-q:v1"ts\%%~na-%%03d.ts")pause这样提取出来的是ts片段,需要转mp4,可以参考批量ts转mp4。2、把文件后缀修改为bat。
- FFMPEG-如何对视频按时长切片与压缩
nellson
FFMPEG
本文介绍如何用ffmpeg开源组件按时长进行切片,举一个例子,一个视频网站,拿到一个时长1.5小时的电影,用户点击播放时,常用的技术方案就是把一个完整的大文件,转码后切成按固定时长的小文件,分发到cdn上去,这样用户就可以实现就近下载,包括拖放等操作,这里面有比较多的技术细节,本文只讨论第一步,按时长切片。一获取视频时长ffmpeg安装后,直接执行ffmpeg-i文件就可以从内容中获取到时长,如下
- Rust Web开发新选择:探索轻量级框架Hyperlane的高效实践
LTPP
前端rust网络javajavascript开发语言
RustWeb开发新选择:探索轻量级框架Hyperlane的高效实践引言:Rust生态中的Web开发演进在当今云原生时代,Rust语言凭借其卓越的性能和内存安全性,在系统编程领域大放异彩。但您可能不知道的是,Rust在Web后端开发领域同样展现出惊人潜力。本文将带您深入探索一个新兴的RustWeb框架——Hyperlane,通过实际案例演示如何用它构建高性能的现代Web服务。一、Hyperlane
- 2023华为OD机试真题-统计匹配的二元组个数(JAVA、Python、C++)
huaweiod123
华为OD机试真题2023pythonc++java算法华为
题目描述:给定两个数组A和B,若数组A的某个元素A[i]与数组B中的某个元素B[j]满足A[i]==B[j],则寻找到一个值匹配的二元组(i,j).请统计在这两个数组A和B中,一共存在多少个这样的二元组。输入描述:第一行输入数组A的长度M;第二行输入数组B的长度N;第三行输入数组A的值;第四行输入数组B的值。1<=M,N<=100000A,B数组中数值的取值均小于100000;输出描述:输出匹配的
- Java使用ffmpeg进行视频切片
Marclew_
ffmpeg音视频
视频转MP4执行命令ffmpeg-iC:\Users\Administrator\Desktop\111\疾速追杀.mkv-y-metadata:s:vrotate=0-y-c:vlibx264-c:amp3-strict-1C:\Users\Administrator\Desktop\111\疾速追杀.mp4-metadata:s:vrotate=0-cpu-used1说明:-metadata:
- ffmpeg-将多个视频切片成一个新的视频
Enougme
ffmpeg音视频
使用ffmpeg工具可以轻松完成将多个视频切片合并为一个新的视频。以下是实现这一目标的具体步骤和命令。步骤概览1、将多个视频切片。2、创建文本文件列出切片的视频片段。3、使用ffmpeg合并这些切片为一个新的视频。一:安装ffmpeg确保你的系统中已经安装ffmpeg。如果未安装,可以通过以下方式安装:Windows下载ffmpeg官网(https://ffmpeg.org/download.ht
- 金融科技融合:全息虚拟柜员与生物识别交互系统设计
蚁利科技
科技可信计算技术安全
全息投影技术通过光学干涉与衍射原理生成三维立体影像,凭借其沉浸式体验和交互性,已在多个领域展现出广阔的应用前景。以下是针对不同行业的解决方案设计及所需设备与技术的综合分析:一、行业应用解决方案设计娱乐与演艺领域应用场景:演唱会、舞台剧、电影特效、主题乐园等。解决方案:采用360度全息投影技术,配合高流明激光投影仪,打造环绕式舞台效果(如虚拟歌手表演或历史人物“复活”)112。结合互动传感器(如红外
- 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