
Java
文章平均质量分 63
Java
道虽迩,不行不至
这个作者很懒,什么都没留下…
展开
-
简单搭建 SSM 项目实现登录
SSM(Spring、Spring MVC、MyBatis)框架,是一种 Java Web 应用程序开发框架的集合,可以帮助开发者快速搭建 Java Web 应用程序。创建项目,并引入基础依赖包。搭建项目层级目录。添加 SSM 基础配置信息。后端登录业务逻辑代码实现。前端 JSP 页面代码逻辑实现。启动项目,访问登录页面,实现登录操作,登录成功则重定向到首页,如果登录失败,则重定向到登录页面。原创 2023-12-26 11:49:10 · 852 阅读 · 0 评论 -
HashMap数据结构及扩容详解、指定默认容量实例化后不一致问题详解
这里说明下上面提到的给定初始值于实例化后的初始值不一致问题其实简单总结就是如果指定的初始容量不是2的幂次方,则会重新计算指定初始容量为向上的最近的2的幂次方的数值为集合容量。比如指定为6,则计算后为8,指定为8则默认为8,指定为12,默认计算为16。原创 2021-03-01 21:37:38 · 1877 阅读 · 1 评论 -
HTTP网络请求实例
网络请求转载 2023-04-03 16:10:03 · 781 阅读 · 1 评论 -
微服务间接口调用 feign
Feign的使用原创 2023-01-28 11:46:31 · 2354 阅读 · 2 评论 -
多种方式实现 List 集合排序、去重
【代码】List 集合排序。原创 2022-11-02 18:10:50 · 609 阅读 · 0 评论 -
线程创建、线程池创建相关理论知识整理 - 附部分线程池实例
线程理论知识整理原创 2022-08-22 18:12:54 · 587 阅读 · 0 评论 -
Java正则匹配过滤数据、正则判断只包含某类字符
Java正则原创 2022-06-12 10:19:36 · 1236 阅读 · 0 评论 -
前后端分别实现集合根据中文拼音排序
排序原创 2021-09-04 15:04:56 · 562 阅读 · 0 评论 -
Windows安装搭建、使用SVN服务器
1、下载SVN服务器包http://subversion.apache.org/packages.html这里选择下载Windows环境的SVN服务器,因为我本地已经安装了SVN,所以不再重新安装SVN,只安装SVN服务器,具体根据个人需求下载。2、本地安装SVN服务器,步骤如下:双击下载好的包文件进行安装开始一直next即可安装目录及版本存放目录、端口、备份等根据个人情况自行选择目录。这里选择端口时会校验是否有冲突,有冲突的话可以修改为其他端口。如下选择subve原创 2020-11-19 16:16:56 · 610 阅读 · 0 评论 -
nginx启动、重启、开机自启、启动异常情况处理
设置nginx自动启动首先需确保系统中有nginx.service服务,默认用 yum install 命令安装nginx会自动创建nginx.service。如果是下载包安装,则需要在系统中创建nginx.service文件。后面的路径是配置的nginx.conf的路径,在执行nginx -t 后会返回此路径,执行完后再重新启动。Failed to start start.service: Unit not found. 等类问题。一般报错往往会是配置文件错误导致启动错误,原创 2020-03-19 16:46:59 · 2061 阅读 · 1 评论 -
Java整合聚合平台实现短信发送功能
Java实现 使用聚合平台短信发送接口发送短信。实现代码如下:import com.alibaba.fastjson.JSONObject;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.io.BufferedReader;import java.io.InputStreamReader;import java.net.URL;import java.net.URLConnection;import j原创 2021-07-21 11:52:57 · 669 阅读 · 0 评论 -
@Transactional事务使用、属性、事务传播及手动回滚
事务的使用原创 2021-07-09 17:16:21 · 2855 阅读 · 0 评论 -
java获取当前日期、格式化、重新指定年份
获取当前日期:使用Calendar获取当前日期,现在都不介意用new Date()创建了。创建完成后,如果需要将年份指定为指定的年份,不能用setYear()方法,因为setYear()方法会给设置的年份+1900,所以不能走日期的正常途径了,暂时没有找到正常的途径,所以这里用了偏门一点的,获取日期后,先进行格式化,然后截取日期的年份,然后用字符串的替换方法直接替换为想要的年份。转换后还可以将他转换为日期格式,但是这里需要注意一点的是格式化的yyyy需要小写,不要大写,否则转化过后的年份会重新计算。S原创 2021-06-24 17:28:43 · 681 阅读 · 0 评论 -
后端使用验证码kaptcha,实现登录校验
kaptcha的定义就不再细说了,可以到官方文档中查看,有详细的说明,包括详细配置等。使用kaptcha需要导入依赖jar包,版本可以根据自己需要查询仓库自己定义,如下:<dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha</artifactId> <version>2.3.2</version><原创 2021-06-18 11:56:31 · 1601 阅读 · 1 评论 -
@ConfigurationProperties注解的理解及使用
此注解和@Value注解类似,可以读取到spring配置文件中的配置信息。可以配置在类上也可以配置在方法上;配置在类上,类中的属性字段需要和配置文件中的属性名称一致,带有中划线配置的属性可以使用驼峰命名法绑定属性。相关博文推荐:推荐博文地址...原创 2021-06-10 11:25:54 · 251 阅读 · 0 评论 -
@Target、@Retention、@Inherited、@Documented 自定义注解理解整合
自定义注解定义配置注解整合说明@Target 注解用来规定注解的作用目标@Target 的参数可以是单个参数也可以是一个数组,如下都是可以的:@Target(ElementType.FIELD)@Target({ElementType.FIELD,ElementType.METHOD})其参数可选项如下:如上可以指定注解的作用目标,还需要指定注解的保留策略@Retention 用于指定注解的保留策略,可有三种选择 如下:@Retention(RetentionPolicy.SOURCE)原创 2021-05-25 16:56:03 · 488 阅读 · 0 评论 -
@ComponentScan 加扫描包和不加的区别
@ComponentScan 不添加包类似于启动类只加了注解 @ComponentScan@ComponentScan如果不添加扫描包,默认会扫描与配置了该注解类处于同一目录下的所有配置类(配置了@Service、@Controller、@Repository、@Component 等注解的类)@ComponentScan添加扫描包@ComponentScan可以添加多个扫描包,也可以添加单个如@ComponentScan({“com.mecapp.infocenter”,“com.mec..原创 2021-05-14 17:08:34 · 1804 阅读 · 0 评论 -
后端正则校验 -数字、经纬度、年月日
java后端校验:纬度校验:String latPattern = "/^[\\-\\+]?((0|([1-8]\\d?))(\\.\\d{1,10})?|90(\\.0{1,10})?)$/";经度校验:String lonPattern = "^(\\-|\\+)?(((\\d|[1-9]\\d|1[0-7]\\d|0{1,3})\\.\\d{0,6})|(\\d|[1-9]\\d|1[0-7]\\d|0{1,3})|180\\.0{0,6}|180)$";js校验:纬度校验:var l原创 2021-05-08 20:15:53 · 1525 阅读 · 0 评论 -
查询一段时间内的统计数据-统计没有数据的显示为0
MySQL查询连续一段时间内的统计数据,如果对应时间统计没有数据则统计为0,不能不显示对应的时间。这里用java拼接SQL传入两个日期时间startTime,endTime,对两个时间进行计算,得到日期的相差天数。 public static int differentDaysByMillisecond(String date1,String date2){ Date d1 = format(date1, DateFomateEnum.getAgeNameByCode(41110)); Dat原创 2021-04-29 19:18:24 · 1178 阅读 · 0 评论 -
后端使用注解方式实现传入参数的字段长度校验
后端实现输入参数的字段长度校验,具体实现代码如下:加一个在实体字段上配置的注解,指定字段长度@Target({ElementType.FIELD, ElementType.TYPE})@Inherited@Documented@Retention(RetentionPolicy.RUNTIME)public @interface CoLen { int value();}写一个字段长度的校验实现类:public class ColLenCheck { public stati原创 2021-04-23 17:44:30 · 3776 阅读 · 0 评论 -
通过映射将Map值赋值给实体类属性
将map中的数据copy给对应的实体类属性。原创 2021-04-21 09:25:44 · 3730 阅读 · 0 评论 -
Linux安装配置Tomcat,部署Javaweb项目
即可启动Tomcat,注意在启动前需要查看Tomcat的配置端口是否与服务器的其他进程冲突,默认是8080端口,最好修改下端口;生成war包后,将生成的war文件放到服务器的Tomcat文件夹下的webapps下,然后在Tomcat文件夹下的bin目录下找到start.up文件,命令执行。正常解压完成后即可启动,但为了防止端口冲突,最好检查下配置,修改下端口,防止端口冲突导致不能正常启动。配置修改完成后,即可启动Tomcat,进入到bin目录,执行如下命令即可启动Tomcat。原创 2021-02-26 11:09:28 · 622 阅读 · 0 评论 -
eclipse本地打war包部署服务器启动
war包部署服务器启动前提准备工作:服务器安装配置项 -JDK、Tomcat本地搭建好的工程使用eclipse打包工程:在eclipse中创建好一个工程,具体目录如下(每个工程目录都各有不同)注意工程要打成war包,需要在pom文件中修改packaging为war右键项目,选择Export – WAR file;然后选择保存的文件夹finish即可。部署服务器生成war包后,将生成的war文件放到服务器的Tomcat文件夹下的webapps下,然后在Tomcat文件夹下的b原创 2021-02-07 12:48:52 · 544 阅读 · 0 评论 -
List集合了解及arrayList、LinkedList等实现类的使用-部分源码分析
List集合继承与Collection接口原创 2021-01-30 21:12:57 · 188 阅读 · 2 评论 -
深入理解java类加载
好文章推荐:https://www.cnblogs.com/czwbig/p/11127222.html原创 2020-12-23 23:03:38 · 90 阅读 · 1 评论 -
springboot 整合 mybatis 详解
使用springboot + mybatis搭建后端工程,具体步骤如下:1、new project选择spring Initializr ,看SDK和service URL是否正确,然后点击next3、填写工程名称及java版本,java版本根据上一步的SDK版本来选择,然后点击next4、选择依赖,然后next —> finish5、创建目录如下,这里新添加了一个application.yml,不使用原本的application.properties,会把后者删除6、修改a原创 2020-11-14 18:58:16 · 606 阅读 · 0 评论 -
环境启动踩过的坑。no route to host 、iptables: No chain/target/match by that name 等错误
环境启动报错:com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server是因为注册中心注册了自己,可以设置自己不可以注册自己eureka: environment: instance: #注册到eurekaip地址 hos...原创 2020-03-21 14:57:36 · 769 阅读 · 0 评论 -
解决: 500异常 - No converter found for return value of type: class java.util.ArrayList
在使用springMVC + mybatis 前端+vue搭建工程时,请求返回异常,前端一直显示500异常,异常提示No converter found for return value of type: class java.util.ArrayList问题描述是因为后端返回数据在解析异常具体的解决办法如下:1、添加依赖<dependency> <groupId>com.fasterxml.jackson.core</groupId> <arti原创 2020-11-13 17:09:33 · 573 阅读 · 0 评论 -
前后端分离开发,前后端(java+vue工程)分别处理跨域问题
前后端分离开发遇到跨域问题,处理跨域问题:1、后端处理跨域问题在后端工程中添加拦截类,做跨域问题处理,具体代码如下:package com.ssm01.util;import org.springframework.stereotype.Component;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.S原创 2020-11-12 13:42:36 · 559 阅读 · 1 评论 -
SSM项目搭建及实现简单的登录
如下即是我们项目启动后请求到的jsp页面,表示项目运行成功,这里的话因为我是准备做前后端分离开发,所以这里的jsp页面先不做请求返回处理,具体的前端返回处理会在前端工程中做处理,前端vue工程已写了另一篇文章,专门介绍如何使用vue搭建前端工程,有兴趣可以查看。数据库建表语句,这里去除了userCode字段,因为在业务中没有实际的使用,代码中也去除了该字段。其他创建时间、修改时间等字段在以上系统中没有使用,可用可不用,正常系统都会有这些字段。原创 2020-11-08 13:18:01 · 1916 阅读 · 2 评论 -
idea创建spring boot项目,及初建项目未生成web.xml文件解决
1、new project2、选择JDK版本,工具默认会选中本地安装的版本,选择Spring Initializr,然后点击next。3、填写项目组名及唯一性标识名,填写完成后记得修改最下面一行的报名,默认包名会将组名和唯一性标识名组合在一起,这样会导致包名可能过长,可以根据需要自己修改。填写完成后点击next。4、选择要引入的插件,这里选择spring web,点击next。5、选择放项目的本地磁盘的文件夹,点击finish;这样一个spring boot项目就创建好了。6、有时创建的原创 2020-07-16 10:14:22 · 1702 阅读 · 0 评论 -
解决No thread-bound request found: Are you referring to request attributes outside of an actual web...
异常信息:java.lang.IllegalStateException: No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web r原创 2020-05-11 11:19:46 · 16318 阅读 · 0 评论 -
Linux安装JDK环境变量配置
JDK环境变量配置找到/etc/profile 在最后一行加上下面语句即可#java environmentJAVA_HOME=/usr/lib/java/jdk1.8.0_251CLASSPATH=.:$JAVA_HOME/lib/tools.jarPATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME CLASSPATH PATH添加完成后执行下面...原创 2020-05-08 09:53:50 · 785 阅读 · 0 评论 -
JAVA实现List集合去重
Java去重list集合两种简单的方法List<String> list = new ArrayList<String>();list.add("java");list.add("python"),list.add("c++");list.add("java");list.add("c++");system.out.println(list);输出:[JA...原创 2020-04-27 17:52:00 · 420 阅读 · 0 评论 -
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?项目编译报错如上,是因为默认指定的项目编译不是JDK,而是JRE或者说是eclipse默认指定的JRE,只需要修改下默认编译为本地安装的JDK即可。具体步骤如下:右击项目,在Build path -...原创 2020-04-26 09:55:51 · 277 阅读 · 0 评论 -
Java JDK、maven、node环境变量配置
Java环境变量配置:1、在系统变量中新建变量名:JAVA_HOME 变量值:D:JDK (本地jdk的文件夹路径)2、在系统变量中新建变量名:CLASS_PATH 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\tools.jar;3、在path中添加 %JAVA_HOME%\bin; (需要注意如果是文本编辑新添加的变量和之前的变...原创 2020-04-09 15:29:02 · 325 阅读 · 0 评论 -
项目显示红色感叹号问题解决
项目显示红色感叹号有几种可能1、jdk问题(jdk版本不匹配,jdk环境变量配置错误)2、jar包报错,pom文件报错判断是那一类问题:查看项目的pom文件中是否有许多jar包报错,如果有许多jar包报错应该是第二类问题,如果只是在pom文件中只有报错,应该是第一类问题,第一种问题解决办法,首先检查本地环境Java环境是否配置成功,成功的标识:win+r 输入cmd,输入java -ve...原创 2019-11-05 17:30:03 · 5103 阅读 · 0 评论 -
BigDecimal变量创建、比较、计算
创建:BigDecimal a = new BigDecimal(1);BigDecimal b = new BigDecimal(2);BigDecimal c = new BigDecimal(1);比较:a.compareTo(b) == 1 为1表示a > b,为0表示 a = b,为-1表示a < b用上边的变量比较 a.compareTo(b) == 0 //f...原创 2019-10-08 19:36:23 · 3268 阅读 · 0 评论 -
maven clean 后提示Cannot create resource output directory错误解决
eclipse项目maven clean后,提示Cannot create resource output directory,原本maven clean后,项目下的target文件夹会删除,但是报错后该文件夹并没有删除,点击也打不开,原因是因为target文件夹或者下面的文件被占用,在其他地方打开着,maven clean后,虽然删除了,但是该文件夹仍然被占用着,导致的此异常;解决办法:1...原创 2019-10-08 19:14:25 · 1096 阅读 · 0 评论 -
Java中for循环嵌套分层封装数据简章
在for循环中嵌套封装数据list中包含map,map中再包含list类似数据封装问题记录,要做的就是在这一层创建下一层的list和map,map设置为null,到下一层在实例化,将为null的map添加到list中,然后将list put到上一层的map中,如此迭代即可,代码如下://第一层遍历List<Map<String, Object>> listAll = ...原创 2019-08-17 13:26:15 · 988 阅读 · 0 评论