- centos7出现 bash: ip: command not found
微信圈
centos
centos7出现bash:ip:commandnotfoundyum-yinstallinitscripts
- CentOS容器没有ip addr命令
BLZxiaopang
centostcp/iplinuxdocker
centos容器没有ip命令[root@Centos/]#ipadd-bash:ip:commandnotfound[root@Centos/]#yum-yinstallinitscripts
- 登录功能详解
开往1982
java登录springboot
本项目由maven项目改造springboot项目导入依赖org.springframework.bootspring-boot-starter-parent2.7.6org.springframework.bootspring-boot-starter-web2.7.6org.springframework.bootspring-boot-starter-test2.7.5org.springf
- qt报错说no suitable kits found
看起来你的QtCreator在试图找一个"kit"来编译你的程序,但是没有找到合适的kit.Kit是QtCreator中用来配置编译环境的一种东西,它包含了编译器、编译选项、以及所要使用的Qt库等信息.当QtCreator试图找一个kit来编译你的程序时,如果没有找到合适的kit,就会出现这个错误.要解决这个问题,你需要在QtCreator中配置一个合适的kit.具体来说,你需要安装Qt库和编译器
- Spring Boot 2整合Druid的两种方式
玩代码
springboot后端javaDruid
一、自定义整合Druid(非Starter方式)适用于需要完全手动控制配置的场景添加依赖(pom.xml)com.alibabadruid1.2.8org.springframework.bootspring-boot-starter-jdbc创建配置类@ConfigurationpublicclassDruidConfig{@Bean@ConfigurationProperties(prefix
- ubuntu qt环境下出现No suitable kits found解决方案
1.清理QtCreator缓存QtCreator会缓存项目配置、索引等数据,可能导致某些异常。清理方法:(1)删除QtCreator配置目录bashrm-rf~/.config/QtProject/(Ubuntu/Linux)或Windows:cmdrmdir/s/q"%APPDATA%\QtProject"(2)清除QtCreator的编译缓存bashrm-rf~/.cache/QtProjec
- 流利说懂你英语笔记要点句型·核心课·Level 8·Unit 3·Part 2·Video 1·Healing Architecture 1
羲之大鹅video
HealingArchitecture1EveryweekendforaslongasIcanremember,myfatherwouldgetuponaSaturday,putonawornsweatshirtandhe'dscrapeawayatthesqueakyoldwheelofahousethatwelivedin.ps:从我记事起,每个周末,我父亲都会在周六起床,穿上一件破旧的运动衫
- 【Appium】selenium.common.exceptions.WebDriverException: Message: The requested resource could not be
枫萏
Appium踩坑达人appium
1、报错内容(1)脚本报错内容在PyCharm编写好脚本后,模拟器和appium也是连接成功的,但是运行脚本时报错:selenium.common.exceptions.WebDriverException:Message:Therequestedresourcecouldnotbefound,orarequestwasreceivedusinganHTTPmethodthatisnotsuppo
- 如何查看 Windows 电脑的处理器类型(x64 或 ARM64)
枫萏
Other经验分享笔记
方法1:通过「设置」查看按Win+I打开「设置」进入系统→关于在设备规格部分,查看系统类型:①如果显示64位操作系统,基于x64的处理器→选择GitforWindows/x64Portable②如果显示64位操作系统,基于ARM的处理器→选择GitforWindows/ARM64Portable方法2:通过「任务管理器」查看按Ctrl+Shift+Esc打开「任务管理器」切换到性能选项卡查看CPU
- ubuntu之坑(十四)——安装FFmpeg进行本地视频推流(在海思平台上运行)
光电的一只菜鸡
linux虚拟机ubuntuffmpeg音视频
1.编译x264(没有x264依赖项参考,有则跳过) 参考blog:ubuntu22.04下编译ffmpeg-6.0,并且激活x264编码功能。记录一下踩坑(ERROR:x264notfoundusingpkg-config)需要注意:sudo./configure--enable-static--prefix=/usr/local/x264 在执行上面命令时可能遇到下面问题,这是在Linux
- 【亲测免费】 探索PF4J:Java插件框架的革命性选择
农优影
探索PF4J:Java插件框架的革命性选择项目介绍PF4J(PluginFrameworkforJava)是一个开源的、轻量级的Java插件框架,旨在将传统的单体Java应用转变为模块化应用。PF4J的核心理念是保持简单且高度可扩展,它通过插件机制允许第三方扩展应用功能,同时支持定义和实现扩展点。PF4J不仅依赖少(仅依赖slf4j-api),而且体积小巧(约100KB),是构建现代Java应用的
- go: go.mod file not found in current directory or any parent directory.如何解决?
这个错误表明你正在执行goget命令,但是当前目录或任何父目录中都找不到go.mod文件。这可能是因为你的项目还没有使用GoModules进行管理。要解决这个问题,有几种方法:gomodinit其中是你的项目名称,这将创建一个新的go.mod文件。再次执行goget-ufyne.io/fyne/v2/cmd/
[email protected]正常。
- AI大模型分层技术体系数据模型 每个架构的核心要点
在4A架构(业务架构、数据架构、应用架构、技术架构)方法论中,每个架构都有其明确的核心定位和关键要点,它们相互支撑、协同作用,共同构成产品规划的完整框架。以下是各架构的核心要点解析:一、业务架构(BusinessArchitecture):以业务价值为核心,锚定“做什么”业务架构是产品规划的“战略层”,聚焦于业务目标与现实能力的匹配,明确产品的价值定位和边界。其核心要点包括:业务目标与价值映射核心
- 浅记Android开发中遇到的bug合集
Dream_fan
androidandroidjava
Android开发中遇到的bug合集(针对自己开发过程中遇到的bug合集记录下来,会持续更新该文章,需要自取,共勉。)文章目录Android开发中遇到的bug合集1.项目编译的过程中遇到"Task‘assembleDebug’notfoundinproject‘:app’."问题。2.使用adbinstall安装apk的时候,设备上已经安装过一个版本,再次安装的话,会安装失败,出现如下提示信息:I
- 强化新闻传播链:AP在亚马逊云上构建的弹性媒体供应链
AI航海家
AWS
强化新闻传播链:AP在亚马逊云上构建的弹性媒体供应链关键字:[AmazonWebServicesre:Invent2024,亚马逊云科技,生成式AI,NewsDistributionPipeline,ResilientArchitecture,Multi-RegionDeployment,DataReplication,RegionHealthMonitoring]导读美联社使用跨多个亚马逊云科技
- 数字化转型-4A架构之数据架构
AI_Auto
工业4.0(智能制造)架构大数据
4A架构系列文章数字化转型-4A架构(业务架构、应用架构、数据架构、技术架构)数字化转型-4A架构之业务架构数字化转型-4A架构之应用架构数字化转型-4A架构之数据架构数字化转型-4A架构之技术架构数据架构DataArchitecture(DA)1.定义数据架构,是组织管理数据资产的科学之道,描述如何管理从收集到转换、分发和使用数据。它为数据及其在数据存储系统中流动的方式设定了蓝图。涵盖数据的收集
- 汽车电子架构 | 必备技能一文读懂 AUTOSAR
致守
APIagv汽车架构
引言AUTOSAR标准(AUTOmotiveOpenSystemArchitecture,汽车开放系统架构)是全球最大汽车公司合作的产物。它是汽车行业电气/电子架构的开放式标准,于2003年在由汽车原始设备制造商、供应商以及软件、半导体和电子行业其他公司组成的AUTOSAR开发合作组织制定。VectorInformatikGmbH(2016):Autosar-基础知识,AUTOSAR课程手册第3页
- 揭秘MavenShading和Maven依赖优先级:解决依赖冲突的终极方案
lifallen
Java开发语言javaidemaven
MavenShading的原理MavenShading是一种在构建项目时,用来解决Java项目中“依赖冲突”问题的技术。当你的项目或者你项目所依赖的库,同时引用了另一个库的不同版本时,就可能出现依赖冲突,这会导致程序在运行时出现ClassNotFoundException或NoSuchMethodError等错误。MavenShading的核心原理是通过maven-shade-plugin插件,将
- QFramework V1.0 GUIDE 架构篇
WX呦
架构unityc#游戏引擎
QFrameworkV1.0GUIDE:架构篇1.QFramework架构简介定义QFramework是一个专为Unity游戏开发设计的渐进式快速开发框架。优势提高开发效率:提供一套完整的架构和工具集。代码质量:基于MVC架构,实现数据、操作、视图的解耦分层。灵活性:支持不同规模的项目,从小型到大型商业项目。应用场景适用于任何规模的Unity游戏项目。2.QFramework的MVC定义Model
- 零信任架构落地:Java + SPIFFE 微服务身份联邦体系
司铭鸿
架构java微服务机器学习线性代数开发语言算法
“信任是最昂贵的漏洞。”——2017年Equifax数据泄露后安全专家总结开篇:当城堡护城河干涸时2019年,某跨国金融集团遭遇“服务间信任链断裂”攻击。攻击者利用Kubernetes服务账户令牌泄露,伪装成合法服务横向渗透,窃取核心交易数据。其传统边界防火墙与VPN如同中世纪的护城河,对内部流量毫无防御能力。这场灾难性事件点燃了他们落地零信任架构(ZeroTrustArchitecture,ZT
- Android系统编译源码目录详解
giaoho
安卓开发学习学习
源码目录详解文章目录源码目录详解一、核心框架与系统层相关二、编译、构建与开发工具链相关三、系统应用与包管理相关四、测试、调试与辅助工具相关五、其他关键文件/文件夹/frameworks及其子目录讲解1.`base`2.`av`3.`hardware`4.`native`5.`libs`6.`minikin`7.`layoutlib`总结:高频使用优先级/build目录详解1.核心构建工具相关baz
- SpringMVC——请求参数乱码问题
李沐泽
SpringMVCjavaSpringMVC
请求参数中文乱码的解决在web.xml中配置Spring提供的过滤器类characterEncodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8forceEncodingtruecharacterEncodingFilter/*上述代码中encoding用来设置编码格式,而forceEncod
- SpringMVC——CharacterEncodingFilter处理获取请求参数的乱码
程序员阿皓
SpringMVCspringmvc请求乱码问题
在SpringMVC中,处理请求参数的乱码问题通常可以通过配置CharacterEncodingFilter来解决。乱码问题通常出现在GET请求的URL参数或POST请求的表单参数中,特别是涉及到非英文字符时。详细步骤如下:首先,在web.xml中配置CharacterEncodingFilter:encodingFilterorg.springframework.web.filter.Chara
- docker 从主机复制文件到容器外进行编辑
问题描述在Docker容器中遇到bash:vi:commandnotfound错误时,说明容器内没有安装vi。解决方案:从主机复制文件到容器外进行编辑可以将文件从容器复制到主机上进行编辑,然后再复制回去。首先,确定容器ID或名称,然后使用dockercp命令:从容器复制文件到主机:dockercp:/path/to/my.cnf/local/path/my.cnf编辑完成后,再把文件复制回容器:d
- SpringBoot 整合shiro实现权限管理
拉提娜的爸爸
一、准备环境1、导入pom依赖org.apache.shiroshiro-spring1.4.1com.github.theborakompanionithymeleaf-extras-shiro2.0.0org.springframework.bootspring-boot-configuration-processortruecn.hutoolhutool-all4.6.62、配置文件#myb
- 探索PHP中的六边形架构:代码实践与设计哲学
脑叔
六边形架构PHP领域服务依赖规则UseCase对象
探索PHP中的六边形架构:代码实践与设计哲学背景简介本文基于书籍《AppendixA:HexagonalArchitecturewithPHP》的第43章内容,探讨了在PHP中实现六边形架构的实践方法和背后的设计哲学。六边形架构作为一种软件设计模式,旨在帮助开发者创建易于编写、测试和维护的应用程序。六边形架构的实践在软件开发中,业务规则与基础设施之间应该有清晰的分界。六边形架构通过端口和适配器的概
- 探索Python中的六边形架构:Hexagonal Architecture 实例
戴艺音
探索Python中的六边形架构:HexagonalArchitecture实例在这个高度模块化和可扩展性的时代,软件架构的设计变得至关重要。今天,我们要介绍一个精彩的开源项目,它演示了如何在Python中实现六边形架构(也称为端口与适配器架构),结合Flask框架和SqlAlchemyORM,为你的应用带来强大的灵活性和测试性。项目介绍这个项目(hexagonal-architecture-pyt
- remix-hexagonal-architecture:前端项目六边形架构的实践展示
石顺垒Dora
remix-hexagonal-architecture:前端项目六边形架构的实践展示项目介绍remix-hexagonal-architecture是一个展示前端项目中六边形架构(HexagonalArchitecture)的应用实践项目。这种架构模式通常用于解耦应用程序的不同部分,使得代码更加清晰、易于维护。本项目采用了Remix和Nest框架,旨在将前端逻辑与后端逻辑融合,打造出一个全新的前
- 【Note】《Linux 内核深度解析:基于 ARM64 架构的 Linux 4.x 内核》第四章:中断、异常与系统调用
《Linux内核深度解析:基于ARM64架构的Linux4.x内核》第四章:中断、异常与系统调用中断与异常机制是连接硬件与内核逻辑的重要纽带,系统调用则是用户空间访问内核服务的主要入口。本章围绕ARM64架构上的这些机制,全面分析其实现原理、初始化流程与运行时行为。一、ARM64异常模型概览1.1异常级别(ExceptionLevels)ARM64架构定义了四个异常级别(EL):异常级别描述用途E
- 【后端】【UV】【Django】 `uv` 管理的项目中搭建一个 Django 项目
患得患失949
面试考题专栏(前后端)uvdjangosqlite
一步步搭建Django项目(适用于uv+pyproject.toml项目结构)第1步:初始化一个uv项目(如果还没建好)uvinitdjango-project#创建项目,类似npmcreatevue⚙️第2步:添加Django和DRF(必须指定正确名字)uvadddjangodjangorestframework注意:不是django-drf,正确的是:djangorestframework避免
- 对于规范和实现,你会混淆吗?
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