- 博客(210)
- 资源 (3)
- 收藏
- 关注
原创 mysql 5.7 order by group by 的问题
一、问题项目中经常有这样的需求,比如如下的记录,需要查询到windy的score的最大值的记录表名为test我想当然的会这样写SQL:先根据score来降序排序,然后再聚合select * from (select * from test ORDER BY score desc ) a GROUP BY name;查询出的结果:这个结果是不对的,因为很明显,windy的socre最大值应该是100二、解决方案1、利用limitselect * from .
2021-12-10 14:37:40
780
1
原创 nginx location的alias和root的使用
1、alias使用比如希望访问某个路由,就是直接访问服务器的某个目录下的文件,可以如下设置:这样,在浏览器直接访问 :http://192.168.68.128/dev/就相当于直接访问服务器的 /data/testHtml/2、root使用这样,在浏览器直接访问http://192.168.68.128/dev2/,就相当于访问服务器的:/data/testHtml2/dev2/特别注意:需要加上autoindex on,不然会报错,说没有权限访问/data/...
2021-09-16 09:58:10
534
原创 java steam对象根据属性值排序 正序 倒序
public class SortTest { public static void main(String[] args) { User user1=new User("1111",20); User user2=new User("2222",19); User user3=new User("3333",21); List<User> list=new ArrayList<>(); li.
2020-06-29 14:10:24
5727
原创 ElasticSearch查询之聚合查询
一、ES的demo数据如下:二、简单聚合,获得平均分GET /student/student/_search{ "aggs": { "avg_score": { "avg": { "field": "score" } } }}查询结果:java实现:/** * 聚合查询avg * *GET /s...
2020-05-07 21:45:59
1482
原创 ElasticSearch查询之exists使用
exists允许你过滤文档,只查找那些在特定字段有值的文档,无论其值是多少。demo如下:1、索引中的数据如下:2、查询语句如下GET account/account/_search{ "query": { "bool": { "must": [ { "exists": { "field": "s...
2020-05-03 22:23:27
23596
2
原创 ElasticSearch查询之bool查询及java调用bool查询demo
其实之前关于ElasticSearch的一些书,感觉对于查询是有点懵逼的,一会查询,一会过滤查询。而且有的语法在6.x的版本上已经废弃了。所以看起来更加困惑了。五一这两天又静下心来看了一些,感觉像我平时的一些基本使用,用bool查询都可以满足,而且当你理解了bool查询之后,用java来调用es也会比较得心应手。一、kibana es 查询:如下例子都是以6.x的版本bool查询如下:...
2020-05-03 11:56:45
1862
1
原创 python操作mysql 多参数insert,获取自增id
# coding:utf-8import configparserimport pymysqlconfig = configparser.ConfigParser()config.read('mysql.conf')lists_header = config.sections() # 配置组名, ['luzhuo.me', 'mysql'] # 不含'DEFAULT'host=...
2020-04-08 11:10:04
2023
原创 java 对接webservice原来这么容易
之前写过一篇springboot对接webservice的文章https://blog.csdn.net/qq_15058425/article/details/103732273,发现我把对接webservice搞复杂了,而且我最近在对接新的webservice接口时,发现用上面这篇文章生成的代码及利用eclipse生成的代码是不一样的。而且利用eclipse生成的话更简单方便,如下我们开始尝试...
2020-03-13 15:47:14
809
7
原创 工作中遇到的excel使用技巧-列转行
场景:有时候会收到excel的表格,然后要处理这些数据。自己遇到的比较多的就是列转行。就是将一列数据,合并到一个单元格中比如将如下的A列数据,给合并成B列中的一个单元格的数据。对于B列的单元格这样的数据,在sql和代码中就比较好用了如何实现这种效果呢?第一步:第二步:将A,B,C三列的数据合并,因为是字符串,所以就一次性把引号也给加上在D列中输入公式:=A1&...
2020-03-06 17:31:04
981
原创 在linux环境下用python2操作mysql
有时候需要在服务器上通过python脚本操作数据库,这时就有一个问题,linux上默认安装的python2.7,但是没有操作mysql脚本需要的相关模块。解决:1、下载pipwget https://bootstrap.pypa.io/get-pip.py可以看到安装文件被下载到了/root/script的目录下2、安装pip3、利用pip安装操作数据库的pymys...
2020-03-03 18:03:37
674
原创 elasticsearch学习2—springboot整合:查询条件高亮、分页、关键字查询,排序
需求:实现关键字查询,关键字查询可以输入多个,且以空格分开,然后查询条件高亮一、mapping:PUT /cartoonindex/{ "mappings" : { "cartoon" : { "properties" : { "name" : { "type" : "text", "anal...
2020-01-04 15:46:10
1264
原创 springboot 调用webservice
以网上的公共接口为例:获取天气信息的webservice:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl一、利用服务端链接生成代码1、安装工具 apache-cxf链接:https://pan.baidu.com/s/1HfmvoMcE-6UpTYILRH8k_w提取码:dn44安装好了之后...
2019-12-27 15:21:41
3130
原创 elasticsearch学习1—springboot整合:基本使用,分页
1、创建springboot项目,pom依赖如下:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency&...
2019-12-02 21:27:25
647
原创 rabbitmq学习5-springboot和rabbitmq的发布订阅模式
问题:如下图,可以看到,监听队列的消费者会从队列中获得消息。比如队列中共有5条消息,这两个监听队列的消费者会从队列中共获得共5条消息。C1监听到3条消息,C2监听到2条消息;或者C1监听到4条消息,C2监听到1条消息...如果我想每个消费者都能监听到队列中的全部消息呢?可以利用发布订阅模式1、发布订阅模式配置a、声明队列b、声明交换机,交换机为fanout类型,工作队列及简...
2019-11-28 16:38:03
339
原创 redis5 集群搭建
本文利用redis的最新版本5.0.5来搭建redis集群。该集群搭建在同一台虚拟机上的伪集群,共6个节点,三主三从(集群的最低要求就是6个节点)一、redis下载及安装,参考官网https://redis.io/download二、相关文件夹及文件的准备1、创建文件夹redis_cluster2、将解压的redis目录下的redis-cli和redis-server复制到re...
2019-10-20 17:04:01
254
原创 springboot利用redis、Redisson处理并发问题
一、引入问题在工作中,遇到的接口基本都是长这样的:如下为一个库存扣减的接口。从redis中获取库存数量,然后扣减一个数量问题这个接口在并发的情况下是有问题,可以用jmeter测试一下(用postman压力测试了一下,没有测出并发问题。网上有的博客说postman没法测试并发)jmeter设置:100个并发打印结果:问题很严重呀解决方案,优化如下:...
2019-10-19 10:52:52
3286
1
原创 rabbitmq学习7-springboot和rabbitmq发送方确认及手动确认
正常情况下,如果消息经过交换器进入队列就可以完成消息的持久化,但如果消息在没有到达broker之前出现意外,那就造成消息丢失,有没有办法可以解决这个问题?RabbitMQ有两种方式来解决这个问题:一、通过AMQP提供的事务机制实现;二、使用发送者确认模式实现如下为使用发送发确认来保证队列到达队列1、开启发送发确认,及开启消息手动确认2、初始化队列:3、发送方确认...
2019-08-31 13:16:41
698
原创 rabbitmq学习6-springboot和rabbitmq的topic模式
topic模式也称为主题模式,相对于routing模式最大的好处就是他多了一种匹配模式的路由工作流程图:绑定键binding key也必须是这种形式。以特定路由键发送的消息将会发送到所有绑定键与之匹配的队列中。但绑定键有两种特殊的情况:①*(星号)仅代表一个单词②#(井号)代表任意个单词我们就拿上面的图解释,.orange.能匹配 a.orange.a,b.orange.a...
2019-08-18 12:01:15
232
原创 python3 抽取PDF文本
# -*- coding: utf-8 -*-import datetimeimport reimport sysimport timefrom datetime import timedeltafrom io import StringIOfrom pdfminer.converter import TextConverterfrom pdfminer.layout import...
2019-08-06 17:30:17
325
原创 rabbitmq学习4-springboot与延迟队列
一、什么是延迟队列延迟队列,即消息发送之后,在一段时间之后延迟被消费端消费的消息队列。比如我们发送一条消息,希望在半个小时之后才可以被消费端消费到的这种场景中就可以用到延迟队列了。二、如何实现延迟队列从网上查询了一下,有两种方式:1、死信队列(目前暂时还没实践过)2、利用rabbitmq插件rabbitmq-delayed-message-exchange来实现三、插件下载...
2019-08-04 15:56:44
168
原创 rabbitmq学习3-springboot和工作队列
如图,可以用看到,工作队列有多个消费者一、工作队列配置@Configurationpublic class WorkMqConfig { private final static String workQunne = "workMq"; @Bean public Queue workMq() { return new Queue(workQ...
2019-08-03 16:47:15
233
原创 rabbitmq学习2-springboot和简单队列
接下来要学习的五种队列一、springboot项目mq配置:@Configurationpublic class SimpleMqConfig { //简单队列配置开始 private final static String workQunne = "helloWorld"; @Bean public Queue helloWorld() { ...
2019-08-03 11:39:28
138
原创 rabbitmq学习1-docker安装mq
一、安装dockeryum -y install docker二、启动docker服务systemctl start docker.service三、下载rabbitmq镜像及运行镜像docker hub 地址:https://hub.docker.com/docker run -d --hostname rabbit-host --name rabbitmq -e RAB...
2019-08-01 19:48:59
152
原创 chrome 离线安装EditThisCookie
1、离线安装包下载链接:https://pan.baidu.com/s/1az94rzXfOnEb67hJcCQKbQ提取码:jc622、将该离线安装包解压到指定目录3、在chrome开发者模式下加载安装包的解压路径安装成功会出现图标:...
2019-07-30 09:44:24
2806
1
原创 java8 关于stream的一些简单使用
一、将对象的list根据属性分组对象Apple:@Datapublic class Apple { private int weight; private String color;}//List 初始化List<Apple> inventory=new ArrayList<Apple>();Apple apple1=new...
2019-07-28 15:23:30
200
原创 利用ln修改docker镜像安装目录
需求:需要在一台服务器上导入docker镜像。服务器初始硬盘空间只有20G,但是导入的镜像有十几G,利用docker load命令导入这个镜像的时候,会因为20G空间不够导致导入失败。同时,公司运维有挂在一个100G的硬盘到/data目录。这个时候,要解决的问题就是怎么让导入的镜像是直接安装到挂载的/data目录,而不是要导入安装到这个只有20G的服务器上。一、docker镜像及容器默认的...
2019-07-21 15:10:35
1631
原创 mysql GROUP_CONCAT使用
有一个需求,需要将图一的查询结果再变成图二,将相同user_id的roleName,合并。这里可以用到mysql的GROUP_CONCAT函数图一:图二:解决办法:在原来图一的查询结果集上,再加上如下即可select result.user_id,GROUP_CONCAT(result.roleName) from ( *****************...
2019-07-15 18:11:52
97
原创 mybaties association使用
两张表:第一张表so:第二张表so_record:这表名及数据只是我随便造的,没有具体意义。有时候会遇到类似这样的需求。比如在查询so全部数据的时候,还需要查询到so中的order_num在so_record中的出现次数这样的需要关联查询的需求。这时可以用到association<?xml version="1.0" encoding="UTF-8"?><...
2019-07-09 11:26:10
14980
原创 DataX 阿里巴巴 离线数据同步工具/平台使用2———mysql to elasticsearch
将mysql数据同步到elasticsearch安装的mysql和elasticsearch在同一台服务器上,elasticsearch版本6.5.11、安装DataX下载源码:https://github.com/alibaba/DataX?spm=a2c4g.11186623.2.12.317b3680my463k然后编译,编译过程中会出现一些jar无法下载的问题,可以在编...
2019-06-02 14:33:49
1781
原创 DataX 阿里巴巴 离线数据同步工具/平台使用1———mysql to mysql
DataX 源码地址:https://github.com/alibaba/DataX?spm=a2c4g.11186623.2.12.317b3680my463k使用介绍:https://github.com/alibaba/DataX/blob/master/userGuid.md1、首先在两台服务器上安装mysql,可以参考我之前的博客,利用docker快速安装https://blo...
2019-05-31 14:41:55
1262
原创 利用docker安装mysql镜像及远程连接mysql
1、启动docker,下载mysql5.7的镜像docker run -p 3306:3306 --name mysql5.7 -v /data/mysql5.7/conf:/etc/mysql/conf.d -v /data/mysql5.7/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.19这里反...
2019-05-27 17:23:16
8769
5
原创 python3 读取txt内容,并批量update mysql
接上一篇博客,将pdf的内容 抽取成了txt文件,现在需要将txt的内容读取, 然后将内容插入到数据库,update一个字段的值。要修改的记录数大概有20万,这里采用批量update的方式,提高update效率,每1000条记录commit一次# -*- coding: utf-8 -*-#读取目录下的txt内容并mysql 批量修改import configparserimport ...
2019-05-19 21:10:03
1542
1
原创 python 错误处理 try...except..else及raise用法
try:执行可能会出错的试探性语句except:如果try里面的语句无法正确执行,就执行except里面的语句,这里面可以是错误信息或者其他的可执行语句else:如果try里面的语句可以正常执行,就执行else里面的语句# -*- coding: utf-8 -*-def err( level ): if level < 1: raise Ex...
2019-05-19 16:00:46
898
原创 python3 多进程 处理PDF为txt文件
需求是将pdf的文本抽取出来,然后将文本存入到数据库中。之前尝试直接读取在线的pdf文件,发现用第三方读取在线的文件时有些问题,所以考虑先将pdf下载到本地。然后多进程抽取本地的pdf文件为txt文件。再去读取txt里的文件内容存入数据库代码如下:# -*- coding: utf-8 -*-#将pdf下载到本地再读取pdf文件内容到txt#多进程处理版本import reim...
2019-05-17 15:40:18
513
原创 python 获取当前日期的前n天或后n天
根据当前的日期获得前n天的日期或后n天的日期# -*- coding: utf-8 -*-import datetimefrom datetime import timedeltaimport time#获取当前日期today=time.strftime('%Y-%m-%d',time.localtime(time.time()))str=today.replace("-"...
2019-05-16 17:32:19
3129
转载 python *args和**kwargs
之前对*args和**kwargs有了解,但不是特别清楚,所以记录一下:# -*- coding: utf-8 -*-#*args和**kwargsdef function(*args): print(args, type(args))function(1,3,4,3,4,5,6,7,8,4)def function2(x, y, *args): print(...
2019-05-16 17:16:53
113
转载 python 闭包
原文地址:https://blog.csdn.net/sc_lilei/article/details/80464645#commentBox首先给出闭包函数的必要条件:闭包函数必须返回一个函数对象闭包函数返回的那个函数必须引用外部变量(一般不能是全局变量),而返回的那个函数内部不一定要return几个典型的闭包例子:# ENV>>> Python 3.6 ...
2019-05-15 21:51:43
142
原创 python3 读取配置文件
有时候脚本里面会包含一些配置信息。如何读取配置文件的信息:结构:properties.conf[mysql]ip=192.168.1.102user=rootpassword=123db=test[redis]ip=192.168.1.103first.py读取配置信息:# coding:utf-8import configparsercon...
2019-05-08 22:59:40
6055
原创 Linux shell 进程不存在则启动,存在则不做操作
有时候要有这样的需求, 判断进程是否存在,如果存在则不做操作,如果不存在,则需要启动程序如下以tomcat为例:#!/bin/bashtomcatPid=`ps -ef|grep tomcat7|grep -v grep|awk '{print $2}'`if [ -n "$tomcatPid" ]then echo "tomcat is running"echo "端口...
2019-05-06 22:07:42
1832
原创 利用asyncio并发下载pdf并同步到七牛云网盘
#pdf下载并上传到七牛云# -*- coding: utf-8 -*-import aiohttpimport asyncioimport redisimport reimport timeimport osimport pymysqlfrom qiniu import Authfrom qiniu import put_fileimport logginglo...
2019-04-19 22:48:20
466
apache2.4 windows
2017-09-27
php7 windows
2017-09-27
svn插件xxxxx
2017-02-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人