本文讲述了joomla组件开发知识点。分享给大家供大家参考,具体如下:
在你进行编码之前,有一些文件和文件夹需要创建和一些查询语句需要运行。你不但可以创建组件而且不用额外的配置就可以尝试不同的特性。你也可以看到Joomla!组织和访问组件方法的概况。最后,你会像其它组件一样加入工具栏。
Joomla!组件的结构
Joomla!的所有组件都遵守指定的命名约定。每个系统组件都有唯一的名字,名字不要包括空格。代码分成两个文件夹,文件夹以com_开头,紧接着就是组件的名字。因此,你要创建两个相同名字的com_reviews文件夹,一个放到前端components下,另一个放到后端administrator/components 下。当组件被前端加载的时候,Joomla!将会查找以组件唯一命名并以 .php扩展名结束的文件。在components/com_reviews 下建立review.php文件。相似地,在后端建立的文件需要在前面加上admin. ,在administrator/components/com_reviews 下建立 admin.reviews.php。
执行组件
Joomla!前端所有的请求都经过根目录的 index.php 文件,加载不同的组件是通过设置 URL GET 的option 变量。假设你本地的joomla!站点地址是 http://localhost/joomla/index.php,那么你加载的组件的地址应该是 http://localhost/joomla/index.php?option=reviews,打开reviews.php 文件并加入以下代码:
';
?>
你会看到类似的页面:
暂时不提供图片显示,请参考《Joomla! extension development》
你可能想知道一开始调用 defined() 函数的目的是什么,这是为了确保避免代码被直接通过 components/com_reviews/reviews.php 来访问。
在后端的administrator/components/com_reviews/admin.reviews.php 文件加上以下代码:
浏览地址: http://localhost/joomla/administrator/index.php?option=com_reviews ,比较页面的输出:
暂时不提供图片显示,请参考《Joomla! extension development》
Joomla!前后端的分离
Joomla!的所有组件,它们的代码使得后端部分与前端部分的代码很好地分离,在某些情况下,例如数据库表类,后端会使用前端的某些文件,但它们是独立的。当你不让后端的函数混入前端的代码那么安全性就加强了。这是后端和前端的结构相似的同时的一个很重要的特性。以下显示了Joomla!的根目录和administrator 文件夹展开的图表:
暂时不提供图片显示,请参考《Joomla! extension development》
要注意的是 administrator 文件夹与根目录有相似的结构。区分它们俩是很重要的,否则你可能会将你的代码放错位置了而执行失败,除非是将它们放回正确的位置。
在数据库注册组件
你现在知道怎么样访问前端和后端的组件,尽管每次你都能够通过手工输入URL来执行你的代码,但你的用户你无法接受的。如果你在数据库注册了组件,即在components数据表中加入一条记录,那么你就可以使用导航了。使用以下的SQL语句来注册组件:
INSERT INTO jos_components (name, link, admin_menu_link,
admin_menu_alt, `option`, admin_menu_img, params)
VALUES ('Restaurant Reviews', 'option=com_reviews',
'option=com_reviews', 'Manage Reviews', 'com_reviews',
'js/ThemeOffice/component.png', '');
这里声明了组件的名称,可以包括空格和标点,可以指定前端和后端的链接,可以指定后端组件菜单的图标。当你建立了基本的目录并加入了文件,有的组件已经准备好被执行了,而不需要写任何的SQL语句。这样你就在后端加入了组件的链接,也可以在前端适当的位置加入链接而不需要硬编码URL。刷新你后端的页面,下拉组件菜单,你会看到你的组件的子菜单项:
暂时不提供图片显示,请参考《Joomla! extension development》
既然组件已经注册了,你就可以在前端创建链接,去到 “菜单” | “主菜单”,然后单击“新建”按钮,从该页面中选择“Restaurant Reviews”,输入链接名称后,如下:
暂时不提供图片显示,请参考《Joomla! extension development》
点击“保存”,然后去到前端,你应该看到“Reviews”链接:
暂时不提供图片显示,请参考《Joomla! extension development》
你可以准备你的PHP技巧开始编写组件了。还要确保所有的前端请求都要通过 http://localhost/joomla/index.php?option=com_views,后端的请求通过 http://localhost/joomla/administrator/index.php?option=com_reviews。
Joomla!是非常灵活的,可以让你做你喜欢做的事情。我们这个例子中,会教你从新建一个组件开始,然后设计工具栏、用户、数据库类和库等,一旦你理解了它们的工作原理,这些元素将会省下你大量的时间。
创建工具栏
在Joomla!的后端,所有的核心组件都实现相同的保存、删除、编辑和发布项目等按钮,你可以在你的组件中使用这些按钮以便管理员会有无缝的体验。首先,在administartor/components/com_reviews 文件夹下创建 toolbar.reviews.html.php文件,并输入一下代码:
包括输出代码的文件通常会组织成类,像这里的TOOLBAR_reviews。每个成员函数都会显示不同的工具栏。JtoolBarHelper类包含了所有创建工具栏HTML元素的函数,你也可以加入自定义的HTML。你需要明白的是工具栏是有HTML表格构建的,你可能想在你的导航上加入
标签。
工具栏现在被定义,但你需要加入一些代码来决定显示哪些按钮。Joomla!会自动加载以组件名开始,以 .reviews.php 结束的文件。加入以下的代码到administrator/components/com_reviews 下的 toolbar.reviews.php 文件:
这行包含 require_once(),使用 JapplicationHelper 类的成员函数 getPath() 来获取toolbar.reviews.php 文件的路径,而不用包括组件的名称,即使你改变了组件的名称,你不需要修改代码还是可以正常加载文件。
说明 :
你可能想知道为什么一开始就创建 toolbar.reviews.php 和 toolbar.reviews.html.php 这两个文件。组件开发人员首选的编码风格是让处理逻辑与输出完全分离,这样以后加入特性和与别人分享代码就非常容易了。
toolbar.reviews.php 用输出类加载文件后,你需要要决定显示哪个工具栏。请求的变量 $task会自动注册成为全局变量并有来导向组件的逻辑流。现在刷新后端的页面,进入 Restaurant Reviews组件,然后你应该能看到以下的工具栏:
暂时不提供图片显示,请参考《Joomla! extension development》
要看其它的工具栏,在URL后面加上 &task=add ,重新加载页面,你应该看到以下的工具栏:
暂时不提供图片显示,请参考《Joomla! extension development》
当你的用户要使用你的组件的时候,他们当然不想自己手动地在URL后添加 task 变量,那么他们怎么才能使用第二个工具栏呢?每个工具栏都对应着不同的 task ,当一个按钮被点击,相关的 task 就会加入到表单中并自动提交。
一旦适合的表单在适合的位置时,单击“新建”按钮会看到第二个工具栏,既然我们没有任何的表单在后端,这些工具栏按钮是不会工作的。下一章将会教你怎么让这些按钮生效。
有效的工具栏按钮
Joomla!允许你使用自己的 task 和 label 覆盖任何的按钮,分别传入第一个和第二个参数来覆盖。以下是Joomla!标准版本提供的有效的按钮:
暂时不提供图片显示,请参考《Joomla! extension development》
说明:
如果你想创建想核心按钮一样的自定义按钮,可以使用 JtoolBarHelper 的成员函数 custom() ,并传递 task、icon、mouse-over 图片和文本描述作为参数。
更多关于joomla相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《ThinkPHP常用方法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于joomla程序设计有所帮助。
你可能感兴趣的:(joomla组件开发入门教程)
Uni-App 双栏联动滚动组件开发详解 (电梯导航)
FFF-X
uni-app
本文基于提供的代码实现一个左右联动的滚动组件,以下是详细的代码解析与实现原理说明:{{item}}{{section.title}}{{para}}exportdefault{//组件参数定义props:{leftData:{//左侧导航数据type:Array,default:()=>['章节1','章节2','章节3','章节4','章节5','章节6'],},rightData:{//右侧内
HTML+CSS案例展示(CSS3D效果旋转相册)
hacalili
html css 前端 css3
参考来源:黑马程序员pink老师前端入门教程,零基础必看的h5(html5)+css3+移动端前端视频教程_哔哩哔哩_bilibili效果展示:总结:transform:translate(x,y)rotate(180deg)scale()...顺序对最后的效果有影响,需要根据需求安排位移和其他属性的顺序;实现暂停动画效果:animation-play-state:paused;经常和鼠标经过等其
Scrapy 入门教程
zru_9602
爬虫 scrapy
Scrapy入门教程Scrapy是一个用于爬取网站数据的Python框架,功能强大且易于扩展。本文将介绍Scrapy的基本概念、安装方法、使用示例,并展示如何编写一个基本的爬虫。1.什么是Scrapy?Scrapy是一个开源的、用于爬取网站数据的框架,主要特点包括:高效、异步的爬取机制强大的XPath和CSS选择器解析能力内置中间件,支持代理、去重等功能易于扩展,适用于各种爬虫需求2.安装Scra
《MySQL 入门教程》第 30 篇 数据库索引
不剪发的Tony老师
MySQL入门教程 mysql 索引 create index drop index
文章目录30.1创建索引30.2查看索引30.3修改索引30.4删除索引数据库索引(Index)就像书籍后面的关键字索引,按照关键字进行排序,并且提供了指向具体内容的页码。索引可以用于提高数据库的查询性能;但是索引需要占用额外的磁盘空间,修改数据时也需要进行索引的维护。了解并适当利用索引对于数据库的优化至关重要,本篇我们介绍MySQL索引的管理。关于B-树索引的原理以及利用索引优化SQL语句的详细
Vue2与Vue3组件开发全维度对比实战指南
Forever丿顾北
专题文章 vue.js 前端 前端框架
Vue2与Vue3组件开发全维度对比实战指南一、组件基础架构对比1.1组件定义方式演进Vue2OptionsAPI详解在Vue2中,组件主要通过OptionsAPI来定义。OptionsAPI将组件的不同方面,如数据、方法、生命周期钩子等,分开定义在一个对象中。这种方式对于初学者来说,易于理解和上手。以一个简单的计数器组件为例:{{count}}增加exportdefault{data(){ret
【第9章】“基础工作流”怎么用?(图生图/局部重绘/VAE/更多基础工作流)ComfyUI基础入门教程
聚梦小课堂
ComfyUI基础入门课 comfyui 基础教程 工作流教程 AI绘画教程 AI作画 人工智能 stable diffusion
引言学到这里,大家是不是会比较纠结,好像还在持续学习新的东西,未来还有多少基础的东西要学习,才能正常使用ComfyUI呢?这其实需要转变一个心态。AI绘画还处于一个快速迭代的过程,隔三岔五的就会有很多新技术、新模型出现,ComfyUI目前同样处于一个快速更新的阶段,从更新记录上也可以看到,几乎每一两天都会更新新版本。同样,生态的各种自定义节点也在持续更新。所以,不可能有个教程把所有未来会用到的知识
零基础怎么开始学网络安全(非常详细)零基础入门到精通,收藏这一篇就够了
程序员羊羊
web安全 安全 网络 php 学习
一、学习建议1.了解基础概念:开始之前,了解网络安全的基本概念和术语是很重要的。你可以查找网络安全入门教程或在线课程,了解网络安全领域的基本概念,如黑客、漏洞、攻击类型等。2.网络基础知识:学习计算机网络基础知识,了解网络通信原理,不同网络协议(如TCP/IP)的工作方式,以及网络拓扑结构等。3.操作系统知识:了解常见的操作系统,特别是Windows和Linux。掌握基本的命令行操作和系统管理技能
网络安全入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
白帽黑客坤哥
web安全 网络 安全 python windows
href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/kdoc_html_views-1a98987dfd.css"rel="stylesheet"/>href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_v
Deno入门教程:Node.js 的替代品
xiaoweids
编程语言 JavaScript node.js javascript 开发语言
转自:微点阅读https://www.weidianyuedu.com这几天假期,我学习了一下Deno[1]。它是Node.js的替代品。有了它,将来可能就不需要Node.js了。这篇文章就是Deno的一个初步介绍,尝试回答为什么Node.js不能满足需要,以及Deno能够带给我们什么?以下内容主要基于BertBelder[2]和RyanDahl[3]的最新演讲。0、进入主题之前,先说一下Deno
C++协程入门教程
ox0080
# 北漂+滴滴出行 C++协程 VIP 激励 c++ 开发语言
一、环境搭建(Docker+双编译系统)1.全能Docker环境配置FROMubuntu:22.04#基础工具链RUNapt-getupdate&&DEBIAN_FRONTEND=noninteractiveapt-getinstall-y\build-essentialcmakebazelgitg++-12libcppcoro-dev\openssh-serverrsyslogcurlgnupg
python orm框架sqlalchemy_Python的ORM框架SQLAlchemy入门教程
weixin_39758041
python orm框架sqlalchemy
SQLAlchemy的核心理念是,SQL数据库查询的数量级和特性关键于目标结合;而目标结合的抽象性又关键于表和行。一安裝SQLAlchemy编码以下:pipinstallsqlalchemy导进要是没有出错则安裝取得成功编码以下:importsqlalchemysqlalchemy.__version__‘0.9.1’二应用sqlalchemy对数据库操作1.界定元信息内容,关联到模块编码以下:(
Python的ORM框架SQLAlchemy入门教程
searchwang
SQLAlchemy是python操作数据库的一个库。能够进行orm映射,SQLAlchemy“采用简单的Python语言,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型”SQLAlchemy的理念是,SQL数据库的量级和性能重要于对象集合;而对象集合的抽象又重要于表和行。一安装SQLAlchemy复制代码代码如下:pipinstallsqlalchemy导入如果没有报错则安装成功复制
PHP入门教程3:数组和字符串操作
Evaporator Core
# php程序设计经验 php android 开发语言
PHP入门教程3:数组和字符串操作在前两篇文章中,我们学习了PHP的基础语法、控制结构和函数的使用。本文将重点介绍数组和字符串的高级操作,这些是PHP编程中非常常见且重要的内容。本文将包含以下几个部分:数组的类型和操作多维数组数组函数字符串操作字符串函数1.数组的类型和操作数组是一种可以存储多个值的数据结构。PHP中有三种类型的数组:索引数组、关联数组和多维数组。索引数组索引数组是用数字索引的数组
网络安全入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
白帽黑客坤哥
web安全 安全 网络 网络安全 物联网
href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/kdoc_html_views-1a98987dfd.css"rel="stylesheet"/>href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_v
【Unity入门教程】第一章 游戏引擎基础 【中国大学MOOC游戏引擎原理及应用】
晴夏。
unity游戏开发 游戏 unity 游戏开发 unity3d
以下均为来自中国大学mooc游戏引擎原理及应用时的学习笔记,不含商用,仅供学习交流使用,如果侵权请联系作者删除。第一章都很简单没什么好讲的,简单的介绍一下(其实是学习的时候第二章才开始记笔记)https://www.icourse163.org/course/CUC-1450317378?tid=1450731676才不会说是为了规格整齐每章都有才水了个第一章的
Web安全攻防入门教程——hvv行动详解
白帽子黑客罗哥
web安全 安全 hw 护网行动 网络安全
Web安全攻防入门教程Web安全攻防是指在Web应用程序的开发、部署和运行过程中,保护Web应用免受攻击和恶意行为的技术与策略。这个领域不仅涉及防御措施的实现,还包括通过渗透测试、漏洞挖掘和模拟攻击来识别潜在的安全问题。本教程将带你入门Web安全攻防的基础概念、常见攻击类型、防御技术以及一些实战方法。一、Web安全基础Web应用安全的三大核心目标(CIA三原则)机密性(Confidentialit
Web安全攻防入门教程——hvv行动详解
白帽子黑客罗哥
web安全 安全 学习 网络 网络安全
Web安全攻防入门教程Web安全攻防是指在Web应用程序的开发、部署和运行过程中,保护Web应用免受攻击和恶意行为的技术与策略。这个领域不仅涉及防御措施的实现,还包括通过渗透测试、漏洞挖掘和模拟攻击来识别潜在的安全问题。本教程将带你入门Web安全攻防的基础概念、常见攻击类型、防御技术以及一些实战方法。一、Web安全基础Web应用安全的三大核心目标(CIA三原则)机密性(Confidentialit
92.HarmonyOS NEXT开发学习路径与最佳实践总结:构建高质量应用
harmonyos-next
温馨提示:本篇博客的详细代码已发布到git:https://gitcode.com/nutpi/HarmonyosNext可以下载运行哦!HarmonyOSNEXT开发学习路径与最佳实践总结:构建高质量应用1.学习路径指南1.1基础知识阶段阶段重点内容相关教程学习目标入门基础开发环境、基本语法01-03搭建环境,理解基础概念组件开发UI组件、生命周期04-06掌握组件开发和状态管理数据处理状态管理
Web安全攻防入门教程——hvv行动详解
白帽子黑客罗哥
web安全 安全 网络安全 python java
Web安全攻防入门教程Web安全攻防是指在Web应用程序的开发、部署和运行过程中,保护Web应用免受攻击和恶意行为的技术与策略。这个领域不仅涉及防御措施的实现,还包括通过渗透测试、漏洞挖掘和模拟攻击来识别潜在的安全问题。本教程将带你入门Web安全攻防的基础概念、常见攻击类型、防御技术以及一些实战方法。一、Web安全基础Web应用安全的三大核心目标(CIA三原则)机密性(Confidentialit
STM32入门教程——CAN驱动经验文档
单片机的码农
STM32入门教程 stm32 单片机 嵌入式硬件
##1.引言-简述STM32F407微控制器及其在工业和汽车应用中的CAN通讯重要性。-阐明文档的目标,即分享STM32F407CAN驱动的开发经验和最佳实践。##2.STM32F407CAN硬件特性-详细介绍STM32F407的CAN硬件特性,包括消息RAM、工作模式、消息过滤等。-讨论STM32F407的CAN外设时钟配置和中断管理。##3.开发环境搭建-推荐并指导安装必要的软件工具,如STM
Deepseek:物理神经网络PINN入门教程
天一生水water
神经网络 人工智能 深度学习
一、物理信息网络(PINN)的概念与原理1.定义与来源物理信息网络(Physics-InformedNeuralNetworks,PINN)是一种将物理定律(如偏微分方程、守恒定律等)嵌入神经网络训练过程的深度学习方法。其核心思想是通过神经网络同时拟合观测数据并满足物理约束,从而解决传统数值方法难以处理的高维、噪声数据或复杂边界条件问题。来源:PINN起源于对传统数值方法局限性的改进需求(如网格生
ArcGIS技巧-解决ArcMAP中无法交换图层的问题
称昵写填未
arcgis
本文基于B站GIS之梦的Arcgis零基础入门教程第13节,及同作者提供的联系数据(见视频评论区),感谢UP提供的学习资料,以下附视频链接:Arcgis零基础入门教程_哔哩哔哩_bilibili缩略版:将“内容列表”从“按源列出”修改为“按绘制循序列出”即可详细版:(1)在以下情形中,假设我们希望将“爱心树叶.tif”转移到“爱心_copy(.shp格式)”之上,当我们拖动“爱心树叶.tif”时,
AWK 入门教程:强大的文本处理工具
程序员的世界你不懂
shell linux 服务器 运维
AWK是一种强大的文本处理工具,广泛用于Linux/Unix系统中对文本文件或数据流进行操作。它能够基于条件筛选、统计字段、重新排列数据等。主要特点包括:2.AWK的基本语法2.1AWK程序的结构AWK程序的结构:awk 'pattern { action }' file2.2常用内置变量变量含义NR当前处理的行号FNR当前文件的行号(处理多个文件时的相对行号)NF当前行的字段数(列数)2第1列、
Taro 面试题
傻小胖
面试 小程序 taro
基础概念1.Taro是什么?它的核心特点有哪些?Taro是京东开源的多端统一开发框架,基于React语法,可编译到微信小程序、H5、ReactNative等多个端。核心特点:多端适配:一套代码运行多个端支持React生态:Hooks、Redux、MobX、ContextAPI等组件化开发:提高代码复用性基于JSX:类似React组件开发方式良好生态:支持npm包、TypeScript、ES6+2.
探索编程之旅:Visual Studio经典C++入门教程详解
松京焕Max
探索编程之旅:VisualStudio经典C++入门教程详解VisualStudio经典C入门教程.zip项目地址:https://gitcode.com/open-source-toolkit/2fd5a在这个数字化时代,编程技能已经成为解锁无限可能的钥匙。对于那些渴望踏入C++世界的新人来说,有一个宝藏级的资源不容错过——《VisualStudio经典C++入门教程》。本文将带你领略这一教程的
第三章:组件开发实战 - 第五节 - Tailwind CSS 响应式导航栏实现
导航栏是几乎所有网站都必备的组件,一个好的响应式导航栏需要在不同设备上都能提供出色的用户体验。本节将介绍如何使用TailwindCSS实现功能完善的响应式导航栏。基础导航栏结构桌面端导航首页产品关于联系我们登录注册移动端菜单按钮打开主菜单移动端菜单面板首页产品关于联系我们登录注册交互功能实现菜单切换功能functionsetupMobileMenu(){constbutton=document.q
C#基础教程07 判断
超级无敌暴龙战士塔塔开
C# c# 开发语言 .net
文章目录C#条件判断入门教程条件判断的基本语法常用运算符逻辑运算符if语句总结C#条件判断入门教程在C#编程语言中,条件判断是一种非常重要的控制语句。通过条件判断,我们可以根据不同的情况执行不同的代码,实现程序的流程控制。本篇文章将为大家介绍C#条件判断的基本语法、常用运算符、逻辑运算符,以及if语句、switch语句等控制语句的使用方法。条件判断的基本语法在C#中,条件判断的基本语法如下:pla
ESP32 小智 AI 机器人入门教程从原理到实现(自己云端部署)
与光同尘 大道至简
人工智能 机器人 python 人机交互 github visual studio 单片机
此博客为一篇针对初学者的详细教程,涵盖小智AI机器人的原理、硬件准备、软件环境搭建、代码实现、云端部署以及优化扩展。文章结合了现有的网络资源,取长补短,确保内容易于理解和操作。简介:本教程将指导初学者使用ESP32微控制器开发一个简单的语音对话机器人“小智”。我们将介绍所需的基础原理、硬件准备、软件环境搭建,以及如何编写代码实现语音唤醒和与云端大模型的对接。通过本教程,即使没有深厚的AI或嵌入式经
Netty入门教程
Kale又菜又爱玩
java 开发语言
Netty入门教程Netty是一个高性能、低延迟的网络通信框架,广泛应用于高并发、高吞吐量的网络应用程序中。它提供了简洁易用的API,封装了底层的复杂操作,让开发者能够专注于业务逻辑。本文将从基础概念入手,逐步深入Netty的核心组件、使用方法及高级特性,帮助你在生产环境中得心应手地使用Netty。1.什么是Netty?Netty是一个异步、事件驱动的网络通信框架,极大地简化了TCP和UDP网络编
Unity游戏引擎
喜欢星期五
游戏引擎 unity
在数字创意的世界里,Unity引擎以其强大的功能和灵活性,已经成为无数开发者心中构建梦想游戏的首选工具。今天,我们就来深入探讨Unity的奥秘,解锁它如何帮助我们实现那些令人惊叹的游戏项目。unity博文的概要:1.入门教程和资源分享初学者指南:这类博文为刚接触Unity的新手提供入门指导,介绍Unity界面布局、基本操作和简单的游戏开发流程。资源推荐:分享对开发者非常有帮助的Unity插件、模型
Spring4.1新特性——Spring MVC增强
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
mysql 性能查询优化
annan211
java sql 优化 mysql 应用服务器
1 时间到底花在哪了?
mysql在执行查询的时候需要执行一系列的子任务,这些子任务包含了整个查询周期最重要的阶段,这其中包含了大量为了
检索数据列到存储引擎的调用以及调用后的数据处理,包括排序、分组等。在完成这些任务的时候,查询需要在不同的地方
花费时间,包括网络、cpu计算、生成统计信息和执行计划、锁等待等。尤其是向底层存储引擎检索数据的调用操作。这些调用需要在内存操
windows系统配置
cherishLC
windows
删除Hiberfil.sys :使用命令powercfg -h off 关闭休眠功能即可:
http://jingyan.baidu.com/article/f3ad7d0fc0992e09c2345b51.html
类似的还有pagefile.sys
msconfig 配置启动项
shutdown 定时关机
ipconfig 查看网络配置
ipconfig /flushdns
人体的排毒时间
Array_06
工作
========================
|| 人体的排毒时间是什么时候?||
========================
转载于:
http://zhidao.baidu.com/link?url=ibaGlicVslAQhVdWWVevU4TMjhiKaNBWCpZ1NS6igCQ78EkNJZFsEjCjl3T5EdXU9SaPg04bh8MbY1bR
ZooKeeper
cugfy
zookeeper
Zookeeper是一个高性能,分布式的,开源分布式应用协调服务。它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如同步, 配置管理,集群管理,名空间。它被设计为易于编程,使用文件系统目录树作为数据模型。服务端跑在java上,提供java和C的客户端API。 Zookeeper是Google的Chubby一个开源的实现,是高有效和可靠的协同工作系统,Zookeeper能够用来lea
网络爬虫的乱码处理
随意而生
爬虫 网络
下边简单总结下关于网络爬虫的乱码处理。注意,这里不仅是中文乱码,还包括一些如日文、韩文 、俄文、藏文之类的乱码处理,因为他们的解决方式 是一致的,故在此统一说明。 网络爬虫,有两种选择,一是选择nutch、hetriex,二是自写爬虫,两者在处理乱码时,原理是一致的,但前者处理乱码时,要看懂源码后进行修改才可以,所以要废劲一些;而后者更自由方便,可以在编码处理
Xcode常用快捷键
张亚雄
xcode
一、总结的常用命令:
隐藏xcode command+h
退出xcode command+q
关闭窗口 command+w
关闭所有窗口 command+option+w
关闭当前
mongoDB索引操作
adminjun
mongodb 索引
一、索引基础: MongoDB的索引几乎与传统的关系型数据库一模一样,这其中也包括一些基本的优化技巧。下面是创建索引的命令: > db.test.ensureIndex({"username":1}) 可以通过下面的名称查看索引是否已经成功建立: &nbs
成都软件园实习那些话
aijuans
成都 软件园 实习
无聊之中,翻了一下日志,发现上一篇经历是很久以前的事了,悔过~~
断断续续离开了学校快一年了,习惯了那里一天天的幼稚、成长的环境,到这里有点与世隔绝的感觉。不过还好,那是刚到这里时的想法,现在感觉在这挺好,不管怎么样,最要感谢的还是老师能给这么好的一次催化成长的机会,在这里确实看到了好多好多能想到或想不到的东西。
都说在外面和学校相比最明显的差距就是与人相处比较困难,因为在外面每个人都
Linux下FTP服务器安装及配置
ayaoxinchao
linux FTP服务器 vsftp
检测是否安装了FTP
[root@localhost ~]# rpm -q vsftpd
如果未安装:package vsftpd is not installed 安装了则显示:vsftpd-2.0.5-28.el5累死的版本信息
安装FTP
运行yum install vsftpd命令,如[root@localhost ~]# yum install vsf
使用mongo-java-driver获取文档id和查找文档
BigBird2012
driver
注:本文所有代码都使用的mongo-java-driver实现。
在MongoDB中,一个集合(collection)在概念上就类似我们SQL数据库中的表(Table),这个集合包含了一系列文档(document)。一个DBObject对象表示我们想添加到集合(collection)中的一个文档(document),MongoDB会自动为我们创建的每个文档添加一个id,这个id在
JSONObject以及json串
bijian1013
json JSONObject
一.JAR包简介
要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:
1.commons-lang-2.0.jar
2.commons-beanutils-1.7.0.jar
3.commons-collections-3.1.jar
&n
[Zookeeper学习笔记之三]Zookeeper实例创建和会话建立的异步特性
bit1129
zookeeper
为了说明问题,看个简单的代码,
import org.apache.zookeeper.*;
import java.io.IOException;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ThreadLocal
【Scala十二】Scala核心六:Trait
bit1129
scala
Traits are a fundamental unit of code reuse in Scala. A trait encapsulates method and field definitions, which can then be reused by mixing them into classes. Unlike class inheritance, in which each c
weblogic version 10.3破解
ronin47
weblogic
版本:WebLogic Server 10.3
说明:%DOMAIN_HOME%:指WebLogic Server 域(Domain)目录
例如我的做测试的域的根目录 DOMAIN_HOME=D:/Weblogic/Middleware/user_projects/domains/base_domain
1.为了保证操作安全,备份%DOMAIN_HOME%/security/Defa
求第n个斐波那契数
BrokenDreams
今天看到群友发的一个问题:写一个小程序打印第n个斐波那契数。
自己试了下,搞了好久。。。基础要加强了。
&nbs
读《研磨设计模式》-代码笔记-访问者模式-Visitor
bylijinnan
java 设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
interface IVisitor {
//第二次分派,Visitor调用Element
void visitConcret
MatConvNet的excise 3改为网络配置文件形式
cherishLC
matlab
MatConvNet为vlFeat作者写的matlab下的卷积神经网络工具包,可以使用GPU。
主页:
http://www.vlfeat.org/matconvnet/
教程:
http://www.robots.ox.ac.uk/~vgg/practicals/cnn/index.html
注意:需要下载新版的MatConvNet替换掉教程中工具包中的matconvnet:
http
ZK Timeout再讨论
chenchao051
zookeeper timeout hbase
http://crazyjvm.iteye.com/blog/1693757 文中提到相关超时问题,但是又出现了一个问题,我把min和max都设置成了180000,但是仍然出现了以下的异常信息:
Client session timed out, have not heard from server in 154339ms for sessionid 0x13a3f7732340003
CASE WHEN 用法介绍
daizj
sql group by case when
CASE WHEN 用法介绍
1. CASE WHEN 表达式有两种形式
--简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
--Case搜索函数
CASE
WHEN sex = '1' THEN
PHP技巧汇总:提高PHP性能的53个技巧
dcj3sjt126com
PHP
PHP技巧汇总:提高PHP性能的53个技巧 用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的函数译注: PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍
Yii框架中CGridView的使用方法以及详细示例
dcj3sjt126com
yii
CGridView显示一个数据项的列表中的一个表。
表中的每一行代表一个数据项的数据,和一个列通常代表一个属性的物品(一些列可能对应于复杂的表达式的属性或静态文本)。 CGridView既支持排序和分页的数据项。排序和分页可以在AJAX模式或正常的页面请求。使用CGridView的一个好处是,当用户浏览器禁用JavaScript,排序和分页自动退化普通页面请求和仍然正常运行。
实例代码如下:
Maven项目打包成可执行Jar文件
dyy_gusi
assembly
Maven项目打包成可执行Jar文件
在使用Maven完成项目以后,如果是需要打包成可执行的Jar文件,我们通过eclipse的导出很麻烦,还得指定入口文件的位置,还得说明依赖的jar包,既然都使用Maven了,很重要的一个目的就是让这些繁琐的操作简单。我们可以通过插件完成这项工作,使用assembly插件。具体使用方式如下:
1、在项目中加入插件的依赖:
<plugin>
php常见错误
geeksun
PHP
1. kevent() reported that connect() failed (61: Connection refused) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET / HTTP/1.1", upstream: "fastc
修改linux的用户名
hongtoushizi
linux change password
Change Linux Username
更改Linux用户名,需要修改4个系统的文件:
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
古老/传统的方法是使用vi去直接修改,但是这有安全隐患(具体可自己搜一下),所以后来改成使用这些命令去代替:
vipw
vipw -s
vigr
vigr -s
具体的操作顺
第五章 常用Lua开发库1-redis、mysql、http客户端
jinnianshilongnian
nginx lua
对于开发来说需要有好的生态开发库来辅助我们快速开发,而Lua中也有大多数我们需要的第三方开发库如Redis、Memcached、Mysql、Http客户端、JSON、模板引擎等。
一些常见的Lua库可以在github上搜索,https://github.com/search?utf8=%E2%9C%93&q=lua+resty。
Redis客户端
lua-resty-r
zkClient 监控机制实现
liyonghui160com
zkClient 监控机制实现
直接使用zk的api实现业务功能比较繁琐。因为要处理session loss,session expire等异常,在发生这些异常后进行重连。又因为ZK的watcher是一次性的,如果要基于wather实现发布/订阅模式,还要自己包装一下,将一次性订阅包装成持久订阅。另外如果要使用抽象级别更高的功能,比如分布式锁,leader选举
在Mysql 众多表中查找一个表名或者字段名的 SQL 语句
pda158
mysql
在Mysql 众多表中查找一个表名或者字段名的 SQL 语句:
方法一:SELECT table_name, column_name from information_schema.columns WHERE column_name LIKE 'Name';
方法二:SELECT column_name from information_schema.colum
程序员对英语的依赖
Smile.zeng
英语 程序猿
1、程序员最基本的技能,至少要能写得出代码,当我们还在为建立类的时候思考用什么单词发牢骚的时候,英语与别人的差距就直接表现出来咯。
2、程序员最起码能认识开发工具里的英语单词,不然怎么知道使用这些开发工具。
3、进阶一点,就是能读懂别人的代码,有利于我们学习人家的思路和技术。
4、写的程序至少能有一定的可读性,至少要人别人能懂吧...
以上一些问题,充分说明了英语对程序猿的重要性。骚年
Oracle学习笔记(8) 使用PLSQL编写触发器
vipbooks
oracle sql 编程 活动 Access
时间过得真快啊,转眼就到了Oracle学习笔记的最后个章节了,通过前面七章的学习大家应该对Oracle编程有了一定了了解了吧,这东东如果一段时间不用很快就会忘记了,所以我会把自己学习过的东西做好详细的笔记,用到的时候可以随时查找,马上上手!希望这些笔记能对大家有些帮助!
这是第八章的学习笔记,学习完第七章的子程序和包之后