java
后台java
庞胖
三分钟的热度可以为你指明方向,剩下的路是否继续坚持,还是要看自己。
展开
-
jdbc可以直接操作数据库,为什么还要使用spring等框架?
为什么不直接使用jdbc去操作数据库,spring做了哪些功能,使用spring的优势,为什么要使用spring,了解spring的部分功能原创 2023-03-07 11:15:21 · 210 阅读 · 0 评论 -
任何编程语言的条件判断都应该基于是否存在为基础条件
先进行channelInfo.bankCardPath的校验,在进行channelInfo.bankCardPath.length > 0的校验;小程序部署之后发现的channelInfo.bankCardPath属性为null,于是在条件判断加上了这个校验,仅此记录。原创 2023-01-29 13:55:11 · 67 阅读 · 0 评论 -
java 随机数种子 java设置随机数种子教程 java随机数种子怎么设置
如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。为了 Java 代码的完全可移植性,Java 实现必须让类 Random 使用此处所示的所有算法。但是允许 Random 类的子类使用其他算法,只要其符合所有方法的常规协定即可。如果没有提供种子数,Random实例的种子数将是当前时间的毫秒数,可以通过System.currentTimeMillis()来获得当前时间的毫秒数。不带种子将会返回随机的数字,每次运行结果不一样。原创 2023-01-29 08:45:32 · 2999 阅读 · 0 评论 -
java 获取当前时间存入数据库
还有一点,就是我的前辈给我指出的,如果很多地方(大概是大于两个就可以)应用到这个时间的格式化,你可以定义在方法外,使用的时候直接用就好,当然时间的格式化格式要注意,这个自己改一下就好了。当然,这个是一个小知识点,大多数刚接触java的同学也会知道,但还是想记录下哈哈。在数据库设置将default(默认值)修改为CURRENT_TIMESTAMP。在SQL语句中利用NOW()函数。原创 2023-01-07 14:10:40 · 1764 阅读 · 0 评论 -
java 给int赋值开头为0时出现的问题
忽然想起这个有趣的知识点,可以了解,避免挖坑。原创 2023-01-06 17:20:54 · 602 阅读 · 0 评论 -
MyBatis-Plus 更新(update)方法,属性参数为空时进行更新与不进行更新的设置
FieldStrategy的源码中,一共有4种策略类型。在实体类上使用@TableField注解。有兴趣的小伙伴可以点击看看。原创 2023-01-04 17:31:24 · 6755 阅读 · 0 评论 -
单机版java接口限流示例
场景:java某接口进行限流操作,模拟示例。原创 2023-01-01 15:12:40 · 254 阅读 · 0 评论 -
java跨域问题
项目接口访问出现allowedOrigins cannot contain the special value "*"场景:前端请求接口跨域,又出现这个问题了,又是一次百度,网上一堆配置,觉得有必要记录一下。遇到的问题:spring boot版本引起的跨域报错。原创 2022-11-16 11:20:48 · 1190 阅读 · 0 评论 -
JAVA拦截器的使用及getReader() has already been called for this request错误解决、拦截器获取数据进行解密后再次传入控制层
题外话(深夜emo):自身的硬实力才是和资本家谈判的资本,学习的越深越是能了解自己的渺小和不足,一段代码写两遍能了解,四遍左右短时间能记住,当你敲个几十遍,很大可能会刻在脑子里,怎么说呢,想要涨工资,就要提升自己的硬实力去和资本家谈价。拦截器参数问题自己解决了,看看前端传的啥格式,你需要的是啥格式,自己转下,我这里是用的map;大家可以去了解下拦截器、过滤器的区别,以及上述所论的注解。场景:多应用使用登录接口时需要判断是否在应用中心完成注册。原创 2022-11-09 22:21:59 · 1499 阅读 · 0 评论 -
MySql多条件查询包含or,and条件会失效
原因:当mysql的WHERE语句中出现AND、OR时,AND 要么全部放在 OR 的前面,放在OR之后的AND条件将不会起作用。多见于商品的多条件查询。原创 2022-10-28 11:07:14 · 2808 阅读 · 0 评论 -
实体类相互转换工具类
场景:不同的实体类之间取相同数据赋值。原创 2022-10-24 16:18:21 · 606 阅读 · 0 评论 -
项目的返回类型封装(封装返回类型)
场景:项目需统一制定返回编码和提示信息,以及提供的数据。原创 2022-10-14 11:07:09 · 437 阅读 · 0 评论 -
@Transient注解修饰实体类属性,满足该属性不为数据库字段,但又是必须使用的
同时MyBatisPlus的@TableField(exit=false)注解也可以满足,当exist=true,标识该属性为数据库表字段,exist=false,标识该属性不为数据库表字段,通常应用在属性上标识该属性不是数据库表字段,但又必须使用。@transient 就是在给某个javabean上需要添加个属性,但是这个属性你又不希望给存到数据库中去,仅仅是做个临时变量,用一下。场景:基于MyBatisPlus,后期项目改动,需要多传几个属性,传参方式为post,传参类为实体类。原创 2022-09-06 23:31:20 · 1409 阅读 · 0 评论 -
过滤SQL语句中的注释
【代码】过滤SQL语句中的注释。原创 2022-08-31 16:16:53 · 585 阅读 · 0 评论 -
手机号中间屏蔽,正则表达式
String phone = "13100001111";String phoneResult = phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");System.out.println(phoneResult);原创 2022-04-25 08:12:29 · 188 阅读 · 0 评论 -
信息存入redis缓存
private LoginResponse redisCacheResponse() { String sessionId = "LOGINRESPONSESESSIONID"; LoginResponse loginResponse = (LoginResponse) redisTemplate.opsForValue().get(sessionId); if (ObjectUtil.isNull(loginResponse)) { loginResponse .原创 2022-04-25 08:17:59 · 884 阅读 · 0 评论 -
CST时间格式化
String date = "Thu Aug 27 18:05:49 CST 2015";SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);Date d = sdf.parse(date);String formatDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);System.out.println.原创 2022-05-13 14:28:47 · 1695 阅读 · 0 评论 -
java后台字母数字拼接
//查询设置最大code值,没有设置默认值“YP0000001”String hbid = serviceApiMapper.selectCode();System.out.println(hbid);String substr = hbid.substring(hbid.lastIndexOf("P") + 1);Integer ii = Integer.parseInt(substr);System.out.println(ii++);String result = Integer.toS.原创 2022-04-25 08:11:33 · 447 阅读 · 0 评论 -
直接执行前端传过来的sql语句索要注意事项
需求:1.直接执行前端传来的任何sql语句,parameterType="String",2.对于任何sql语句,其返回值类型无法用resultMap在xml文件里配置或者返回具体的bean类型,因此设置resultType="java.util.Map",但是Map并不保证存入取出顺序一致,因此设置resultType="java.util.LinkedHashMap",为保证查询的字段值有序(存入与取出顺序一致)所以采用LinkedHashMap。3.当返回值为LinkedHashMa.原创 2022-04-25 08:14:50 · 1282 阅读 · 0 评论 -
tomcat配置文件
修改启动类文件,重配置一下tomcat@Configurationpublic class TomcatConfig { @Value("${server.http.port}") private int httpPort; @Bean public ServletWebServerFactory servletContainer() { TomcatServletWebServerFactory tomcat = new TomcatServletWe...原创 2022-04-25 08:20:26 · 1513 阅读 · 0 评论 -
JAVA 常用AES加密解密工具类
import javax.crypto.Cipher;import javax.crypto.spec.SecretKeySpec;public class AESUtil { private static final String KEY_AES = "AES"; public static String encrypt(String src, String key) throws Exception { if (key == null || key.le.原创 2022-04-25 08:13:12 · 3698 阅读 · 0 评论 -
分转元工具类
分与元的换算是除100,因此没有使用bigdecimal,取分的后两位放置在小数点后就行,没有四舍五入的换算。场景:数据库存储的金额是分为单位,前端展示单位是元,需要转换;原创 2022-07-26 15:40:26 · 311 阅读 · 0 评论 -
md5、base64、RSA1024、RA2048工具类
常用加密解密工具类,有举例,和注解原创 2022-07-26 15:45:33 · 1307 阅读 · 0 评论 -
集合按照某个属性去分组,适用于获取树形菜单等场景
lambda表达式,实体类is开头字段介绍,封装树形数据原创 2022-08-05 13:05:14 · 136 阅读 · 0 评论 -
Java 设计模式 Builder 模式 链式编程
builder模式也叫,builder模式的作用将一个复杂对象的构建与他的表示分离,使用者可以一步一步的构建一个比较复杂的对象。这种设计模式的精髓就主要有两点:其一,用户使用简单,并且可以在不需要知道内部构建细节的情况下,就可以构建出复杂的对象模型;其二,对于设计者来说,这是一个解耦的过程,这种设计模式可以将构建的过程和具体的表示分离开来。将set方法的返回类型修改为实体类,在其方法内加入return this;实体类编辑完成,原创 2022-08-20 16:51:22 · 1878 阅读 · 0 评论 -
java获取本机MAC地址
代码注释部分是获取多个mac地址,没注释的是正常获取mac地址的。原创 2022-07-29 10:13:07 · 1782 阅读 · 0 评论 -
记一次Request method ‘POST‘ not supported
我的问题是请求路径错误,debug进入后发现匹配的路径一直不是正确的类里的方法,匹配了其他类列的方法。上述博客大概浏览了一遍,突然想到问题所在,仅此记录下吧。原创 2022-08-08 14:40:25 · 164 阅读 · 0 评论 -
java根据某个字符取值拼接,首字母改大写,记录一下
【代码】java根据某个字符取值拼接,首字母改大写。原创 2022-08-26 16:26:06 · 150 阅读 · 0 评论 -
批量插入大数据量数据优化方案之分批写入
第一种就是自己分批写入:建立新list大小为500,然后循环你的数据List<UserVO> list=mapper.getList(); //从数据库查询出来的list,也就是需要进行批量插入的总list//一次插入的条数,也就是分批的list大小int maxCount= 500;int listSize=list.size();int maxSize=listSize - 1;List<UserVO> newList = new ArrayList<Use原创 2022-04-22 17:21:02 · 5370 阅读 · 2 评论 -
restTemplate请求发送模板
import org.springframework.http.HttpEntity;import org.springframework.http.HttpHeaders;import org.springframework.http.MediaType;import org.springframework.http.ResponseEntity;import org.springframework.stereotype.Component;import org.springframework.原创 2022-04-22 17:21:58 · 140 阅读 · 0 评论 -
根据数据库方言,生成特定的分页sql(仅作参考),有成熟的插件等duck不必使用这个
/** * 根据数据库方言,生成特定的分页sql * * @param sql * @param sql,map,dialect * @return */ private String generatePageSql(String sql, Map map, String dialect) { if (notEmpty(dialect)) { StringBuffer pageSql = new.原创 2022-04-22 17:13:46 · 522 阅读 · 0 评论 -
基于BC库的国密算法 SM2算法工具
import org.bouncycastle.crypto.AsymmetricCipherKeyPair;import org.bouncycastle.crypto.CipherParameters;import org.bouncycastle.crypto.CryptoException;import org.bouncycastle.crypto.InvalidCipherTextException;import org.bouncycastle.crypto.engines.SM2E.原创 2022-04-22 17:23:20 · 5439 阅读 · 2 评论 -
jdbc手动连接数据库,执行查询语句返回对象
大概代码贴一下,自己连接,仅执行语句返回内容 /** * 查询sql * * @param: sql * @return: JSONArray */ public static JSONArray querySql(PostgreSQLConfig staticPostgreSQLConfig, String sql, Object... objects) { JSONArray resJson = null; .原创 2022-04-22 17:09:28 · 935 阅读 · 0 评论 -
JVM的调优(个人实战常用总结)
jvm调优:1. 调优时机:a. heap 内存(⽼年代)持续上涨达到设置的最⼤大内存值;b. Full GC 次数频繁;c. GC 停顿时间过⻓长(超过1秒);d. 应⽤用出现OutOfMemory 等内存异常;e. 应⽤用中有使⽤用本地缓存且占⽤用⼤大量量内存空间;f. 系统吞吐量与响应性能不不⾼高或下降。2. 调优原则:a. 多数的Java应⽤用不不需要在服务器器上进⾏行行JVM优化;b. 多数导致GC问题的Java应⽤用,都不不是因为我们参数设置错误,⽽而是.原创 2022-04-22 17:28:10 · 810 阅读 · 0 评论 -
JAVA 获取当天、昨天、当月、上个月 的开始和结束日期时间
import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.Instant;import java.time.LocalDateTime;import java.time.ZoneId;import java.time.format.DateTimeFormatter;import java.util.*;public class DateUtil {/*** 获取今天开始时间.原创 2022-04-25 08:09:06 · 2247 阅读 · 0 评论 -
MD5加密通用工具类
package Util; import java.security.GeneralSecurityException;import java.security.MessageDigest; /** * @ClassName MD5Util * @Description TODO * @Author pangyq * @Date 2022/4/21 16:37 * @Version 1.0 */ public class MD5Util { public static.原创 2022-04-21 19:43:06 · 109 阅读 · 0 评论