自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

编程技术分享,Java后端、Vue前端

技术栈:Java,SpringBoot,Mybatis,mysql,微服务,Elasticsearch,Redis,vue等

  • 博客(246)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 2024Java面试题附答案(持续更新2024.3.23)

1.restcontroller 和controller有什么区别?答:[email protected]是单例的吗?答: 默认是的。scope可设置成多例,作用域:singleton(单例)、prototype(多例)3.过滤器拦截器有什么区别?答:过滤器依赖servlet容器,基于函数回调实现,在容器初始化时调用一次,几乎可以过滤所有资源包括静态文件。拦截器基于web框架比如springmvc,基于反射实..

2021-02-21 12:03:32 5089 1

原创 postgresql中的stringtype=unspecified有什么作用?

stringtype=unspecified 表示的是对于 string类型不指定JDBC具体的类型,而是内部自行判断,也就是说,默认是指定为 setString()的,这样对于timestamp就会报错。所以设置成不指定string类型对应的JDBC 类型,这样就能避免 传string进去不匹配的问题。解决方法:在url后加上stringtype=unspecified。那么这个是什么意思呢?

2024-04-25 09:50:35 115

原创 Spring Boot整合Redis启动报错:Connection refused: getsockopt: /127.0.0.1:6739

解决方法:把端口配置改成6379。很蠢的一个问题,端口写错了。

2024-03-10 19:47:51 250 1

原创 Caused by: java.lang.NoClassDefFoundError: org/mybatis/logging/LoggerFactory

1.网上找的答案是 多引入了mybatis-spring-boot-starter ,而我并没有。

2023-04-24 20:20:34 248

转载 多线程最常用的场景:单线程数据库取数,多线程处理

最好不用多线程读数据,因为读取到的数据是重复的,没有意义,还要去重,而且你没办法保证处理完的数据还会被读出来。需要考虑的就多了,完全没必要多线程读数据。如果数据有一亿,你不爆炸了,常见的就是分页了,mybatis可以用RowBounds。最常见的就是不能数据还没更新,就把源数据给删了。

2022-11-18 18:47:13 570

原创 String长度和mysql、oracle 的varchar长度对比

Oracle中的varchar2,指的是字节长度,一个中文字符,utf-8下占3个字节,gbk下占2个字节。Java String length() 表示字符数,即char的数量,可以是世界上任何文字。postgresql varchar(6) 可以存6个汉字。String length() == 6 可以存6个汉字。mysql varchar(6) 可以存6个汉字。oracle varchar2(6) 可以存3个汉字。

2022-11-16 09:32:40 2280

原创 反射常见实例改进Class.forName耗时问题

结论: Class.forName耗时远大于 newInstance。间隔:235毫秒 --- Class.forName。间隔:26毫秒 --newInstance。改进: class放入缓存。测试反射创建实例耗时。

2022-08-23 15:29:11 529

原创 Java开发多年写过的BUG都在这了!!!(2022.8更新)

10. Arrays.asList()转化的list,不能增删,java.lang.UnsupportedOperationException。由于add 和addAll方法添加的是对象的引用,因此,如果对象发生改变,那么list也会改变。9. 重复迭代器移除元素报错,大坑,推荐 list.stream().filter。11. List,对象属性值改变,list中的对象也改变。3. String 与Long 用equals判断相等。4.Integer 用==判断相等。7. list空指针。

2022-08-20 23:15:34 744

原创 图书馆管理系统(springboot+thymeleaf+jquery+ajax+bootstrap)

图书馆管理系统(springboot+thymeleaf+jquery+ajax+bootstrap)不同用户角色,登录后有不同的菜单权限普通学生:可以借书、还书管理员:新增图书、修改图书、新增用户、角色等。

2022-08-07 22:36:18 559 1

原创 列表页面实现是几种方式(前后端)

这种方式呢就是前后台不分离,table数据是通过theymeleaf来显示,后台model赋值。更新和保存通过ajax请求后台,form方式提交。

2022-08-07 22:26:50 614

原创 自己封装的swing框架,能够快速写出一个页面(带Tab、菜单)

效果图: 现在写页面的方式有很多,Java也可以写页面,只不过太过繁琐了。鄙人不才,对swing进行简单的封装后,自我感觉顺手了许多(当然可能还有改进空间)StartFrame 启动程序MainFrame 主要窗体TabPanel tab面板SwingBuilder 构建器,用来构建菜单以及tab页面结合Theme 主题接口,用来适应不同分辨率屏幕的样式BasePanel 基础面板,用来构建panel传统写法:我的写法:上述效果图完整的页面:三、页面步骤(

2022-08-07 14:19:38 2005 3

原创 hadoop 相关历史版本下载

1.hadoop新版本下载地址:如果是历史版本:Index of /dist/hadoop/core/hadoop-2.7.12. hive 同理历史版本 archive打头的地址

2022-06-30 16:59:21 678

原创 Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance o

213123

2022-06-28 16:44:19 3955

原创 Java时间工具类

DateUtil

2022-06-22 15:13:07 200 1

原创 Java月份间隔

推荐:取出天数间隔,直接判断 >=30天就是间隔1个月

2022-06-22 15:07:24 932

原创 log4j:WARN No such property [zipPermission] in org.apache.log4j.RollingFileAppender.

log4j:WARN No such property [zipPermission] in org.apache.log4j.RollingFileAppender.log4j:WARN No such property [logPermission] in org.apache.log4j.RollingFileAppender.pom.xml使用打印:resource目录下加个log4j.properties

2022-06-20 16:07:37 1399

原创 Tomcat初始化怎么做,初始化顺序

1.实现ServletContainerInitializer2.实现ServletContextListener3.实现Filter4.servlet启动initServletContainerInitializerpackage com.xy.core;import com.xy.util.ReflectionUtils;import org.springframework.context.ApplicationContextInitializer;import org.spr.

2022-05-23 15:03:14 354 2

原创 联想笔记本:安装适配自己电脑的驱动

1.联想驱动官网:联想官网驱动下载_thinkpad驱动笔记本驱动_联想打印机驱动一键安装_联想官网2.点击 “在站内查找设备驱动”一键安装驱动 有点不行!!3. 打开 window powerShell,输入 gwmi -class win32_bios复制出主机编号4.用主机编号查找5. 下载自己想要的驱动就好...

2022-04-24 15:14:15 1744

原创 JDBC增删改查

1package com.xy;import java.io.IOException;import java.io.InputStream;import java.sql.*;import java.util.*;/** * @ClassName JdbcUtil * @Description * @Author xy * @Date 2022/4/22 * @Version 1.0 **/public class JdbcUtil { private stati

2022-04-22 15:00:25 3645

原创 SPI ServiceLoader.load()不生效

1.首先检查路径resources路径下的META-INF/services2.检查services下文件名是不是接口全称com.view.IBuilder3.接口文件里配置了实现类路径了吗?com.view.menu.EditMenucom.view.menu.AboutMenu4.工程名字问题如果工程的名字跟maven 的pom文件里的groupId不一致,也是不行的我就是工程的名字目录,是my-proj,但是pom.xml里面的groupId没改成my-proj

2022-04-20 16:48:48 1713

原创 List排除列表在外的元素的几种写法

有时候拿到一个list的时候,可能需要过滤一些元素,让它只展示我们希望的元素。假设有两个列表,要求只展示含2,3的元素list [1,2,3,4] TEST_LIST[2,3]有几种方法呢? 用两个for循环判断是否包含,包含的,就添加到新的listNew里 用迭代器,不包含的remove for循环用contains判断是否包含,包含的,就添加到新的listNew里 Java8 lamda stream过滤 具体写法:...

2022-04-09 13:43:59 1222

原创 packaging‘ with value ‘jar‘ is invalid Aggregator projects require ‘pom‘ as packaging

不指定packaging的情况下,默认是jarpackaging改成pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.

2022-04-03 12:35:29 2558

原创 关于substring的截取位置的讲解

不多说 System.out.println("abcd".substring(0, 2));// ab System.out.println("abcd".substring(1, 2));// b看源码,第一个参数是起始位置a---》0b--》1以此类推第二个参数和第一个参数共同决定长度"abcd".substring(0, 2) ----》长度是 2-0=2,从0的位置也就是a,长度是2位----》最后输出ab"abcd".substring(1,

2022-04-01 14:46:23 6930

原创 git add 报错 warning: LF will be replaced by CRLF

warning: LF will be replaced by CRLF in multi-thread/pom.xml.The file will have its original line endings in your working directory原因是存在符号转义问题windows中的换行符为 CRLF, 而在linux下的换行符为LF,所以在执行add . 时出现提示,解决办法:git config --global core.autocrlf false...

2022-03-30 15:17:31 992

原创 IDEA 报错:java程序包不存在

原因:从别的地方拷贝过来的idea项目,就会有这个问题,明明模板都在就是报错解决方法一(不推荐):勾选 maven-runner- Delegate IDE XXXXXXX不推荐:因为我这样搞了还是不行解决方法二:直接删除项目下的 .idea文件夹 以及 .iml文件 ,然后打开IDEA重新引入,解决!!!感谢这个博客给的灵感:idea载入java工程报程序包不存在问题_一介书生187的博客-CSDN博客_idea java程序包不存在...

2022-03-23 17:41:31 9044 1

原创 word2010总是打开最近打开过的文件

删除文件:C:\Users\Administrator\AppData\Roaming\Microsoft\Templates\Normal.dotm不放心的话改个后缀名字 Normal.dotm.bak

2022-02-11 10:07:50 566

原创 切割的神,list分割成若干份

有这样一个list,需要切割成5份 List<Integer> list = new ArrayList<>(); for (int i=0;i<21;i++) { list.add(i+1); }首先看看数字怎么切分 int size = 21; int stepCout = 5;//份数 int stepSize = size/stepCout;//每份分多

2022-01-14 14:57:18 628

原创 窥探:一次用户请求,在tomcat做了什么事情

1.如何窥探的?随便找一个程序能到达的地方,加个异常抛出来 if(true){ throw new RuntimeException("----给老子现行!!!!!!!!!!!!!!!!!"); }可以得到日志:java.lang.RuntimeException: ----给老子现行!!!!!!!!!!!!!!!!!at com.xxxxxxxxxxxx(MyB.java:43) ~[classes/:na]at com.xxxxx

2022-01-08 06:45:00 395

原创 springmvc 实现Controller控制器的三种方式

为什么看到这个?因为这几天发现一个项目没有@Controller/@RequestMapping,只有@Service,但是程序居然能够进行http访问,于是百度了一下,发现还有其他方式实现controller。先说明,只是简单说下有几种方式,不提供具体实现,因为我觉得正常新项目只会有第一种,只要知道有这几个实现方式就行。方式一:@Controller/@RequestMapping这也是开发人员最熟悉的了。方式二:实现HttpRequestHandler接口方式三:实现Controll

2022-01-07 17:09:55 765

原创 idea中用tomcat跑web项目,idea控制台乱码

乱码原因:1.tomcat启动信息乱码 ---需要修改tomcat日志配置 2.项目程序执行乱码 --修改项目编码和文件编码思路:检查各个地方是不是utf-81.idea 配置 Editor -file Encodings2.tomcat logging.properties改成utf-8"E:\install\apache-tomcat-8.5.59\conf\logging.properties"java.util.logging.Con...

2022-01-07 16:31:53 303

原创 java模拟http接口,postman/浏览器访问

浏览器访问: http://127.0.0.1:8080package com;import java.io.*;import java.net.ServerSocket;import java.net.Socket;import java.util.concurrent.TimeUnit;/*TCP/IP:传输层协议,无法识别HTTP:应用层协议,可识别。应用层协议还有 FTP、TELNETWEB:以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上soc..

2022-01-05 22:47:09 3104

原创 总结:前后台接口参数接收的几种方式(form表单、ajax、restful、requestParam等)

知识前言:1.Content-Type: 一个请求都会有请求的内容类型,默认是application/x-www-form-urlencoded; charset=UTF-8常见的接种请求数据类型:application/x-www-form-urlencoded1)浏览器的原生form表单2) 提交的数据按照 key1=val1&key2=val2 的方式进行编码,key和val都进行了URL转码multipart/form-data常见的 POST 数据提交的方式。我.

2022-01-02 00:29:29 5525

原创 bootstrap-table表格实现

方式一:jquery+bootstrap不足:分页能力不行效果:<!DOCTYPE html><html lang="en" xmlns:th="http://www.thymeleaf.org"><head> <meta charset="UTF-8"> <title>商品列表</title> <script type="text/javascript" th:src=.

2021-12-31 00:38:08 960

原创 Oracle、mysql、PostgreSQL之间的区别(笔记)

Oracle、mysql、PostgreSQL区别列表功能/函数/操作 Oracle mysql PostgreSQL 创建序列 没有序列 -- DROP SEQUENCE seq_tache_detail_id; CREATE SEQUENCE seq_test_id INCREMENT BY 1 MINVALUE 10000 MAXVALUE 999999999999999 STAR...

2021-12-29 10:30:20 2058

原创 mysql模拟序列

--创建序列表CREATE TABLE IF NOT EXISTS `sequence` ( `name` varchar(50) NOT NULL, `current_value` int(11) NOT NULL, `increment` int(11) NOT NULL DEFAULT '1' );INSERT INTO `sequence` (`name`, `current_value`, `increment`) VALUES ('s_blog_acc...

2021-12-26 21:53:45 323

原创 springboot+activiti实现画图和部署

版本:springboot <version>2.3.9.RELEASE</version>jdk1.8<activiti.version>5.22.0</activiti.version><druid.version>1.1.14</druid.version><fastjson.version>1.2.68</fastjson.version> <jackson.version&gt..

2021-12-25 17:14:16 3064

原创 电脑能上qq,浏览器不能联网

检查你的代理设置127.0.0.1:8888。 转到“工具”>“Internet 选项”>“连接”。如果你在 LAN 中,请单击“局域网设置”。取消勾选

2021-12-22 21:08:34 2801

原创 记录一次sql优化改造碰到的坑:表关联改成exists,查询出多余数据

建表:drop table t_test1;drop table t_test2;create table t_test1(id number(10));create table t_test2(id number(10),name varchar2(32),status number(10));t_test1t_test2待改造的语句: 假设t2是大表,这样查,数据量很大select t1.* from t_test1 t1 left jo..

2021-12-17 20:37:18 867

原创 说说自己理解的web架构

一、早期开发web项目持久层(操作数据库):jdbc渲染页面:jsp/servlet数据库:mysql、sqlserver、oracleweb容器:tomcat/jetty启动淘汰原因:二、早期框架控制层:spring+struct持久层:hibernatemaven+spring+springmvc+mybatis...

2021-12-17 17:32:41 2822

原创 从Java编译到类执行的过程分析(字节码、JVM、类加载、类执行顺序、构造块有必要存在吗?)

一、java文件是不能执行的,计算机只识别机器语言(二进制)所以必须把他转换成机器可以识别的机器语言。1.首先编译器将java文件编译成字节码文件,也就是.class文件,但这个class文件也不能直接被机器识别。2.这就就是java虚拟机(JVM )的作用,jvm通过解释字节码,将class文件逐条翻译成机器指令。3.逐条解释效率不高,因此,引入了JIT即时编译技术,JVM发现热点代码(执行频繁的代码块),把热点代码翻译成机器码并缓存起来,以便使用。二、java编译成cla...

2021-12-13 21:48:05 424

c++程序员面试

c++是一门很强大的语言,可以用于大型游戏开发,如果你能进入企业进行c++开发,那将是一件很幸运的事情。 本宝典为您讲述了c++面试的一些知识,为了那些拥有知识,想要实现梦想的人提供一个登天梯。

2013-08-25

密码学相关题型

文档包含密码学相关题型,对于密码学爱好者可以对这些题目进行解答研究。 其中有RSA问题,有数字签名实现。

2013-06-27

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除