
Java
pangPython
任何事做上10年以上总会有起色
展开
-
IDEA中构建带有lombok的gradle项目问题处理方法
遇到一个含有lombok代码的gradle工程,发生了不限于以下的两个问题的问题:找不到get、set方法程序包lombok.extern.slf4j不存在参考网上各种教程博客。探索无果。最终解决方案:idea安装delombok插件,把lombok的代码都解析回去。build成功。...原创 2022-03-21 11:29:43 · 680 阅读 · 0 评论 -
面试记录20211019
面试题记录Mybatis二级缓存Spring 过滤器与拦截器mysq索引什么时候失效MQ如何保证消息可靠性Redis常用数据结构hashmap和hashtablemaven中排出多余的jarlist在遍历的时候修改会有问题 怎么解决java8新特性BigDecimalunion 和 union all 的区别mybatis常用的标签mybatis中用到的设计模式ELK相关创建线程的几种方法线程池的类型微服务相关用过什么中间件...原创 2021-10-19 14:54:08 · 260 阅读 · 0 评论 -
二维码扫描自定义规则思路
二维码扫描自定义规则思路二维码内容二维码内容是一串字符串,主要凭借拆分字符串实现宿主属性的读取。可用于商品产品原材料入库、出库等操作。使用在线的二维码生成之后,就是这样,其中可以使用特殊符号进行分割,把这个二维码使用标签打印机打印出来贴到宿主上,以后就可以使用二维码扫描枪或者APP进行扫描使用了。需求很多厂家不同,各种材料的属性也不尽相同,所以二维码字段不同,顺序也不同。所以需要一种灵活的方式,可配置化的规则来实现多种二维码的识别读取。变化是相对的,要想灵活识别也还需要固定一个字段来获取其解析规原创 2021-07-28 16:25:56 · 843 阅读 · 0 评论 -
FEBS-Shiro添加layui数据表格后端排序
FEBS-Shiro添加layui数据表格后端排序https://github.com/wuyouzhuguli/FEBS-Shiro技术选型后端Spring Boot 2.2.1Mybatis-PlusMySQL 5.7.x,Hikari,RedisShiro 1.4.2前端Layui 2.5.5NepadminformSelects 4.x 多选框eleTree 树组件...原创 2019-12-31 15:27:24 · 983 阅读 · 0 评论 -
FEBS-Shiro 查询框模糊匹配
FEBS-Shiro 查询框模糊匹配最终效果页面代码 <form class="layui-form layui-table-form" lay-filter="user-table-form"> <div class="layui-row"> ...原创 2019-11-02 14:42:59 · 528 阅读 · 2 评论 -
FEBS-Shiro的前端layui集成tableSelect
FEBS-Shiro的前端layui集成tableSelectFEBS-Shiro的前端使用的是layui,需要集成tableSelect这个扩展,layui数据表默认后台返回的数据的正常的状态是0.FEBS-Shiro默认返回的状态是http状态码200所以用的时候需要翻译一下。代码 layui.extend({ tableSelect: ctx + 'lay/e...原创 2019-11-01 16:29:41 · 1460 阅读 · 0 评论 -
Java对象克隆
Java对象克隆Java对象克隆,也叫对象复制,对象拷贝。 为什么会有这个操作呢?试想有一个实体类,有很多属性,并且很多属性已经赋了值,这个时候需要对这个对象进行修改操作,但后面还会用到原来的值。赋值如果只是简单的声明new一个对象,使用赋值操作把旧对象赋给新对象,当对新对象修改时,旧对象的值同样会变,因为新对象只是指向旧对象的一个引用。浅克隆被克隆的类实现Cloneable接口,重写clone方原创 2017-11-10 22:50:46 · 401 阅读 · 0 评论 -
Java构造方法
Java构造方法 在构造方法中尽量只做一些初始化的操作,不要做需要return的操作,能抛异常的抛异常,不能抛异常的自定义异常来抛。原创 2017-11-03 19:28:16 · 439 阅读 · 0 评论 -
Java传值与传引用
Java传值与传引用传值即把一个不可变的数据类型传给函数,调用函数结束后原来的值不会改变。传引用,对象类型的数据类型作为参数传递给函数,调用函数结束后,原来的值会发生改变。传值public void change(int i){ i = 2;}public void change(String str){ str = "hello";}int i = 0;change(i);原创 2017-11-03 22:11:07 · 871 阅读 · 0 评论 -
线程监听器-jdk自带的观察者模式 实现线程退出自动启动
线程监听器-jdk自带的观察者模式 实现线程退出自动启动线程成为被观察者,当到达某一临界值比如线程退出,通知观察者执行预先定义的操作,可以重启线程或者做一些扫尾工作。观察者(监听器)TestThreadListenerpackage cn.pangpython.mybase.designpatterns.observe;import java.util.Observable;impo...原创 2018-12-06 22:52:57 · 585 阅读 · 0 评论 -
FastJson笔记
FastJson笔记简单的json格式{"key":"value"}要生成这种json,Map<String,String> map = new HashMap<>();map.put("key","value");JSON.toJsonString(map);嵌套json对象的格式{"key":{"subkey":"value"}}要生成这种json,Map<String,Object> re原创 2017-10-28 19:37:50 · 319 阅读 · 0 评论 -
Java任务超时处理
Java任务超时处理有时候有一些比较耗时的操作,可能会遇到超时等问题,比如IO阻塞,Http请求得不到响应,从而出现timeout的结果。 可以想出一种解决方案:不超时返回正常结果,超时返回默认结果或者特殊处理的结果。 JDK中有此种解决方案了。MyTask.javapackage cn.pangpython.test.utils;import java.util.Random;import原创 2017-09-21 22:00:18 · 2568 阅读 · 0 评论 -
单例模式的java配置文件读取器
单例模式的java配置文件读取器Spring的@Value注解很好用,直接给变量注入配置文件中的值。 这里用单例模式配合java的properties类实现一个配置文件读取器。 最佳实践是用自定义注解实现。配置文件test.propertiesport=8080program.name=test 位于项目的根目录中。运行效果Main.javaimport cn.pangpython.test原创 2017-09-20 21:04:10 · 1672 阅读 · 0 评论 -
Java-ConcurrentHashMap实现缓存、异步
Java-ConcurrentHashMap实现缓存、异步MyCache.javapackage cn.pangpython.test.cache;/** * Created by pangPython on 2017/9/25. * * 缓存实体类 */public class MyCache { private String sessionID;//key privat原创 2017-09-25 23:41:39 · 2285 阅读 · 0 评论 -
SpringBoot修改配置文件默认位置
SpringBoot修改配置文件默认位置.SpringBoot默认获取classpath下的application.properties。项目打成jar包,配置文件放置在jar同级目录。在普通目录中java -jar xx.jar能成功。 如果进入/tmp/目录执行java -jar xx.jar 项目会找不到配置文件,如果一些重要参数在配置文件中例如server.port会导致项目启动不了,阻塞原创 2017-09-15 21:32:03 · 3890 阅读 · 0 评论 -
maven实践:(二)One Project More Module
maven实践:(二)One Project More Module假设我们要给BAT做一个OA项目….mkdir oacd oa创建普通java项目-作为OA接口mvn archetype:generate会提示选择创建哪种类型的项目,选择默认7 填写 groupID:cn.pangpython artifactID:bat-oa version:默认 package:默认 创建we原创 2017-09-05 21:12:43 · 426 阅读 · 0 评论 -
maven实践:(一)创建普通java项目、打包、运行
maven实践:(一)创建普通java项目、打包、运行安装maven,配置环境变量新建M2_HOME和MAVEN_HOME变量,把maven的解压目录填入在path变量中加入%M2_HOME%/lib;%MAVEN_HOME/lib%;切换官方源为aliyun maven源在maven解压目录的conf文件夹中settings.xml中mirrors标签下添加 <mirror>原创 2017-09-02 22:28:47 · 10970 阅读 · 1 评论 -
Spring入门学习(三)logback配置按天打日志
Spring入门学习(三天)logback配置按天打日志 ## 添加log的依赖“` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId></dependency>“` ## logback的配置文件logb原创 2017-11-13 22:25:11 · 780 阅读 · 0 评论 -
Java ArrayList合并时不成功的情况
Java ArrayList合并时不成功的情况String[] string = string.split(",");List list = Arrays.asList(strings);list.addAll();//插不进去//解决String[] string = string.split(",");List list = Arrays.asList(strings);lis原创 2018-01-24 18:07:39 · 429 阅读 · 0 评论 -
Java Tools(四)执行sql文件 (来自Mybatis的代码)
Java Tools(四)执行sql文件 (来自Mybatis的代码)浏览mybatis代码发现有个比较好的工具类,执行sql文件的,而且除jdk之外无第三方依赖。org.apache.ibatis.jdbc.ScriptRunner/** * Copyright 2009-2018 the original author or authors. * * Licensed ...原创 2019-03-20 23:21:54 · 800 阅读 · 0 评论 -
Java Tools(三)异常信息转字符串 (来自阿里DataX的代码)
有时候需要把异常信息打印在日志上,e.toString() e.getMessage()获取的信息都太少看着DataX中有这么一段代码,拿出来记录下,代码上没写作者。效果:com.alibaba.datax.common.exception.ExceptionTrackerpackage com.alibaba.datax.common.exception;import java.i...原创 2019-03-07 22:39:31 · 574 阅读 · 0 评论 -
Java Tools(二)获取机器IP和主机名(来自阿里DataX的代码)
还是在看datax的代码的时候发现写得很优秀的这些代码java代码获取机器的ip和主机名大体思路是先用jdk代码获取,再调用系统命令:hostname -i 获取iphostname 获取主机名运行效果:package com.alibaba.datax.common.util;import org.apache.commons.io.IOUtils;import org.s...原创 2019-03-07 22:07:09 · 541 阅读 · 0 评论 -
Java Tools(一)获取JVM信息(来自阿里DataX的代码)
想看一下DataX的框架-插件机制,看见一个很有帮助的工具类,获取JVM信息。记录下。代码来自DataXcom.alibaba.datax.common.statistics.VMInfopackage com.alibaba.datax.common.statistics;import org.slf4j.Logger;import org.slf4j.LoggerFactory;...原创 2019-03-06 00:04:53 · 1123 阅读 · 0 评论 -
JSqlParse(二)带where的查询语句build
JSqlParse(二)带where的查询语句build资料较少,翻看源码,查看类的继承关系倒推出来的…费劲啊单个where条件 Table user = new Table("user"); Select select = SelectUtils.buildSelectFromTable(user); EqualsTo equalsTo = new EqualsTo(); ...原创 2019-02-10 22:35:44 · 2294 阅读 · 2 评论 -
JSqlParse(一)基本增删改查语句build
JSqlParse学习(一)基本增删改查语句buildJSqlParse是一款sql解析、构建库,其中的封装的思想比较直观理解。sql解析、构建是业务上比较常用的功能,有了这个神器,不用自己再绞尽脑汁的构建、解析sql。其实看一下源码,结合sql知识,可以直接上手使用这个库。目前看到互联网上JSqlParse的资料较少,故本着学习的目的,记录这一系列的文章。下面是简单的sql构建的样例。查...原创 2019-01-27 00:04:23 · 2433 阅读 · 0 评论 -
若依管理系统二次开发(一)后台代码自动生成
若依管理系统二次开发(一)后台代码自动生成注意手工创建的表要自动生成代码,如果表注释为空,后台列表是不会显示这张表的。SELECT table_name, table_comment, create_time, update_time FROM information_schema.TABLES WHERE table_comment <> '' AND tab...原创 2019-01-02 23:16:09 · 16103 阅读 · 0 评论 -
maven实践:(三)在多模块项目中添加新模块
如何在多模块的maven项目中添加一个新的模块这里用gitee上比较靠前的ruoyi后台系统来做演示项目的根目录:项目的pom.xml中的一些配置 <groupId>com.ruoyi</groupId> <artifactId>ruoyi</artifactId> <version>3.1</ver...原创 2018-12-23 15:03:40 · 3484 阅读 · 2 评论 -
java的RESTful解决方案
java的RESTful解决方案RESTful是什么?RESTful与WebServicejava的RESTful框架Jersey框架测试工具firefox浏览器的RESTclient插件原创 2018-01-18 21:55:49 · 856 阅读 · 0 评论 -
java对于office word文档的解决方案,读取,生成
java对于office word文档的解决方案,读取,生成word文档目前有两种格式doc、docx格式。 doc应该是微软闭源的格式,docx是开源的ooxml的格式。后者可以把文件类型改成zip,然后可以打开。 对于office比较友好的应该是自家的.net平台的C#。 java对于此也有解决方案: apache的poi、商业公司的docx4j包含开源社区版。 docx其实就是原创 2018-01-17 21:38:01 · 1777 阅读 · 0 评论 -
Java回炉重造(六)使用Apache Commons Net查询Whois域名注册信息
Java回炉重造(五)使用Apache Commons Net查询Whois域名注册信息code地址https://code.youkuaiyun.com/u012995856/apache-commons-learnmaven依赖 <dependency> <groupId>commons-net</groupId> <artifactId>com原创 2017-06-05 16:58:20 · 982 阅读 · 0 评论 -
Java回炉重造(五)使用Apache Commons Text生成随机字符串
Java回炉重造(五)使用Apache Commons Text生成随机字符串codehttps://code.youkuaiyun.com/u012995856/apache-commons-learn/tree/master代码截图运行结果代码package cn.pangpython.acl.text;import org.apache.commons.lang3.StringUtils;import原创 2017-06-04 16:35:41 · 7148 阅读 · 3 评论 -
java小工具(三)随机返回字符串数组中的字符串
java小工具(三)随机返回字符串数组中的字符串 //随机返回字符串数组中的字符串 public static String RandomStr(String[] strs){ int random_index = (int) (Math.random()*strs.length); return strs[random_index]; }原创 2016-11-24 19:09:15 · 1348 阅读 · 0 评论 -
java小工具(二)读取文本文件的内容到string
java小工具(二)读取文本文件的内容到string//读取文本文件的内容到string public static String TXT2String(String txt_file) throws IOException{ StringBuilder builder = new StringBuilder(); BufferedReader reader =原创 2016-11-24 19:07:51 · 656 阅读 · 0 评论 -
java小工具(一)获取不带后缀的文件名
java小工具(一)获取不带后缀的文件名//获取不带后缀名的文件名 public static String getFileNameWithoutSuffix(File file){ String file_name = file.getName(); return file_name.substring(0, file_name.lastIndexOf(".原创 2016-11-24 19:06:51 · 17768 阅读 · 7 评论 -
Java实现一个GUI的SEO软文生成器v1
项目CODE地址: https://code.youkuaiyun.com/u012995856/autogenseoarticle/tree/master 效果图: 目录结构: 功能: GUI输入,替换现成模板里的变量,生成新文件 Generator.javapackage cn.pangPython.autogenseoarticle;import java.io.Buffe原创 2016-07-30 23:21:58 · 2203 阅读 · 0 评论 -
Java Swing 添加按钮、菜单栏、文字域
效果图: 代码:import java.awt.BorderLayout;import java.awt.Container;import java.awt.FlowLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMen原创 2016-07-25 21:24:01 · 16156 阅读 · 2 评论 -
第一个Java SWing GUI程序
效果图: 参考 APIimport java.awt.BorderLayout;import javax.swing.JFrame;import javax.swing.JLabel;public class HelloWorld { public static void main(String[] args) { //初始化一个 JFrame fra原创 2016-07-25 20:35:39 · 536 阅读 · 0 评论 -
使用优快云-CODE&C-IDE搭建tomcat环境
准备: 进入CODE的C-IDE环境,使用提供的ubuntu终端 1. 下载tomcatwget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.0.36/bin/apache-tomcat-8.0.36.tar.gz2 . 解压tar -zxvf ~/apache-tomcat-8.0.36.tar.gz3 . 运行tomcatsudo ~原创 2016-07-01 19:27:13 · 588 阅读 · 0 评论 -
Java替换字符串中的空格
原文链接: http://www.2cto.com/kf/201311/256893.htmlReplaceSpace.java /** * * 把字符串中的每个空格替换成%20.如We are happy,则输出We%20are%20happy * */ public class ReplaceSpace { public转载 2016-07-24 11:27:38 · 637 阅读 · 0 评论 -
JavaWeb企业实训 简易股市自选查询分析系统(六)使用Shiro控制登录等权限管理与Spring项目整合
使用Spring 框架为什么不使用spring security?网上评价不大好、、、Shiro的年龄也比较大(待续。。。!!!)Spring原创 2016-04-21 13:33:44 · 761 阅读 · 0 评论