- Python Django学习总结
海底两万里漫步
前后端djangopython
PythonDjango学习总结(一)闲来无事又来写写博客,此次记录了我之前学习django框架的一些总结。一、Django是什么?Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T(源自百度)。目前较主流的web框架主要有RubyonRails(编程语言:Ruby)、Sinatra(编程语言:Ruby)、ExpressJS(编程语言
- ruby sinatra mysql_Ruby web微框架 – sinatra
丁晓斌
rubysinatramysql
Sinatra是一个以最小的消耗快速创建Rubyweb应用的DSL。#myapp.rbrequire'sinatra'get'/'do'Helloworld!'end安装gem:geminstallsinatra然后运行rubymyapp.rb推荐也运行geminstallthin,如果可用的话Sinatra会优先选择thin。路由在Sinatra中,一个路由是一个HTTP方法与URL匹配范式的配
- 【微型Web框架(Ruby) Sinatra】
lijieshare
编程语言之Ruby微型Web框架(Ruby)Sinatra
Sinatra:一个优雅地包装了Web开发的DSLSinatra程序的三个基本组成部分:路由(route):'/'就是路由。路由可以是单一的路径,或者带有参数的路径(比如/:name),甚至是正则表达式。对于Sinatra不知道的路由,Sinatra会返回404错误(作为App运行的时候),或者传递给下面的中间件(作为中间件运行的时候)。方法(method):get是方法。在Sinatra中,HT
- 配置Ruby环境和Sinatra框架
chaz1942
ruby开发ruby开发框架阿里云
在阿里云服务器部署Ruby环境及Sinatra开发框架安装RVM安装Ruby安装rubygems安装sinatra安装ruby可以有多种方式,我尝试从官网下载ruby-2.2.3,编译安装后使用gem一直报错。Loadingcommand:update(LoadError)cannotloadsuchfile–zlib之前使用yum安装的ruby1.8正常,所以怀疑是编译安装的时候依赖关系没有。于
- Ruby中Sinatra框架如何快速构建Web应用?
编程语言魔法师空间
ruby前端开发语言
一、引言在Ruby语言生态中,Sinatra是一个轻量级的Web应用框架,它允许开发者以简洁、优雅的方式快速构建Web应用。与Rails等重量级框架相比,Sinatra更注重简洁性和灵活性,非常适合构建小型Web服务、API或原型应用。本文将详细介绍如何在Ruby中使用Sinatra框架快速构建Web应用。二、安装Sinatra在开始使用Sinatra之前,首先需要确保已经安装了Ruby环境。然后
- golang web php,golang有web框架吗
祲入风
golangwebphp
通过尽可能多的角度(人气,社区支持,内置功能等)来比较最知名的几个Web框架。beego(推荐学习:go)beego是一个快速开发Go应用的HTTP框架,他可以用来快速开发API、Web及后端服务等各种应用,是一个RESTful的框架,主要设计灵感来源于tornado、sinatra和flask这三个框架,但是结合了Go本身的一些特性(interface、struct嵌入等)而设计的一个框架Buf
- 个人任务和项目管理软件tududi的安装
杨浦老苏
群晖docker项目管理
现在已经是2024年了,祝大家新年快乐,万事如意。什么是tu|du|di?tu|du|di是一个使用Sinatra构建的任务和项目管理Web应用程序。它允许用户有效地管理他们的任务和项目,将它们分类到不同的区域,并跟踪截止日期。tu|du|di设计直观且易于使用,为个人生产力提供无缝体验。任务管理:创建、更新和删除任务。将任务标记为已完成,并通过不同的过滤器(今天、即将到来、有一天)查看它们。按名
- go操作doris踩坑记录
清盏涂墨衣
golang开发语言后端
go操作doris踩坑记录1.doris无法用deletefrom删除整个表数据2.doris本身事务只支持insert、rollback、commitError1105(HY000):TException,msg:org.apache.thrift.TException:Thisisinatransaction,onlyinsert,commit,rollbackisacceptable最坑的是
- beego源码-config部分
神奇的考拉
写在前面beego是一个快速开发Go应用的HTTP框架,他可以用来快速开发API、Web及后端服务等各种应用,是一个RESTful的框架,主要设计灵感来源于tornado、sinatra和flask这三个框架,但是结合了Go本身的一些特性(interface、struct嵌入等)而设计的一个框架;MVC架构如下:具体内容会在后面部分给出,先从Config入口beego-mvc关于config首先要
- 怎样用Docker创建我们自己的镜像
测试员小何
官方文档Docker创建镜像总共有两种方法:1.用别人的镜像创建。1.1、先下载一个容器命令:dockerpulltraining/sinatra1.2、然后用容器启动这个镜像命令:dockerrun-t-itraining/sinatra/bin/bash1.3、接下来就是给使用中的容器,添加自己需要的工具等,来组装自己的运行环境。1.4、将上一步组装好的环境copy一份镜像。命令:docker
- Beego之Beego简介和安装
242030
beegobeego
1、beego简介1.1Beego简介Beego是一个快速开发Go应用的HTTP框架,他可以用来快速开发API、Web及后端服务等各种应用,是一个RESTful的框架,主要设计灵感来源于tornado、sinatra和flask这三个框架,但是结合了Go本身的一些特性(interface、struct嵌入等)而设计的一个框架。支持如下特性:MVCREST智能路由日志调试配置管理模板自动渲染layo
- express比php好用,[译]Node.js 框架比较: Express vs. Koa vs. Hapi
天枰baixie
express比php好用
1介绍Express.js无疑是当前Node.js中最流行的Web应用程序框架。它几乎成为了大多数Node.jsweb应用程序的基本的依赖,甚至一些例如Sails.js这样的流行的框架也是基于Express.js。然而你还有一些其他框架的选择,可以给你带来“sinatra”一样的感觉(译注:sinatra是一个简单的Ruby的Web框架,可以参考这篇博文)。另外两个最流行的框架分别是Koa和Hap
- 使用 Capsitrano 部署 Sinatra 项目
小毒物儿
部署
第一次发帖,请各位多多指教,新人在此谢过了,格式不太好,以后会多多注意的1:首先在Gemfile中加入group:developmentdogem'capistrano'gem'capistrano-chruby'gem'capistrano-rvm'gem'capistrano-bundler'end2:bundleinstall安装capistrano3:capify.执行结果:dongcha
- Beego从0开始-1-Beego环境部署以及项目创建
PP_TIAN
Go
Beego从0开始Beego简介Beego是一个基于Go语言开发的web框架,beego是一个快速开发Go应用的http框架,go语言方面技术大牛。beego可以用来快速开发API、Web、后端服务等各种应用,是一个RESTFul的框架,主要设计灵感来源于tornado、sinatra、flask这三个框架,但是结合了Go本身的一些特性(interface、struct继承等)而设计的一个框架。为
- GolangWeb架构Beego
啊啊啊杨
架构beego
Beegobeego简介beego是一款快速开发Go应用的HTTp框架,它可以用来快速开发API,Web及后端服务的各种应用,是一个Restful风格的框架,主要的设计灵感来源于tormado,sinatra和flask这三个框架,但是结合了go本身的一些特性而设计的一个框架beego的框架beego的整体设计结构如下所示:beego是基于八大独立的模块构建的,是一个高度解耦的框架。当初设计bee
- 拆箱phper最适合入门的go框架beego
老A技术联盟
golangbeego开发语言
beegobeego是一个快速开发Go应用的HTTP框架,他可以用来快速开发API、Web及后端服务等各种应用,是一个RESTful的框架,主要设计灵感来源于tornado、sinatra和flask这三个框架,但是结合了Go本身的一些特性(interface、struct嵌入等)而设计的一个框架。为什么使用框架上帝不可能让每一个人都满意,同样的,并不是所有人都喜欢框架,大概就是有三点吧,框架重,
- 用 Passenger(mod_rails) 部署 Sinatra
最近写了一些小app/webservice,因为用不到rails那样的大架构和功能,于是尝试了sinatra。写起来挺快的,感觉跟之前玩node.js的感觉有点像。部属方面也很容易在你的专案目录下新建一个config.ru档案,以及public和tmp资料夹config.ru档案内容为require'project'root_dir=File.dirname(__FILE__)set:enviro
- 用python web框架 bottle 开发网站(一)
firewt
python有很多web开发框架,django,bottle,flask,pylons,Tornado,webpy,web2py,Quixote,Pyramid,aiohttp,sani......还有其它各种出名的不出名的框架,但是微框架却不多,抛开语言,最早最有名的sinatra,webpy,直到现在还有不少用户。pythonweb入门有人推荐学习django或者flask,其实bottle比
- 英文童话系列:Fox and Rabbit狐狸与兔子
LilySakura
图片发自AppAfoxandarabbitaregoodfriends.Thefoxalwaysliestoothers,buttherabbithasnevertoldalie.Oneday,thefoxhasstolensomecandies.Hefoundthesecandiesinatraveler’sbag.Thatpoortravelerhadwalkedforlongtime.Hew
- Gin middleware中间件使用实例
devabel
原文:http://www.ttlsa.com/golang/gin-middleware-example/翻译:devabel我最近一段时间一直使用Go的Ginweb框架开发一些小型项目,迄今为止它的表现一直很棒。Gin因其简单性和与默认net/http库的兼容性而吸引了我,并且与Sinatra相似,Sinatra是一种简约的RubyRuby框架。到目前为止,我已经写了几个由Gin驱动的开源项目
- day10 - The Ride of a Lifetime
小米火烧nalakuvara
03/15-二月十三-☀️Startingfromthebottom初入职场的种种令人印象深刻的故事。一开始做各种打杂的工作,收入微薄,初入电视行业,每天4点半起床上班。有机会接触很多名人名团队。后来因为看不惯部门经理挪用公款,被人告发,经理明确告诉Robert还有一个月的时间换工作。Robert用FrankSinatra演唱会所认识的人脉换到了ABCSports。ABCSports是当时台里的弄
- Do VoLTE Calls Work without Data?
Franck2020
Yes,VoLTEcallsdoworkwiththedataswitchedoff.TounderstandhowthisispossibleweneedtounderstandwhathappensinatraditionalVoIPcallandaVoLTEcall.ItmightappearthatVoIPandVoLTEworkthesamewaybutthereisadifferenc
- Node.js框架对比:Express/Koa/Hapi
星河_赵梓宇
javascript
Node.js框架对比:Express/Koa/Hapi引言Express.js是当今使用最广泛的Node.jsWeb应用程序框架。它似乎是大多数Node.jsWeb应用程序中的基本依赖项,即使某些流行的框架(如Sails.js)也是基于Express构建的。但是,有更多选项对他们具有相同的“sinatra风格”感觉。接下来的两个最受欢迎的框架分别是Koa和Hapi。这并不是说服您使用一个框架,而
- Laravel框架介绍与简介
沐思博客
php框架php框架phplaravel
框架项目介绍:在众多的PHP框架中,Laravel框架(以下简称"框架”)是当前国内外比较流行的开源框架,在近年的热门PHP开发框架排名中稳居前三名。框架是在PHP5.3之后推出的,利用了大量Java语言、RubyonRails框架、ASP.NETMVC框架、Sinatra框架等其他框架的精华,在架构设计、系统伸缩性和功能扩展性等方面具有较大突破,非常适合团队协同工作。相关网站:官网:https:
- sqlite3性能优化要点
weixin_30641999
数据库
Putinserts/updatesinatransaction将插入语句和更新放到一个transaction里Playingwithpagesizesmakesadifferenceaswell(PRAGMApage_size).Havinglargerpagesizescanmakereadsandwritesgoabitfasteraslargerpagesareheldinmemory.N
- sinatra 0.3.0 源码学习
coffeeplease
声明本文系sinatra源码系列第5篇。系列的目的是通过sinatra学习ruby编程技巧。文章按程序运行的先后顺序挑重点分析,前一篇文章分析过的略去不说。水平很有限,所写尽量给出可靠官方/讨论链接,不坑路人。重要提醒一定要先安装1.8版本的ruby,因为1.9+的ruby,String的实例是不响应each方法的,这会直接导致rack报错。可以使用rvm安装1.8.7版本的ruby,如果使用rv
- 怒怼阿乐!陈冠希CLOT x Converse 全新联名 One Star 曝光
新锐潮鞋
事情大概是这样的:陈冠希在一条发有MADNESS单品的博文下面评论:SADNESS&FELLSORRYFPRUBRO/BUTEVERYONENEEDTOMAKEALIVING(对你感到很难过,但谁又不是为了生存呢?)明确的怼了阿乐潮流单品的设计。(说实话lok先前的一些款确实缺乏设计)接着余文乐发博正面回应EDC的质疑。余文乐配了一张FrankSinatra的名言TheBestRevengeisM
- puma-dev A tool to manage rack apps in development with puma
老码农不上班
开发Rack项目时,以前开发环境一直用pow但是使用Rails5的Actioncable时发现不支持。寻找替代品时发现另外一个神器puma-dev。其在GitHub上的描述是:AtooltomanagerackappsindevelopmentwithpumaRuby做web项目框架,Rails或者Sinatra都是Rack应用,在开发之前需要配置puma,Nginx但是有了这款神器之后,仅仅建一
- 第三届第五空间网络安全大赛WP(部分)
合天网安实验室
反编译base64信息安全callbackcomputervision
Web1、PNG图片转换器附件的web源码如下require'sinatra'require'digest'require'base64'get'/'doopen("./view/index.html",'r').read()endget'/upload'doopen("./view/upload.html",'r').read()endpost'/upload'dounlessparams[:f
- 十岁儿子写的诗: The Duck Song (一只鸭子的歌)
瑜人码头
TheythinkIamweird,yeah.Yeah,Iamaduckonatraininaschool,duckinatrashcan,duckintheceiling.Yeahyeah,duckjumpingintheceiling,Yeahduckjumpingwithazero.Yeah,IliketobeatrashcanduckIfIwasinatrain,canIflylikeat
- 对于规范和实现,你会混淆吗?
yangshangchuan
HotSpot
昨晚和朋友聊天,喝了点咖啡,由于我经常喝茶,很长时间没喝咖啡了,所以失眠了,于是起床读JVM规范,读完后在朋友圈发了一条信息:
JVM Run-Time Data Areas:The Java Virtual Machine defines various run-time data areas that are used during execution of a program. So
- android 网络
百合不是茶
网络
android的网络编程和java的一样没什么好分析的都是一些死的照着写就可以了,所以记录下来 方便查找 , 服务器使用的是TomCat
服务器代码; servlet的使用需要在xml中注册
package servlet;
import java.io.IOException;
import java.util.Arr
- [读书笔记]读法拉第传
comsci
读书笔记
1831年的时候,一年可以赚到1000英镑的人..应该很少的...
要成为一个科学家,没有足够的资金支持,很多实验都无法完成
但是当钱赚够了以后....就不能够一直在商业和市场中徘徊......
- 随机数的产生
沐刃青蛟
随机数
c++中阐述随机数的方法有两种:
一是产生假随机数(不管操作多少次,所产生的数都不会改变)
这类随机数是使用了默认的种子值产生的,所以每次都是一样的。
//默认种子
for (int i = 0; i < 5; i++)
{
cout<<
- PHP检测函数所在的文件名
IT独行者
PHP函数
很简单的功能,用到PHP中的反射机制,具体使用的是ReflectionFunction类,可以获取指定函数所在PHP脚本中的具体位置。 创建引用脚本。
代码:
[php]
view plain
copy
// Filename: functions.php
<?php&nbs
- 银行各系统功能简介
文强chu
金融
银行各系统功能简介 业务系统 核心业务系统 业务功能包括:总账管理、卡系统管理、客户信息管理、额度控管、存款、贷款、资金业务、国际结算、支付结算、对外接口等 清分清算系统 以清算日期为准,将账务类交易、非账务类交易的手续费、代理费、网络服务费等相关费用,按费用类型计算应收、应付金额,经过清算人员确认后上送核心系统完成结算的过程 国际结算系
- Python学习1(pip django 安装以及第一个project)
小桔子
pythondjangopip
最近开始学习python,要安装个pip的工具。听说这个工具很强大,安装了它,在安装第三方工具的话so easy!然后也下载了,按照别人给的教程开始安装,奶奶的怎么也安装不上!
第一步:官方下载pip-1.5.6.tar.gz, https://pypi.python.org/pypi/pip easy!
第二部:解压这个压缩文件,会看到一个setup.p
- php 数组
aichenglong
PHP排序数组循环多维数组
1 php中的创建数组
$product = array('tires','oil','spark');//array()实际上是语言结构而不 是函数
2 如果需要创建一个升序的排列的数字保存在一个数组中,可以使用range()函数来自动创建数组
$numbers=range(1,10)//1 2 3 4 5 6 7 8 9 10
$numbers=range(1,10,
- 安装python2.7
AILIKES
python
安装python2.7
1、下载可从 http://www.python.org/进行下载#wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
2、复制解压
#mkdir -p /opt/usr/python
#cp /opt/soft/Python-2
- java异常的处理探讨
百合不是茶
JAVA异常
//java异常
/*
1,了解java 中的异常处理机制,有三种操作
a,声明异常
b,抛出异常
c,捕获异常
2,学会使用try-catch-finally来处理异常
3,学会如何声明异常和抛出异常
4,学会创建自己的异常
*/
//2,学会使用try-catch-finally来处理异常
- getElementsByName实例
bijian1013
element
实例1:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/x
- 探索JUnit4扩展:Runner
bijian1013
java单元测试JUnit
参加敏捷培训时,教练提到Junit4的Runner和Rule,于是特上网查一下,发现很多都讲的太理论,或者是举的例子实在是太牵强。多搜索了几下,搜索到两篇我觉得写的非常好的文章。
文章地址:http://www.blogjava.net/jiangshachina/archive/20
- [MongoDB学习笔记二]MongoDB副本集
bit1129
mongodb
1. 副本集的特性
1)一台主服务器(Primary),多台从服务器(Secondary)
2)Primary挂了之后,从服务器自动完成从它们之中选举一台服务器作为主服务器,继续工作,这就解决了单点故障,因此,在这种情况下,MongoDB集群能够继续工作
3)挂了的主服务器恢复到集群中只能以Secondary服务器的角色加入进来
2
- 【Spark八十一】Hive in the spark assembly
bit1129
assembly
Spark SQL supports most commonly used features of HiveQL. However, different HiveQL statements are executed in different manners:
1. DDL statements (e.g. CREATE TABLE, DROP TABLE, etc.)
- Nginx问题定位之监控进程异常退出
ronin47
nginx在运行过程中是否稳定,是否有异常退出过?这里总结几项平时会用到的小技巧。
1. 在error.log中查看是否有signal项,如果有,看看signal是多少。
比如,这是一个异常退出的情况:
$grep signal error.log
2012/12/24 16:39:56 [alert] 13661#0: worker process 13666 exited on s
- No grammar constraints (DTD or XML schema).....两种解决方法
byalias
xml
方法一:常用方法 关闭XML验证
工具栏:windows => preferences => xml => xml files => validation => Indicate when no grammar is specified:选择Ignore即可。
方法二:(个人推荐)
添加 内容如下
<?xml version=
- Netty源码学习-DefaultChannelPipeline
bylijinnan
netty
package com.ljn.channel;
/**
* ChannelPipeline采用的是Intercepting Filter 模式
* 但由于用到两个双向链表和内部类,这个模式看起来不是那么明显,需要仔细查看调用过程才发现
*
* 下面对ChannelPipeline作一个模拟,只模拟关键代码:
*/
public class Pipeline {
- MYSQL数据库常用备份及恢复语句
chicony
mysql
备份MySQL数据库的命令,可以加选不同的参数选项来实现不同格式的要求。
mysqldump -h主机 -u用户名 -p密码 数据库名 > 文件
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump -–add-drop-table -uusername -ppassword databasename > ba
- 小白谈谈云计算--基于Google三大论文
CrazyMizzz
Google云计算GFS
之前在没有接触到云计算之前,只是对云计算有一点点模糊的概念,觉得这是一个很高大上的东西,似乎离我们大一的还很远。后来有机会上了一节云计算的普及课程吧,并且在之前的一周里拜读了谷歌三大论文。不敢说理解,至少囫囵吞枣啃下了一大堆看不明白的理论。现在就简单聊聊我对于云计算的了解。
我先说说GFS
&n
- hadoop 平衡空间设置方法
daizj
hadoopbalancer
在hdfs-site.xml中增加设置balance的带宽,默认只有1M:
<property>
<name>dfs.balance.bandwidthPerSec</name>
<value>10485760</value>
<description&g
- Eclipse程序员要掌握的常用快捷键
dcj3sjt126com
编程
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可以那么勤奋,每天都孜孜不倦得
- Android学习之路
dcj3sjt126com
Android学习
转自:http://blog.csdn.net/ryantang03/article/details/6901459
以前有J2EE基础,接触JAVA也有两三年的时间了,上手Android并不困难,思维上稍微转变一下就可以很快适应。以前做的都是WEB项目,现今体验移动终端项目,让我越来越觉得移动互联网应用是未来的主宰。
下面说说我学习Android的感受,我学Android首先是看MARS的视
- java 遍历Map的四种方法
eksliang
javaHashMapjava 遍历Map的四种方法
转载请出自出处:
http://eksliang.iteye.com/blog/2059996
package com.ickes;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
* 遍历Map的四种方式
- 【精典】数据库相关相关
gengzg
数据库
package C3P0;
import java.sql.Connection;
import java.sql.SQLException;
import java.beans.PropertyVetoException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class DBPool{
- 自动补全
huyana_town
自动补全
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml&quo
- jquery在线预览PDF文件,打开PDF文件
天梯梦
jquery
最主要的是使用到了一个jquery的插件jquery.media.js,使用这个插件就很容易实现了。
核心代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.
- ViewPager刷新单个页面的方法
lovelease
androidviewpagertag刷新
使用ViewPager做滑动切换图片的效果时,如果图片是从网络下载的,那么再子线程中下载完图片时我们会使用handler通知UI线程,然后UI线程就可以调用mViewPager.getAdapter().notifyDataSetChanged()进行页面的刷新,但是viewpager不同于listview,你会发现单纯的调用notifyDataSetChanged()并不能刷新页面
- 利用按位取反(~)从复合枚举值里清除枚举值
草料场
enum
以 C# 中的 System.Drawing.FontStyle 为例。
如果需要同时有多种效果,
如:“粗体”和“下划线”的效果,可以用按位或(|)
FontStyle style = FontStyle.Bold | FontStyle.Underline;
如果需要去除 style 里的某一种效果,
- Linux系统新手学习的11点建议
刘星宇
编程工作linux脚本
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习Linux的一些建议。
一、从基础开始:常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的。例如:为什么我使用一个命令的时候,系统告诉我找不到该目录,我要如何限制使用者的权限等问题,这些问题其实都不是很难的,只要了解了 Linu
- hibernate dao层应用之HibernateDaoSupport二次封装
wangzhezichuan
DAOHibernate
/**
* <p>方法描述:sql语句查询 返回List<Class> </p>
* <p>方法备注: Class 只能是自定义类 </p>
* @param calzz
* @param sql
* @return
* <p>创建人:王川</p>
* <p>创建时间:Jul