java
老吉会飞
这个作者很懒,什么都没留下…
展开
-
java获取url地址和IP
public class RequestUtils {//获取HttpServletRequestpublic static HttpServletRequest getHttpServletRequest() { return ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();}//获取ippublic static String getIp(HttpServlet原创 2022-05-10 09:39:51 · 2182 阅读 · 0 评论 -
java 抽取枚举类公共方法
有一个需求是需要把枚举的数值返回给前端通常是一个枚举一个方法但是如果有一个枚举类就要写一个方法有点麻烦能不能前端传递一个枚举类名,后端找到这个枚举后返回上代码:maven : <!-- java 反射加强jar 包--> <dependency> <groupId>org.reflections</groupId> <artifactId>reflections</arti原创 2022-03-09 12:32:19 · 3151 阅读 · 0 评论 -
java 反射根据任意字段进行排序(倒序或顺序)
public class SortUtil { // 按任意属性进行排序 static class AnyProperComparator implements Comparator<Object> { private String properName;// 根据此关键字属性排序 private boolean flag;// 为true的时候是正序,为false的时候是倒序 public AnyProperCompara原创 2022-03-04 11:13:18 · 1268 阅读 · 0 评论 -
Java 一键生成数据库文档
手写数据库文档太麻烦了,找了一下java一键生成数据库文档maven <dependency> <groupId>cn.smallbun.screw</groupId> <artifactId>screw-core</artifactId> <version>1.0.5</version> </dependency原创 2021-06-16 16:07:12 · 201 阅读 · 0 评论 -
java 多线程的简单使用
java 多线程的用处,如异步处理,多线程同步数据等通常我们的做法是使用Executors来创建线程池,因为他可以做到统一管理,有效的控制最大并发线程防止new Thread() 产生的线程恶性竞争等问题;Executors 的4 种线程池创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待newFixedThreadPool创建一个可缓存线程池,应用中存在的线程数可以无限大newCachedThreadPool创建一个定长线程池,支持定时及周期性任务执行newSchedule原创 2021-06-01 14:29:22 · 149 阅读 · 0 评论 -
springboot 拦截器的简单使用
继承HandlerInterceptorAdapter 重写他的方法生成拦截器import lombok.extern.slf4j.Slf4j;import org.springframework.stereotype.Component;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;import原创 2021-06-01 10:12:25 · 139 阅读 · 0 评论 -
java 读取 Excel 文件(一行一行读取)
Excel 文件数据量过大,一次读取到内存中会造成资源浪费,严重的会使服务器宕机,所以读取一行处理一行,或者读取一定的行数进行处理,上代码我用的是阿里的EasyExcelmaven: <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version原创 2021-05-31 11:19:41 · 5628 阅读 · 5 评论 -
java 队列 Queue 的简单使用
项目中有几个需求有可能使服务器在一瞬间内存飙升,这时候可以使用java队列来消峰比如:用户提交数据后24小时内返回处理结果,为了防止高并发造成的服务器内存消耗,就可以使用Queue,先进先出的原理,按时间优先处理.本来想自己写,看了一下别人写的挺好,于是转载https://www.cnblogs.com/lemon-flm/p/7877898.html以下为转载:Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构Queue接口与List、Set同一级别,都是继承了Collect原创 2021-05-30 22:45:38 · 705 阅读 · 0 评论 -
定时任务 @Schedule注解 分布式加锁
@Schedule注解可以在sprintboot项目中定时启动某个方法,但是如果是分布式部署方案,如k8s集群等,每个节点都会运行此方法,就会造成一系列的问题,此时就要用到@SchedulerLock 分布式加锁注解maven:<dependency> <groupId>net.javacrumbs.shedlock</groupId> <artifactId>shedlock-spring</artifactId> <versio原创 2021-03-22 18:16:59 · 2013 阅读 · 0 评论 -
java hutool 工具类生成 excel 表格
平时很少用到生产excel文档,避免遗忘特此记录我用的是 hutool 工具类,这是一个很全面的工具类maven<!--hutool --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.5.1</v原创 2021-03-04 20:55:37 · 2051 阅读 · 1 评论 -
java 输出流 转 输入流
平时对于流的操作甚少,输出流转输入流特此记录 //创建输出流用于接收 ByteArrayOutputStream out = new ByteArrayOutputStream(); //输出流转换为输入流 ByteArrayInputStream swapStream = new ByteArrayInputStream(out.toByteArray());...原创 2021-03-04 20:12:02 · 759 阅读 · 1 评论 -
java8 新特性 stream 之 筛选,过滤,去重,排序,分页
/** * 筛选操作 * filter 从流中排出某些元素 * limit 使元素不超过指定数量,超过则跳出流 * skip(N) 跳过N个指定元素,返回其他元素 * distinct 筛选,通过hashCode()和equals 去除重复元素 */ List<User> list = Arrays.asList( new User("刘备", 45, "33231", "2020-...原创 2021-03-03 23:00:50 · 5418 阅读 · 2 评论 -
list 按map中的某个字段排序
public class SortListMap {/*** @param args*/public static void main(String[] args) {List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();Map<String, Object> map1 = new HashMap<String, Object>();ma原创 2020-12-31 16:37:14 · 3161 阅读 · 0 评论 -
@NotNull 等注解的简单使用
注册一个账号, 有账号+密码前端会做一个判空,但是后端同时也要做一个判空,防止url直接访问这时后端的代码通常是:if(name!=null){ return "账号不能为空,请重新输入";}else if(password!=null){ return "密码不能为空,请重新输入";}这样就会显得特别low,而且极不美观这时候就要用到一个注解@NotNull简单举例说明:@Datapublic class UserInfo { @NotNull(message = "原创 2020-07-23 11:35:49 · 59852 阅读 · 4 评论 -
java 操作时间 Calendar
//获取当前时间Calendar instance = Calendar.getInstance();Date time = instance.getTime();System.out.println("当前时间为"+time); //当前时间加5分钟 instance.add(Calendar.MINUTE,5); Date time1 = instance.getTime(); System.out.println("当前时间5分钟后的时间为"+t原创 2020-07-08 09:37:33 · 491 阅读 · 0 评论 -
字符串同时替换多个不同的的字符
public static void main(String[] args) { // 同时替换多个文字 (省,市,区) String str1 = "广东省,福建省,北京市,海淀区,河北省,上海市"; // str1 = str1.replaceAll("(?:省|市|区)", ""); // str1 = str1.replaceAll("\\省|\\市|\\区", ""); str1 = str1.replaceAll.原创 2020-06-29 11:40:30 · 4919 阅读 · 0 评论 -
查询某一日期所在的自然周,以周一为开始
查询某一日期所在的自然周,以周一为开始代码如下:import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * @author :lsy * @date :Created in 2020/5/26 10:56 * @modified By: */public class TestLsy { public static void main(String[] args原创 2020-05-26 11:02:17 · 980 阅读 · 0 评论 -
Springboot 整合WebSocket
以前写接口都是前端调用一次后端,后端给前端返回一次数据,这次要写一个接口是后端主动向前端返回数据,就用到了WebSocket,也是初用!个人理解:WebSocket 是前端和后端的一个不会关闭的通道,后端发送一个数据,前端就会接收,然后前端自行判断此数据是否有用!每个访问此WebSocket 的连接都有一个独立的sessionId ,WebSocket 可以群发,也可以指定给某一个ID发消息...原创 2019-12-09 10:22:35 · 142 阅读 · 0 评论 -
使用SpringBoot 生成WebService 接口
创建一个springboot 项目第一步: maven 包 <!--webService--> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-spring-boot-starter-jaxws...原创 2019-12-09 09:38:27 · 1285 阅读 · 0 评论 -
可以设置过期时间的map --ExpiringMap
put 的时候 可以设置时间,并且可以更新时间代码: //为Map中单个元素设置过期时间 @Test public void test4() throws InterruptedException { ExpiringMap<String, String> map = ExpiringMap.builder().variableExpiratio...原创 2019-11-20 09:53:08 · 2977 阅读 · 1 评论 -
JWT-Token 的简单使用
JWT–Token的简单使用1.前端登录username,pssword2.后端接收并使用username参数用JWT的方式生成token令牌JWT会自己保存这个令牌并设置保存的时间,工具类有3.返回token令牌给前端使用这里只是简单的介绍jwt-token的使用maven包: <!-- JWT-Token --> <dependency>...原创 2019-11-13 10:16:21 · 967 阅读 · 0 评论 -
mybatis 调用 oracle 带包存储过程(有out参数)
这是带包存储过程,有out(输出)类型1.先写xml映射文件<select id="call" parameterType="java.util.HashMap" statementType="CALLABLE" resultType="java.util.HashMap"> <!--call 包名.方法名(参数)--> <!--接收参数的...原创 2019-11-07 16:45:52 · 1273 阅读 · 0 评论 -
@Scheduled (Spring Boot) 定时任务使用
直接上代码:@Component@EnableScheduling //开启定时任务//@EnableAsync //开启多线程public class TimerJob { //设置多线程 默认为一个(设置这个 就不用开启多线程了) @Bean public TaskScheduler taskScheduler() { ThreadPo...原创 2019-10-08 15:08:23 · 133 阅读 · 0 评论 -
java字符串 转 NSUTF8encoding 类型
例如 北京 转成 %E5%8C%97%E4%BA%ACimport java.net.URLEncoder;String s1= URLEncoder.encode("北京","UTF-8").replaceAll("\\+", "%20"); System.out.println(s1);转载:URLEncoder.encode(“北京 东城 东城区”, “U...原创 2019-09-26 09:57:41 · 315 阅读 · 0 评论 -
idea 调用 WebService
此处使用查询手机归属地的免费WebService地址 : http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl第一步:在idea 项目中任意包名右键(会在此包生成webservice的java类)出现下面的对话框 填上wsdl 地址生成下面这样的:然后删除class 文件第二步:创建一个类,写上main方法pu...原创 2019-09-24 10:45:12 · 2661 阅读 · 0 评论 -
Spring Boot 双数据源
思路:通常一个数据源是一个mapper接口包,一个mapper XML包.我想法是一个两个mapper包对应两个xml包分别对应两个数据库下面上代码:maven 包我就不放了 你单数据源能连上 这个就能连上yml 配置文件里面配置端口号 配置2个数据源 不用配置mybatis#配置端口号server: port: 8080#配置主数据源spring: datasource...原创 2019-09-06 10:06:33 · 1129 阅读 · 0 评论 -
springmvc 整合 shiro 之xml文件
springmvc 整合 shiro 先两种方式 一种用xml文件 另一种用 java类注解注入先上 xml版本:本文只有登录和登录拦截web.xml 文件中先写:<!--配置shiro过滤器--> <filter> <filter-name>shiroFilter</filter-name> &l...原创 2019-07-11 09:46:18 · 312 阅读 · 0 评论 -
SpringMVC 的上传与下载
SpringMVC 的上传与下载第一步:pom.xml 里加入 <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <versio...原创 2019-07-03 17:13:23 · 114 阅读 · 0 评论