
java
文章平均质量分 57
java学习
qlanto
做人要务虚,做事要务实。email:qlanto_147@163.com
展开
-
【mysql5.7】组内分组排序
组内排序取第几个..原创 2022-11-14 15:05:48 · 2155 阅读 · 2 评论 -
【easypoi 和 autopoi】 模板读取问题
easypoi和autopoi模板导出问题原创 2022-10-28 15:50:44 · 1088 阅读 · 0 评论 -
【geotools】生成类似geoserver的geojson
使用geotools生成,类似geoserver生成的可用于,mapbox使用的geojson格式的数据。原创 2022-07-13 21:09:13 · 786 阅读 · 0 评论 -
【geotools】实现插入,更新,查询
之前使用geoserver的wfs-t协议进行geoserver的图层要素的增删改查,后来发现geoserver的的url形式局限挺大,现改用geotools。geotools和geoserver的url wfs-t比较geotools的优缺点一次完整的处理过程:geotools: 获取JDBCDataStore,获取FeatureWriter<SimpleFeatureType, SimpleFeature>对象,进行SimpleFeature的setAttribute设置属原创 2022-05-06 14:07:54 · 1581 阅读 · 2 评论 -
【PDF处理】java将全图片的pdf压缩,输出新的pdf
需要的maven依赖<dependency> <groupId>com.itextpdf</groupId> <artifactId>io</artifactId> <version>7.2.1</version></dependency><dependency> <groupId>com.itextpdf</groupId> &l原创 2022-02-21 10:21:40 · 1590 阅读 · 3 评论 -
java实现下载的问题
这种会出现pdf,txt,jpg…这些常见格式的文件在web浏览器以预览的形式出现,而不是需要的下载function downloadFile(url, fileName, parameter) { return downFile(url, parameter).then((data) => { if (!data || data.size === 0) { Vue.prototype['$message'].warning('文件下载失败') return.原创 2022-02-17 14:25:58 · 770 阅读 · 0 评论 -
【数据结构】数组转链表
public static ListNode insListNode(int[] arr){ ListNode root = new ListNode(arr[0]); ListNode temp = root; for (int i = 1; i < arr.length; i++) { ListNode node = new ListNode(arr[i]); temp.next = node; temp = node;原创 2022-02-14 14:40:50 · 725 阅读 · 0 评论 -
【集合多线程处理】集合分段并发处理
数据量不大,但是由于业务不得不在集合遍历时进行大量逻辑处理,导致效率很低附上原核心代码:public IPage<TaskVo> todoList(TodoVo todoVo, String username, Integer pageNo, Integer pageSize) { JSONObject todo = new JSONObject(); if (todoVo.getFlag() == 0) { //web .原创 2021-11-16 10:49:47 · 471 阅读 · 0 评论 -
【java】【geoserver】java实现对geoserver图层及数据库的数据增删改
采用技术:dom4j,ThreadPoolTaskExecutor线程池,RestTemplate,guava retry,wfs协议,ogc协议,btoa加密,策略模式主要功能:1. 通过geoserver来修改postgresql地理数据库,这样就不需要每次更新数据后,人为手动更新geoserver了2. 失败重试(多线程执行,不需要业务调用方等待,默认成功)3. 重试仍然失败则进行错误xml本地存储...原创 2021-10-26 11:34:44 · 4120 阅读 · 14 评论 -
【docker】centos7 docker安装 postgresql+postgis 安装 jar部署 geoserver部署
离线安装docker下载地址 : https://download.docker.com/linux/static/stable/x86_64/选择合适的版本进行下载复制到centos解压tar -xvf (docker的tar包)将解压出来的docker文件内容移动到/usr/bin目录下cp docker/* /usr/bin将docker注册为servicevim /etc/systemd/system/docker.service内容:[Unit]Description=原创 2021-08-25 11:00:34 · 1017 阅读 · 0 评论 -
synchronized学习
底层实现相关JDK早期synchronized是重量级的 - os 针对操作系统的,其效率很低后来经过改进, 进行了锁升级.----------------未完待续…原创 2020-05-20 10:48:18 · 139 阅读 · 0 评论 -
一则阿里外包的面试.synchronized一定安全?它和volatile的比较?
今天面试了一波,一个北京的大哥,一口北京腔,那边有点吵,导致好多问题听不清,不停的让他重复,很抱歉 ^ - ^可能是因为外包的原因吧,提问问题也是感觉条理不是很清晰,当然,也是因为我是渣渣…好了,开始正题:了解volatile吗?简单介绍下当把变量声明为volatile类型后,编译器与运行时都会注意到这个变量是共享的,因此不会将该变量上的操作与其他内存操作一起重排序。volatile变量不会被缓存在寄存器或者对其他处理器不可见的地方,因此在读取volatile类型的变量时总会返回最新写入的值。.原创 2020-09-17 18:15:22 · 366 阅读 · 0 评论 -
java并发Executors和ThreadPoolTaskExecutor的学习
续:线程池的简单实战使用(对图片的一些处理)原创 2021-01-23 18:02:30 · 1329 阅读 · 0 评论 -
java线程基础总结
线程简单概念进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程 什么是多线程呢?即就是一个程序...原创 2019-12-27 15:41:01 · 215 阅读 · 0 评论 -
线程池的简单实战使用(对图片的一些处理)
目前的业务,由于图片过大,前端需要缩略图,上传后,后端进行图片压缩,但是一般压缩的效率都较为低,所以再开一个线程进行图片的压缩,删除等的处理原创 2021-01-23 11:12:10 · 527 阅读 · 0 评论 -
记录MP+springboot+mybatis+gradle整合的问题小记
Application启动后,调用MP基础mapper方法BaseMapper报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)多番查找,网上说的最多的是,mapper接口和mapper.xml名称不一致命名空间有误yml文件未配置xml路径或者mapper接口为被扫描...原创 2019-12-12 10:12:03 · 154 阅读 · 0 评论 -
解决mybatis中mapper的xml结果集result的映射错误
今天突然后个功能,根据id查个多层的树状数据用到了resultMap期望返回如下的json示例{ "id": "1285114537198723074", "building": 6, "coveredArea": "2123", "floorArea": "3000", "households": 1000, "totalInvestment": "1000", "state": 1, "onStream原创 2020-08-06 12:02:12 · 1653 阅读 · 1 评论 -
自定义注解实现方法私有属性注入
举例实现修改或者新增时给实体添加操作人信息import java.lang.annotation.*;/** * 修改或者添加对象的操作人信息修改 * * @Author qinlei * @email qlanto_147@163.com * @Date 2019年4月24日 */@Target(ElementType.METHOD)@Retention(Retentio...原创 2020-04-24 12:48:48 · 1021 阅读 · 0 评论 -
dubbo高可用方法学习
服务降级mock只出现在非业务异常(比如超时,网络异常等等)时执行.他的配置支持两种:布尔值,默认false,如果配置为true,则默认使用mock类名,即类名+Mock后缀return null.可以很简单的忽略掉异常设置成return null消费者dubbo配置dubbo: application: name: dubbo-springboot-consumer scan: base-packages: com.ql.controller protocol原创 2020-10-20 17:03:17 · 204 阅读 · 0 评论 -
springboot集成dubbo之小坑
启动springboot后不报错 ,但是最后一行信息一直是[Dubbo] Current Spring Boot Application is await…且未提示内置tomcat启动成功我这里的原因是,springboot配置有问题,pom依赖未导入.需要导入springboot的相关依赖至少需要导入: <dependency> <groupId>org.springframework.boot</groupId>原创 2020-10-20 09:13:12 · 1690 阅读 · 1 评论 -
spring循环依赖的解决方案
spring循环依赖示例第一种,构造器循环依赖import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Component;/** * @author qinlei * @description todo * @date 2020/8/28 14:37 */@Componentpublic class BeanA { private B原创 2020-08-28 16:14:58 · 461 阅读 · 0 评论 -
【springcloud系列学习】springboot+springcloud的版本选型
一切以官网为依据!题外话:springcloud的版本号不是数字结合的,而是使用英国伦敦地铁站A~Z命名的即第一个版本是A开头的SR表示稳定版本如: 当前最新版本Hoxton.SR11(2121-6-25)查看boot和cloud对应的大致版本第一种打开springcloud官网https://spring.io/projects/spring-cloud往下拉这个表可以大概看出springboot和springcloud对应的大致版本第二种https://st原创 2021-06-25 11:32:54 · 260 阅读 · 0 评论 -
springboot集成POSTGRESQL简单使用
背景:项目需要将mdb文件数据存储,选择了postgresql.之前一直使用mysql等.此次记录下遇到的问题gradle项目需要的依赖compile group: 'org.postgresql', name: 'postgresql', version: '42.2.5'maven项目需要的依赖<dependency> <groupId>org.pos...原创 2019-12-11 16:09:39 · 2133 阅读 · 0 评论 -
Spring Data -Specification基本查询示例
List<Concentrator> cons = concentratorRepository.findAll((Root<Concentrator> root, CriteriaQuery<?> query, CriteriaBuilder cb) -> { List<Predicate> predicatesLis...原创 2019-12-19 15:04:24 · 216 阅读 · 0 评论 -
JAVA基础之数值、运算、转型
整数被0除将会产生一个异常,而浮点数被0除将会得到无穷大或NaN的结果。public static void main(String[] args) { int a = 5; a = a/0; }Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeM...原创 2020-01-02 16:09:00 · 275 阅读 · 0 评论 -
Arrays.asList返回的list问题
Arrays.asList返回的 ArrayList不是util包中的ArrayList,而只是Arrays类的一个继承了AbstractList内部类详细可以看这里https://www.cnblogs.com/liuyh17211/p/3250365.html今天撸代码,发现Arrays.asList返回的集合,只要执行删除操作就报错,就感觉不对.业务需要将数组转集合,在进行操作.看了这位大哥的文章,明白了,为什么会不行,结论 Arrays.asList返回的集合,只支持遍历和取值,不能原创 2020-06-06 17:21:01 · 633 阅读 · 0 评论 -
java实现一个单向链表
简单介绍下单向链表单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始;链表是使用指针进行构造的列表;又称为结点列表,因为链表是由一个个结点组装起来的;其中每个结点都有指针成员变量指向列表中的下一个结点;链表是由结点构成,head指针指向第一个成为表头结点,而终止于最后一个指向NULL的指针。单向链表和双向链表简单对比下jdk(目前所用8)中的LinkedList是用双向链表实现的下图中,有头节点,尾结点,链表长度其节点代码:priva原创 2021-02-02 16:22:47 · 439 阅读 · 0 评论 -
字符串替换操作replace失效解决--string.replace()源码探究
代码案例Msg msg = new Msg(); msg.setStr("^-^:小小少年真开心<input />,author:qinlei"); String str = msg.getStr(); str.replace('<', '['); str.replace("/>","]"); msg.setStr(str); System.out.println(msg);结果仍原创 2020-06-13 17:17:26 · 1526 阅读 · 0 评论 -
jeecg的autopoi导入EXCEL时去除两端空格
实体类比正常的@excel注解 多importConvert参数同样再写一个public方法 在里面处理去除两端空格,操作 : 赋值setter方法 在其方法名前加convert@Excel(name = "****", width = 15,importConvert=true)private String name;public void convertsetName(String name) { if(Optional.ofNullable(name).isPresent()){原创 2020-11-25 17:38:56 · 1385 阅读 · 1 评论 -
一步一步带你实现java根据模板导出word循环数据
之前操作EXCEL使用的是poi,用poi操作word有点复杂,且没有模板功能.放弃找到了freemarker这个工具,他可以根据word的模板生成导出的word话不多说,跟着我来一步一步走首先 我默认你已经有个maven或者gradle工程了先别急着找freemarker的依赖,查查自己已有的依赖中是否已经有freemarker了.查这里有这个包就说明已经有该依赖了,不需要在导入了若没有该包,请导入该依赖项:<!-- https://mvnrepository.com/a.原创 2020-08-15 10:16:28 · 9265 阅读 · 0 评论 -
windows批处理启动多个zookeeper
本地学习dubbo+zookeeper,为了模拟集群,本地启动了3个zookeeper,但是每次都要一个一个的点zkServer.cmd,很麻烦所以搞了个简单的批处理文件@echo offstart cmd /k "D:\util\zookeeper\zk1\bin\zkServer.cmd"start cmd /k "D:\util\zookeeper\zk2\bin\zkServer.cmd"start cmd /k "D:\util\zookeeper\zk3\bin\zkServer原创 2020-10-20 09:17:41 · 636 阅读 · 0 评论 -
java+vue实现富文本转word下载到本地
java @ApiOperation("word导出") @RequestMapping(value = "/exportWord") public void exprotWord(@RequestParam String id, HttpServletRequest request, HttpServletResponse response) { // 数据库查富文本数据 String conte原创 2020-11-23 17:01:43 · 1312 阅读 · 3 评论 -
IDEA查看源码时,CRTL+点击,方法或者变量不能提示出来,以便进入
出现的问题但是实际上再该类中是使用了的解决办法点击 这个按钮将scope改为All Places原创 2020-06-18 11:14:07 · 1271 阅读 · 0 评论 -
poiEXCEL导出
/** * 创建excel * * @param assessTotals * @return * @throws Exception */ @Override public Workbook exportExcel(List<AssessTotal> assessTotals) throws Exceptio...原创 2019-12-19 14:59:29 · 122 阅读 · 0 评论 -
文件内容批量修改
/** * * @param path 要修改的文件 * @param path2 输出的文件 * @throws IOException */ public static void replacTextContent(String path, String path2) throws IOException { // 读...原创 2019-12-11 15:35:38 · 146 阅读 · 0 评论 -
shiro学习——相关组件概述简介
自W3C-跟我学shiro栏目学习...原创 2020-03-03 14:56:09 · 141 阅读 · 0 评论 -
springboot集成elasticSearch,使用spring-data-elasticsearch RestHighLevelClient
es客户端es下载es7.6.2版本下载地址https://www.elastic.co/cn/downloads/past-releases#elasticsearch我用的windows系统,下载安装解压后完整配置进入config目录,修改elasticsearch.yml配置文件,修改以下几个属性即可cluster.name集群名称node.name节点名称network.host: 0.0.0.0 #设置外部ip可访问http.port: 9200原创 2021-03-23 11:39:14 · 2683 阅读 · 0 评论 -
java 记录资源下载时报异常
控制台错误信息(部分):org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageC原创 2021-03-13 16:49:59 · 243 阅读 · 0 评论 -
TinyMCE-vue 组件实现上传word解析后返回到富文本编辑器中
包括富文本插入图片,java解析word中的图片.已经解决几个大坑.框架用的是jeecgboot原创 2021-03-04 17:19:36 · 2709 阅读 · 3 评论 -
jeecgboot省市区ProvinceCityArea类的bug解决
所在包package org.jeecg.common.constant;问题上述写法,通过spring容器来读取classpath下的静态文件,打jar包时没有问题,但是当打package时,会找不到文件!原因Resource下的文件是存在于jar这个文件里面,在磁盘上是没有真实路径存在的,它其实是位于jar内部的一个路径。所以通过ResourceUtils.getFile或者this.getClass().getResource("")方法无法正确获取文件。具体参考:https://blog原创 2021-01-09 15:02:21 · 1229 阅读 · 0 评论