- 使用IDEA创建一个SpringBoot项目
web13293720476
面试学习路线阿里巴巴springbootintellij-ideajava服务器linux
文章目录一、SpringBoot是什么?二、使用idea创建SpringBoot项目1.使用idea的SpringInitiallizr创建项目2.初步配置3.编写简单代码及运行4.两个好玩的小东西总结一、SpringBoot是什么?Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特
- Gemfire Geode redis区别
薛定谔的猫1982
系统架构redisredis数据库缓存
GemFire、ApacheGeode和Redis是三种不同的数据管理工具,它们之间的区别具体如下:技术性质GemFire:是Pivotal公司(现隶属于VMware)推出的一款商业数据管理软件,主要用于构建分布式、高性能的数据密集型应用,为企业提供专业的数据管理解决方案,强调企业级的功能和支持。ApacheGeode:是基于GemFire的开源版本,由Apache软件基金会维护和管理。它继承了G
- Agent实战系列:快速自定义Agent在业务线落地:从入门到高级[实现tool串联、多轮对话、多Agent动态编排、静态编排等]
汀、人工智能
AIAgentLLM工业级落地实践人工智能AIAgent多智能体协作知识问答智能问答RAGAI编排流
Agent实战系列:快速自定义Agent在业务线落地:从入门到高级[实现tool串联、多轮对话、多Agent动态编排、静态编排等]本系列涵盖了多个关键功能的实现,包括tool串联、多轮对话、多Agent动态编排以及静态编排等。通过这些功能的学习与实践,用户将能够构建出功能丰富、灵活多变的Agent系统。tool串联让Agent能够调用多种工具和服务,多轮对话则让Agent能够与用户进行更加自然和深
- solidity基础 -- 合约结构
第十六年盛夏.
Solidity区块链智能合约
所有本篇以及以前出现的代码均可以在本人GitHubGitHub-solidity学习代码上找到合约结构在Solidity中,合约类似于面向对象编程语言中的类。每个合约中可以包含状态变量、函数、函数修饰器、事件、结构类型、和枚举类型的声明,且合约可以从其他合约继承。状态变量状态变量是永久地存储在合约存储中的值。pragmasolidity^0.4.0;contractSimpleStorage{ui
- NCNN推理
呆呆珝
推理框架c++人工智能
1.前言ncnn是一个高性能的神经网络前向计算框架,专门针对移动设备和嵌入式设备设计。它由腾讯优图实验室开发,旨在提供高效的神经网络推理能力,特别是在资源受限的环境中,如智能手机和嵌入式系统。ncnn被广泛应用于移动端和嵌入式设备上的各种深度学习应用,包括但不限于:图像分类/目标检测/语义分割/人脸识别/图像生成与处理2.NCNN的CMakeLists.txt编写ncnn的头文件,链接文件,静态链
- Maven的继承与聚合特性:大型项目管理的利器
时雨h
JAVAmavenpythonjava
Maven的继承与聚合特性:大型项目管理的利器一、引言在Java项目开发中,尤其是大型项目,管理项目的配置和模块构建是一项具有挑战性的任务。Maven作为一款强大的项目管理工具,提供了继承和聚合等特性,有效地解决了这些问题。本文将深入探讨Maven的继承和聚合特性,并通过实战案例展示如何在搭建微服务项目中应用它们。二、Maven工程继承关系2.1继承概念Maven继承是一种在Maven项目中让一个
- 「全网最细 + 实战源码案例」设计模式——简单工厂模式
松弛进取
设计模式简单工厂模式后端java
核心思想简单工厂模式是一种创建者模式,它通过一个工厂类负责创建不同类型的对象,根据传入的参数决定实例化的具体类,也被称为“静态工厂方法”模式,因为工厂方法通常是静态的。结构1.工厂类:提供一个静态方法,根据不同条件创建并返回具体的产品对象。2.产品接口(抽象类)定义产品的通用行为。3.具体产品类工厂根据条件创建的具体实例。适用场景1.创建的对象种类少。2.调用者不需要关心具体产品类的创建细节。优缺
- 「全网最细 + 实战源码案例」设计模式——工厂方法模式
松弛进取
设计模式工厂方法模式后端java
核心思想简单工厂模式是一种创建者模式,它通过一个工厂类负责创建不同类型的对象,根据传入的参数决定实例化的具体类,也被称为“静态工厂方法”模式,因为工厂方法通常是静态的。结构1.工厂类:提供一个静态方法,根据不同条件创建并返回具体的产品对象。2.产品接口(抽象类)定义产品的通用行为。3.具体产品类工厂根据条件创建的具体实例。适用场景1.创建的对象种类少。2.调用者不需要关心具体产品类的创建细节。优缺
- c++常见设计模式之装饰器模式
_DCG_
c++c++设计模式装饰器模式
基础介绍装饰器模式是结构型设计模式,从字面意思看装饰器设计模式就是用来解决在原有的实现基础上添加一些额外的实现的问题。那么正统的概念是什么呢?装饰器模式允许我们动态的向对象添加新的行为,同时不改变其原有的结构。它是一种比继承更灵活的扩展对象功能的方式。举个简单的例子,比如手机作为一个产品,希望在基础手机的基础上实现新增两个功能1,且不希望改变类原有的结构,这种情况下就需要使用到装饰器模式。实现原理
- C++经典面试题(适合收藏)
摇光~
面试c++javajvm面试
当然,以下是一份包含20道C++面试题及其详细解答的列表:1.什么是C++中的构造函数和析构函数?构造函数:在创建对象时自动调用的函数,用于初始化对象。它可以有参数,也可以没有参数。析构函数:在对象生命周期结束时自动调用的函数,用于释放对象所占用的资源。析构函数没有返回值,也不接受任何参数。2.C++中的多态是如何实现的?C++中的多态是通过继承和虚函数来实现的。当基类中的函数被声明为虚函数时,派
- Java面试题及答案汇总(二,马士兵Java全套百度云
Java独家笑
程序员后端java面试
常用容器的图录:19.Collection和Collections有什么区别?java.util.Collection是一个集合接口(集合类的一个顶级接口)。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式,其直接继承接口有List与Set。Collections则是集
- nginx闲谈
沉默monkey
nginx运维
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录介绍特点高并发轻量级模块化设计应用场景web服务器反向代理正向代理(类似机场)配置demo负载均衡缓存处理https与ssl/tlsapi网关介绍nginx高性能(同比tomcat性能高20%),轻量的weib服务器和反向代理服务器,能解决大量并发连接(C10K问题),高并发,高可靠,低内存消耗,支持多功能模块(如前端静态资源
- .NET Framework三种Timer的区别和用法说明
未来无限
C#Winform设计三种Timer的区别和用法
.NETFramework三种Timer的区别和用法说明1.实现按用户定义的时间间隔引发事件的计时器。此计时器最宜用于Windows窗体应用程序中,并且必须在窗口中使用。System.Windows.Forms.Timer2.提供以指定的时间间隔执行方法的机制。无法继承此类。System.Threading.Timer3.在应用程序中生成定期事件。System.Timers.Timer这三个定时器
- Centos7配置vim-plug插件管理器与git安装
icacxygh001
vimcentoslinux
LINUX下VIM是一款轻量级文本编辑器,功能强大作为开发者常用开发工具之一,本文目的通过安装vim-plug来管理插件,打造基于VIM的IDE继承开发环境,这个算是第一步吧,不废话了网上有很多关于如何安装vim-plug的教程,有些踩过的坑和大家分享下:1.安装步骤看到这里默认你的系统已经安装了vim编辑器(如何安装VIM这里不再阐述),往下看首先建立你要下载vim-plug的目录$mkdir-
- SoftAP 模式 wifi调试方法与技巧
好多渔鱼好多
wifi驱动移植与调试网络
目录简介检查WiFi设备、加载驱动步骤1:检查设备步骤2:加载驱动使用iwpriv配置和启动SoftAP步骤1开启SoftAP步骤2配置信道步骤3配置认证与加密方式步骤4设置SSID使用hostapd配置和启动SoftAP步骤1修改hostapd.conf文件编辑步骤2启动hostapd进程编辑开启udhcpd配置静态IP简介前面介绍的wifi调试技巧是基于sta模式下的操作。SoftAP(软件接
- typescript(四)ts中函数的参数和返回值的类型定义
web18296061989
前端htmljavascript前端vue.js
前面我们讲到过ts的静态类型定义中的函数类型定义,先来回顾下:constfnA:()=>string=()=>{return'1'}constfnB:()=>number=()=>6constfnC:()=>boolean=()=>true拓展下:在接口中如何定义函数类型呢?接口后期会讲interfaceIfn{(one:number,two:number):number}letfniA:Ifnf
- 探索React前端框架:JavaScript技巧与最佳实践
自由翱翔碧海蓝
javascriptreact.js前端框架js
React是一个广泛使用的JavaScript前端框架,它提供了一种组件化的开发模式,使得构建交互式用户界面变得更加简单和高效。在本文中,我们将深入探讨React框架的一些关键技巧和最佳实践,同时提供相应的源代码示例。合理使用函数组件和类组件React提供了两种主要的组件类型:函数组件和类组件。函数组件是纯粹的JavaScript函数,而类组件则是通过继承React.Component类创建的。在
- 15 分布式锁和分布式session
40岁的系统架构师
分布式系统架构
在java中一个进程里面使用synchronized在new出来对象头信息中加锁,如果是静态方法中在加载的类信息中加锁(我们在锁的原理中讲过)。如果使用lock加锁可以自己指定。这些都是在同一个进程空间中的操作。如果在分布式环境中由于程序不在一个进程空间,就没办法使用这些原子性的元素中加锁,我们需要在不同的进程空间中找原子性的元素。这就是分布式锁基于数据库的分布式锁该方式通过数据库的唯一索引来实现
- java 替换list中值的方法分享
qq_25073223
java
转自:Java如何更换List指定位置上的元素呢?list集合简介:1.List接口继承Collection接口,实现了List接口的类称为List集合。2.在List集合中允许出现重复的元素,所有元素以线性方式进行存储,可以通过索引来访问集合中指定的元素。List集合的元素的存储顺序和取出顺序一致。3.List不但继承了Collection接口中的全部方法,还增加了一些根据元素位置索引来操作集合
- java集合与队列详解
羽落风起
Java队列java集合
说明java集合是jdk自带java核心功能,它主要用来存储大量同类型数据快速高效稳定的查找、添加、替换,主要分为List、Set、Map、Queue,前两个继承Collection接口,Map为独立接口。分类Collection接口List接口,有序可重复。分类ArrayList:底层是数组,默认大小10每次增加一半,线程不安全,效率高,查询快,增删慢Vector:底层数组,查询快,增删慢,线程
- k8s中使用MySQL共享存储_k8s使用NFS做动态存储做mysql容器主从同步
罗-Moline
k8s中使用MySQL共享存储
k8s里面存储一直是比较难搞得,之前做的静态存储,写这篇文档记录一下动态存储创建的过程。使用动态存储的好处是开发者可以更关注自己的开发环境,不用关心后端的资源,还有就是更换存储类型不用做大的改变,只需切换一下storageclassName即可。根据这篇博客来的!谢谢博主!!!https://www.cnblogs.com/00986014w/p/9406962.html我把大致上思路分成三步:1
- Java 封装与继承:面向对象编程的两大支柱
来恩1003
Java从入门到精通java开发语言
Java学习资料Java学习资料Java学习资料引言在Java的面向对象编程(OOP)体系里,封装和继承是极为关键的概念。它们不仅是构建复杂软件系统的基础,也为代码的设计、维护与扩展提供了强大助力。接下来,我们将深入探究这两大支柱的内涵、实现方式及其在实际开发中的价值。封装封装的定义封装是把对象的属性和操作这些属性的方法捆绑在一起,形成一个独立的单元,并尽可能隐藏对象的内部实现细节,只向外部提供必
- C语言学习记录——通讯录(静态内存)
qiyi.sky
C语言学习c语言
分模块contact.h类型定义,函数声明。contact.c函数的实现test.c测试通讯录的模块test.c#include"contact.h"voidmenu(){printf("\n");printf("1.add2.del\n");printf("3.search4.modify\n");printf("5.sort6.print\n");printf("0.exit\n");prin
- 第04章 06 VTK静态数据模型和动态数据模型示例
捕鲸叉
VTK编程学习VTK信息可视化
VTK(VisualizationToolkit)提供了多种数据模型来处理和表示各种类型的数据。其中,静态数据模型和动态数据模型是两种不同的数据表示方式,各自具有不同的特点和适用场合。静态数据模型特点静态数据模型是VTK中默认的数据模型,适用于数据不随时间变化的场景。数据结构稳定:在静态数据模型中,数据结构在创建后不发生改变,或者改变的频率很低。高效处理:由于数据结构稳定,VTK可以优化数据的存储
- Redisson 实现分布式锁
程序员jin
编程开发数据库分布式数据库redis
文章目录一.锁介绍二.什么是分布式锁三.为什么需要分布式锁四.分布式锁实现五.分布式锁注意事项六.看门狗机制七.Redisson实现分布式锁一.锁介绍单机锁:用于一台服务器的同步执行。分布式锁:用于多台服务器之间的同步执行。有限资源的情况下,控制同一时间(段)只有某些线程(用户/服务器)能访问到资源。Java实现锁:synchronized关键字、并发包的类。Javasynchronized实现锁
- Vue3项目开发——新闻发布管理系统(八)
bjzhang75
Vue知识学习及项目开发实践项目开发实践Vue3项目开发新闻发布管理系统
文章目录十、新闻管理模块设计开发1、新闻管理主页面设计1.1基本架构搭建1.1.1搜索表单1.1.2新闻主表格样式(静态数据模拟渲染)1.2新闻分类选择框1.2.1新建组件1.2.2页面中导入渲染1.2.3调用接口,动态渲染下拉分类,设计成v-model的使用方式1.2.4父组件定义参数绑定1.2.5发布状态,也绑定一下,便于将来提交表单2、新闻表格渲染2.1封装API接口,新闻主表格渲染2.1.
- 25/1/22 算法笔记<ROS2> TF变换
青椒大仙KI11
笔记
TF(Transform)是ROS(RobotOperatingSystem)中的一个核心功能,用于管理和发布坐标系之间的变换关系。TF的主要作用是描述机器人系统中各个部分(如传感器、执行器、底盘等)之间的位置和姿态关系,从而实现数据的统一和模块化。静态TF(StaticTransform)是ROS(RobotOperatingSystem)中用于描述两个坐标系之间固定不变的变换关系的一种机制。静
- Java单例模式详解--七种单例模式实现+单例安全+实际应用场景
飞天葫芦侠
面向对象设计模式单例模式java安全设计模式
单例模式保证了一个类只有一个实例,并且提供了一个全局访问点。单例模式的主要作用是节省公共资源,方便控制,避免多个实例造成的问题。实现单例模式的三点:私有构造函数私有静态变量维护对象实例公有静态方法提供获取实例对象七种单例模式实现1.静态类:第一次运行初始化,全局使用2.懒汉模式(线程不安全):懒汉模式是指在第一次获取实例时才创建对象,实现了延迟加载,构造函数返回当前对象实例,但多个访问者同时获取对
- K8S中ingress详解
元气满满的热码式
kubernetes容器云原生
Ingress介绍Kubernetes集群中,服务(Service)是一种抽象,它定义了一种访问Pod的方式,无论这些Pod如何变化,服务都保持不变。服务可以被映射到一个静态的IP地址(ClusterIP)、一个NodePort(在集群的每个节点上的特定端口)、一个LoadBalancer(通过云服务提供商的负载均衡器)或一个外部IP。Service的两种服务暴露方式,NodePort和LoadB
- 4.Java设计模式-创建型模式-单例模式-懒汉式-“synchronized加锁“实现
Bigger K
Java设计模式-创建型模式java设计模式单例模式
文章目录1.懒汉式2.懒汉式-"synchronized加锁"实现3.代码测试4.总结1.懒汉式懒汉式:跟饿汉式在类加载时创建不一样,懒汉式是在我们第一次使用时才创建懒汉式,顾名思义,比较懒,没事儿就不会创建2.懒汉式-"synchronized加锁"实现publicclassSingleton{privatestaticSingletonINSTANCE;privateSingleton(){}
- 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