- MySQL底层是如何实现事物的四大特性的?
MySQL如何实现事务的四大特性(ACID)MySQL的事务支持主要通过InnoDB存储引擎实现,其底层机制结合日志系统(UndoLog/RedoLog)、锁机制和多版本并发控制(MVCC),具体实现如下:1.原子性(Atomicity)定义:事务的所有操作要么全部成功,要么全部失败回滚。实现:UndoLog(回滚日志):在事务修改数据前,UndoLog会记录数据修改前的状态(旧版本数据)。若事务
- 华纳云:数据库的内存分配策略对性能和稳定性的影响
数据库
数据库的内存分配策略对性能和稳定性至关重要。以下是针对不同数据库(如MySQL和Oracle)的内存分配建议和最佳实践:一、MySQL数据库内存分配建议InnoDB缓冲池(BufferPool)配置建议:innodb_buffer_pool_size是MySQL中最重要的内存配置参数,建议设置为系统物理内存的60%80%。iniinnodb_buffer_pool_size=70%示例:16GB内
- Mysql行格式DYNAMIC和COMPACT区别
yyytucj
mysql数据库
MySQL的InnoDB存储引擎支持多种行格式,其中DYNAMIC和COMPACT是两种常见的行格式,它们各自有着不同的特性和应用场景。下面将详细对比这两种行格式的主要区别,以便于在设计数据库时做出合适的选择。COMPACT行格式COMPACT是MySQL5.0之后引入的一种行记录存储方式,旨在提高数据页的利用率,使每个数据页能够存储更多的行记录。COMPACT格式的特点包括:变长字段处理:对于V
- MySQL底层是如何实现事物的四大特性的?
MySQL如何实现事务的四大特性(ACID)MySQL的事务支持主要通过InnoDB存储引擎实现,其底层机制结合日志系统(UndoLog/RedoLog)、锁机制和多版本并发控制(MVCC),具体实现如下:1.原子性(Atomicity)定义:事务的所有操作要么全部成功,要么全部失败回滚。实现:UndoLog(回滚日志):在事务修改数据前,UndoLog会记录数据修改前的状态(旧版本数据)。若事务
- MVCC(多版本并发控制)底层原理
mvcc事务
MVCC(多版本并发控制)底层原理总结:MVCC是通过维护数据的多个版本来控制并发访问的技术,它使得数据库能够支持高并发事务,同时保证事务之间的隔离性和一致性。在MySQL的InnoDB存储引擎中,MVCC是通过隐藏列、ReadView快照和undolog来实现的。1.关键概念:隐藏列(HiddenColumns):为了支持MVCC机制,InnoDB在每一行数据中隐藏了两个额外的列,分别是DB_T
- 我在广州学 Mysql 系列之 数据“库“的基本操作
练小杰
数据库相关数据库mysqlandroid
大家好,我是练小杰,今天主要讲得是Mysql数据库的基本操作内容~~昨天讲了“mysql在window和Linux的安装和配置”~~想要了解更多️MYSQL数据库的命令行总结!!!文章目录Mysql针对库基本操作创建数据库删除数据库数据库存储引擎所有支持的存储引擎当前数据库使用的默认存储引擎特定表的存储引擎表的具体存储引擎InnoDB存储引擎查看InnoDB存储引擎的状态MyISAM存储引擎MEM
- MySQL常见面试题汇总(建议收藏!!!)
geejkse_seff
面试学习路线阿里巴巴android前端后端
目录一、索引相关(1)什么是索引?(2)索引是个什么样的数据结构呢?(3)为什么使用索引?(4)Innodb为什么要用自增id作为主键?(5)Hash索引和B+树索引有什么区别或者说优劣呢?(6)什么是聚簇索引(7)说一说索引的底层实现?(8)索引有哪些优缺点?(9)聚簇索引和非聚簇索引的区别(10)MyISAM和InnoDB实现B+树索引方式的区别是什么?(11)MySQL中有几种索引类型,可以
- mysql为啥使用B+树
讨吃的讨吃了
mysqlb树数据库
MySQL的InnoDB存储引擎采用B+树作为索引结构(而不是B树或其他数据结构),主要是基于B+树在数据库场景下的独特优势。以下是MySQL采用B+树的具体原因:1.B+树的核心优势(1)更适合范围查询B+树的叶子节点通过指针连接成一个有序链表,这非常适合范围查询(如BETWEEN、ORDERBY或GROUPBY)。在数据库中,范围查询是非常常见的操作,而B+树能够高效地支持这种查询模式。(2)
- mysql中的lable_MySQL基础原创笔记(一)
哦日常
mysql中的lable
对表的增删改操作:创建表:createtablestudent(idintprimarykeyauto_increment,namevarchar(10)charactersetutf8notnull,sexchar(2)default‘M’,constraintfk_student_scoreforeignkey(id)referencesscore(id))engine=InnoDB;prim
- MySQL 缓存详解,让你的应用跑得更快!
小电玩
MySQLmysqljava
MySQL缓存介绍一,介绍MySQL缓存是指MySQL数据库服务器中的内存区域,用于存储经常访问的数据和查询结果,以提高查询性能和响应时间。MySQL缓存主要包括查询缓存和InnoDB缓冲池。查询缓存:MySQL的查询缓存是一种基于结果的缓存机制,它可以缓存查询语句和对应的结果集。当一个查询被执行时,MySQL会首先检查查询缓存,如果缓存中已经存在相同的查询语句和参数,则直接返回缓存中的结果,而不
- MySQL 的存储引擎简介
三书yjy
mysql数据库
使用showengines可以查看安装的MySQL的引擎相关信息MySQL的引擎不止这么多,这只是安装的这个版本有的引擎。可以看到,只有InnoDB支持事务,其他的引擎都是不支持事务的。说几个我了解的比较多的引擎:InnoDBInnoDB是MySQL现在的默认引擎,它是面向在线事务处理(OLTP)的应用,支持行锁,外键,以及非锁定读。每张表存储在一个独立的ibd文件中。一般用于修改比较频繁的场景。
- 课外补充InnoDB知识:InnoDB表的优势
1.01^1000
#关系型数据库mysql
MySQL优化学习大纲1.InnoDB存储引擎在实际应用中拥有诸多优势,比如操作便利、提高了数据库的性能、维护成本低等。如果由于硬件或软件的原因导致服务器崩溃,那么在重启服务器之后不需要进行额外的操作。InnoDB崩溃恢复功能自动将之前提交的内容定型,然后撤销没有提交的进程,重启之后继续从崩溃点开始执行。2.InnoDB存储引擎在主内存中维护缓冲池,高频率使用的数据将在内存中直接被处理。这种缓存方
- mysql 异常宕机 ..InnoDB: Database page corruption on disk or a failed,,InnoDB: file read of page 8.
wangchaoqi1985
MySQL
mysql异常宕机..InnoDB:Databasepagecorruptionondiskorafailed,,InnoDB:filereadofpage8.参考文章:(1)mysql异常宕机..InnoDB:Databasepagecorruptionondiskorafailed,,InnoDB:filereadofpage8.(2)https://www.cnblogs.com/yhq13
- mysql innodb数据页损坏Database page corruption on disk or a failed file read of page
Alex_z0897
数据库mysql
mysql_1|2025-01-16T08:43:10.095490Z25[ERROR]InnoDB:Databasepagecorruptionondiskorafailedfilereadofpage[pageid:space=174,pagenumber=5238].Youmayhavetorecoverfromabackup.mysql_1|2025-01-16T08:43:10.0955
- 数据库基础以及 MySQL 知识点
阿绵
计算机基础数据库mysql
文章目录1、基本概念2、主键和外键的区别2.1、使用外键的优劣3、数据库范式4、drop、delete与truncate区别?5、MySQL1、基础概念2、存储引擎2.1、InnoDB和MyISAM区别2.2、InnoDB如何保持事务的四大特性(实现事务的原理)3、锁机制与InnoDB锁算法3.1、表级锁和行级锁对比4、事务4.1、ACID特性4.2、并发事务带来的问题4.3、事务隔离级别1、基本
- MySQL深入原理
yourkin666
数据库mysqladb数据库
MySQL深入原理索引、事务、日志原理、InnoDB引擎、缓存、锁有4个数据库是属于MySQL自带的系统数据库:mysqlMySQL系统自带的核心数据库,它存储了MySQL的用户账户和权限信息,一些存储过程、事件的定义信息,一些运行过程中产生的日志信息,一些帮助信息以及时区信息等information_schemaMySQL系统自带的数据库,这个数据库保存着MySQL服务器维护的所有其他数据库的信
- 字节跳动后端或大数据基础知识面试题及参考答案(2万字长文)
大模型大数据攻城狮
大数据大厂面试数据结构算法leetcode
目录Redis的数据类型Redis数据类型的底层数据结构三次握手、四次挥手Redis持久化机制购物车为什么用Redis存,是永久存储吗MySQL的InnoDB索引数据结构哪些SQL的关键字会让索引失效队列、栈、数组、链表有什么不同讲讲爬虫的构成爬虫抓到的数据不清洗吗?不去重吗?对爬虫的更多了解Linux进程间通信机制进程和线程的区别线程私有的数据讲一下堆排序,每次调整的时间复杂度?堆排序是稳定的吗
- 【binlog和redolog有什么区别?】
@Corgi
Java面试题java数据库面试题
binlog和redolog有什么区别?1.定义和功能2.记录内容3.文件使用方式4.作用和应用场景5.示例对比总结1.定义和功能Binlog(二进制日志):定义:Binlog是MySQL的二进制日志系统,记录了所有更改数据库数据的语句的信息,以事件的形式保存。功能:主要用于数据恢复、主从复制以及数据审计。RedoLog(重做日志):定义:RedoLog是InnoDB存储引擎特有的日志系统,记录了
- 拷打,数据库面经!
go
数据库必会面试题1.请解释数据库中的MVCC(多版本并发控制)机制,并说明其在MySQLInnoDB中的具体实现方式?答案:MVCC是一种通过维护数据的历史版本实现高并发的技术,允许读操作不阻塞写操作,写操作不阻塞读操作。在MySQLInnoDB中,MVCC通过以下机制实现:隐藏字段:每行数据包含DB_TRX_ID(最近修改的事务ID)和DB_ROLL_PTR(回滚指针,指向UndoLog记录)。
- mysql 原理_mysql底层原理
高傲的大白杨
mysql原理
一:MySql架构1.一条sql语句如何执行的:mysql5.7查询缓存默认关闭,mysql8缓存已被移除。存储引擎对比:MySIAM:表级锁定,不支持事务,已读为主InnoDB:支持事务,支持外键,支持行级别和表级别的锁定,B+索引,效率高Memory:内存存储。Archive:用于存储和检索大量很少引用的历史、存档、安全审计信息,不支持事务。mysql架构局部性原理:读取磁盘的数据,它附近的数
- 【mysql】锁机制 - 2.行锁间隙锁临键锁
m0_54804970
面试学习路线阿里巴巴mysql数据库
目录1.锁的几种类型1.1记录锁(行锁)?RecordLock1.2?间隙锁GapLock1.3临键锁?Next-KeyLock2.加锁过程2.1唯一索引的查询(1)等值查询,查询记录存在(2)?等值查询,查询记录不存在(3)范围查询2.2普通索引的查询(1)等值查询,查询记录存在(2)等值查询,查询记录不存在(3)范围查询2.3其他查询2.4总结1.锁的几种类型对InnoDB按照锁粒度可以分为:
- 宋红康 MySQL高级篇 学习笔记
偷偷儿
mysql学习笔记
架构篇1.sql的执行流程查询缓存:有就直接返回了。解析器进行解析:检查sql合不合语法优化器:对sql语句进行逻辑优化,看是否使用索引,生成执行计划。存贮引擎:myisam,innodb去执行上述计划当然返回的时候也会在缓存一下结果。索引及调优篇1.InnoDBB+树索引的注意事项(页分裂的场景)1.根页面万年不动(页分裂):创建后,用户数据用完可用空间,就会新产生一个页a,并将根节点的数据复制
- 《想让 MySQL 性能飙升?InnoDB 引擎里的这些门道你了解吗?》
@孤随
MySQLmysql数据库
《想让MySQL性能飙升?InnoDB引擎里的这些门道你了解吗?》一、MySQL与InnoDB基础1.1MySQL架构概述连接层MySQL连接层就像是一个接待处,负责管理客户端与服务器之间的连接。当你使用各种客户端工具(如MySQLWorkbench、Navicat或者命令行工具)尝试连接到MySQL服务器时,连接层会对客户端进行身份验证。身份验证主要基于用户名、密码以及客户端的IP地址等信息。例
- MySQL8.0 innodb Cluster 高可用集群部署(MySQL、MySQL Shell、MySQL Router安装)
m0_74824687
面试学习路线阿里巴巴mysqladbandroid
简介MySQLInnoDB集群(Cluster)提供了一个集成的,本地的,HA解决方案。MysqInnodbCluster是利用组复制的pxos协议,保障数据一致性,组复制支持单主模式和多主模式。InnoDBCluster组件:MySQLGroupReplication,简称MGR,是MySQL的主从同步高可用方案,包括数据同步及角色选举MysqlShell是InnoDBCluster的管理工具,
- MySQL核心技术原理之:内存与磁盘管理
AI天才研究院
编程实践大数据人工智能语言模型JavaPython架构设计
作者:禅与计算机程序设计艺术文章目录1.简介1.1引言1.2作者简介2.背景介绍2.1为什么需要存储管理?2.2MySQL存储管理概览3.基本概念术语说明3.1数据类型3.2数据模型4.核心算法原理和具体操作步骤以及数学公式讲解4.1BufferPool缓存管理4.1.1缓存的基本概念4.1.2BufferPool缓存介绍4.1.3BufferPool缓存的操作步骤4.1.4InnoDB的双页写入
- mysql核心原理第1篇__InnoDB架构
杭州码农
mysql架构数据库
一、mysql应用场景及特点MySQL是一个开源免费的关系型数据库管理系统(RDBMS),由瑞典MySQLAB公司开发,现属于Oracle旗下产品。MySQL支持SQL,事务操作。架构简单,可扩展各类插件,读写性能都非常高,适用于联机事务处理系统。例如阿里会员,商品,导购,交易等核心系统中都大量运用了改造版本的MySQL数据库:xdb。二、mysql体系架构连接层处理客户端和服务端TCP/IP链接
- MySQL面经
MySGDLife
计算机基础知识笔记mysql
目录基础篇MySQL的存储引擎有哪些?为什么常用InnoDB?B+树和B树的比较为什么用B+树,不用B树或者AVL(优点)/哈希表关系型数据库和非关系型数据库的区别MySQL解析过程,执行过程如何优化数据库分表:mysql的server层SQL注入攻击索引聚簇和非聚簇索引的区别td除了聚簇索引,还有什么索引?二级索引存放的有哪些数据?哪些情况下应该or不应该建立索引索引失效的情况:数据库的索引是如
- mysql和oracle的区别功能性能、选择、使用它们时的sql等对比)
搬砖养女人
c++数据库架构springsqljava
一、并发性并发性是oltp数据库最重要的特性,但并发涉及到资源的获取、共享与锁定。mysql:mysql以表级锁为主,对资源锁定的粒度很大,如果一个session对一个表加锁时间过长,会让其他session无法更新此表中的数据。虽然InnoDB引擎的表可以用行级锁,但这个行级锁的机制依赖于表的索引,如果表没有索引,或者sql语句没有使用索引,那么仍然使用表级锁。oracle:oracle使用行级锁
- MySQL体系结构之存储引擎
海424
mysql数据库服务器
文章目录MySQL体系结构客户端层服务器1.连接层2.服务层(DML,DDL)3.引擎层3.1.1存储引擎概念:old_key:3.1.2MySQL的常用的存储引擎:skull:3.1.3主要区别:santa:3.1.4不同的存储引擎的结构是不一样的.需要用到哪些存储引擎,只需更换即可.:poultry_leg:3.1.5InnoDB:one:3.1.6MyISAM:two:3.1.7Memory
- MySQL的行级锁锁的是什么
头孢头孢
面试mysql数据库
MySQL(主要是InnoDB存储引擎)实现的行级锁,并不是直接“锁住一整行数据”那么简单,而是基于索引记录进行锁定,其背后的原理涉及到多种锁的组合和数据结构的设计。下面详细介绍:1.行级锁锁定的对象1.1锁定“索引记录”记录锁(RecordLock):InnoDB的行级锁主要锁定的是索引记录,也就是B+Tree中叶子节点上的记录。每一行数据都在聚簇索引(通常为主键索引)中有一个对应的索引记录。因
- 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