
JAVA
JAVA
北风浊酒
这个作者很懒,什么都没留下…
展开
-
SpringBoot如何通过Nginx代理获取真实IP
在有代理的情况下,由于任何请求首先经过Nginx,故通过request.getRemoteAddr()获取的其实是Nginx的IP,并非真实的客户端IP;springboot作为后台代码,获取到的登录IP是前台的代理服务器地址,并不是用户的真实IP地址,让我们在做统计的时候无从下手。下面是一个后台获取IP地址的类,本质上没有什么问题,问题在于,Nginx给你的就是一个代理之后的地址,所以你当然获取不到真实的地址了。即可获取到客户端的真实IP。原创 2024-01-15 14:58:09 · 1395 阅读 · 0 评论 -
WebMagic 剖析
WebMagic首先,爬虫的本质:基于Http协议请求目标地址获取响应结果解析并存储。01导语1、爬虫基础知识2、优秀国产开源爬虫框架webmagic剖析02爬虫基础1、爬虫的本质爬虫的本质:基于Http协议请求目标地址获取响应结果解析并存储。2、HTTP请求请求头(Request Headers):包装了http请求的基本信息,比较重要的如:user...原创 2019-03-21 14:06:25 · 1418 阅读 · 0 评论 -
若依3.6.1 pageHelper在动态切换数据源问题
在使用若依3.6.1ruoyi-cloud 时,新版若以采用了mybatis-plus的多数据源处理方式封装,在切换多数据源时,不生效,去掉事物注解仍为解决问题。原创 2022-12-29 11:33:26 · 1503 阅读 · 1 评论 -
JAVA8 stream() 的简单应用
以下代码对java8 stream操作进行简单应用,比如filter 过滤数据、sort 排序等,特此笔记@Override public List<Map<String, Object>> getGisZfrySd(String startDate, String endDate, String areaCode, String areaName) { //返回结果集 List<Map<String, Object...原创 2021-02-25 10:36:34 · 180 阅读 · 0 评论 -
List 通过stream()取差集
利用java8的stream流操作,快速匹配出差集,似乎只能是用大集合比较小集合去操作...import java.util.Arrays;import java.util.List;import java.util.stream.Collectors;public class ListChaji { public static void main(String[] args) { List<Integer> list = Arrays.asList.原创 2021-03-26 10:37:53 · 1730 阅读 · 0 评论 -
java使用正则验证登录密码
需求:密码长度至少8位;且同时包含数字、大写字母、小写字母和特殊符号;代码: /** * 正则验证 * @param passWord * @return */ private static boolean verifPwd(String passWord) { String regExp = "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a.原创 2021-04-16 16:17:49 · 589 阅读 · 0 评论 -
解放生产力之MybatisPlus自定义SQL日志打印
MybatisPlus本身对SQL的应用淋漓尽致,但是一般控制台中SQL日志打印出来,仍然需要手动去填写参数,特别麻烦,今天就这个问题给出解决方法,只针对与MybatisPlus,那种插件之类的不在讨论范围之内哈;直接上代码:package com.**.common.config;import com.baomidou.mybatisplus.core.enums.IEnum;import com.baomidou.mybatisplus.core.toolkit.PluginUtils;原创 2022-04-26 17:52:05 · 2569 阅读 · 0 评论 -
Springboot定时任务【多线程处理】
对于服务端同时开启多个定时任务的需求,按照普通的操作方式,springboot单线程的处理方式会造成许多问题,比如两个定时任务时间冲突,只能等一个执行完成在执行另一个;当一个定时任务出现问题,另一个定时任务也无法执行,整个定时任务服务可能会卡死,不再运行,下面所以写,通过多线程方式调用定时任务,创建线程池,姐可能的避免任务冲突的情况;第一步,创建线程池package com.**.config;import org.springframework.context.annotation.Bean原创 2022-03-28 11:17:45 · 5062 阅读 · 0 评论 -
Java中 “Nov 11, 2021 1:31:21 PM“ 的格式转换
此处与平常我们遇到的“yyyy-MM-dd hh:mm:ss”格式不同,所以在转换时需要特殊定义下format的格式 public static void main(String[] args) throws Exception{ String a = "Nov 11, 2021 1:31:21 PM"; SimpleDateFormat format = new SimpleDateFormat("MMM dd, yyyy hh:mm:ss aa...原创 2021-11-11 15:16:10 · 847 阅读 · 1 评论