
小知识点
文章平均质量分 62
村口老师傅
这个作者很懒,什么都没留下…
展开
-
Java -jar运行jar包时可添加参数
说明: 指定要执行的 JAR 文件。原创 2025-03-29 14:13:08 · 461 阅读 · 0 评论 -
Spring Boot在请求的子线程中获取HttpServletRequest
这两种方法殊途同归,之所以子线程能获取到,都是将requestAttributes保存在InheritableThreadLocal中,从而保证在由当前线程创建的子线程中依然可以获取到数据。但是这两种方法在使用线程池依然无法生效。反而会找出线程数据泄露。原创 2023-12-16 13:15:43 · 1495 阅读 · 0 评论 -
SpringBoot获取HttpServletRequest、HttpServletResponse的三种方式
仅仅适用在controller方法上。当Spring接收到HTTP请求时,会寻找一个合适的方法来处理该请求。我们再看一下RequestObjectFactory.getObject() 的方法,最终还是走到了RequestContextHolder.getRequestAttributes()方法。适用于所有的方法,spring会通过RequestContextHolder.setRequestAttributes方法将RequestAttributes设置到ThreadLocal中。原创 2023-12-16 12:42:36 · 5118 阅读 · 0 评论 -
mybatis遇见的问题(持续更新)
1、bigDecimal不能更新为02、查询oracle数据库date类型的时间没有时分秒,可以看java.sql.Date 是没有时分秒的原创 2021-12-24 22:43:56 · 271 阅读 · 0 评论 -
理解volatile指令重排
https://www.cnblogs.com/bbgs-xc/p/12731769.htmlhttps://blog.youkuaiyun.com/t894690230/article/details/50588129static class TestVolatile{TestVolatile testVolatile = null; boolean flag = false; public TestVolatile initContent() { return new TestVolatile()转载 2021-11-15 19:46:00 · 339 阅读 · 0 评论 -
QPS、TPS、并发用户数、吞吐量
QPSQPSQueries Per Second 是每秒查询率 ,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准, 即每秒的响应请求数,也即是最大吞吐能力。TPSTPSTransactions Per Second也就是事务数/秒。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。QPS和TPS区别个人理解如下:Tps即每秒处理事务数,包原创 2021-09-02 08:56:29 · 255 阅读 · 0 评论 -
对于java中注解的理解
注解糟糕的技术文档或者技术文章我们经常在代码中看到 @Override, @Service, @Autowired 等注解,那么究竟这些注解是干吗的,怎么工作的。使用专业名词来介绍专业名词。可以这样理解注解:想像代码具有生命,注解就是对于代码中某些鲜活个体的贴上去的一张标签。简化来讲,注解如同一张标签。注解用于为 Java 代码提供元数据注解的定义如同 class 和 interface 一样,注解也属于一种类型。注解通过 @interface 关键字定义public @interfa原创 2020-11-30 00:08:46 · 126 阅读 · 0 评论 -
maven常用相关操作
Maven 常用命令mvn clean清理(删除 target 目录下编译内容),如果不执行 clean,可能会出现最新修改的内容没有执行的情况。mvn compile编译项目,将源文件编辑成二进制文件。mvn package打包发布,一般针对不同的项目,如果是web项目会打包成 war 包。jar 项目会打包成 jar 包。mvn package -Dmaven.test.skip=ture打包时跳过测试mvn deploy将快照(snapshot)版本更新到 nex原创 2020-11-29 23:58:24 · 329 阅读 · 0 评论 -
JVM常用参数和参数调优
https://snailclimb.gitee.io/javaguide/#/docs/java/jvm/GC调优参数?id=java内存区域常见配置参数概览原创 2020-11-29 22:26:32 · 225 阅读 · 0 评论 -
jvm垃圾回收机制
https://blog.youkuaiyun.com/cqc877732025/article/details/79402818https://snailclimb.gitee.io/javaguide/#/docs/java/jvm/JVM%E5%9E%83%E5%9C%BE%E5%9B%9E%E6%94%B6原创 2020-11-29 22:21:19 · 190 阅读 · 0 评论 -
JDK的内存分区
https://snailclimb.gitee.io/javaguide/#/docs/java/jvm/Java内存区域原创 2020-11-29 22:14:12 · 212 阅读 · 0 评论 -
如何读取解析配置文件的内容
使用commons-configuration读取配置文件的内容引入依赖<dependency> <groupId>commons-configuration</groupId> <artifactId>commons-configuration</artifactId> <version>1.10</version></dependency><dependency>原创 2020-11-29 19:29:05 · 236 阅读 · 0 评论 -
Thread.join()方法挂起调用线程
join() 的作用当我们调用某个线程的这个方法时,这个方法会挂起调用线程,直到被调用线程结束执行,调用线程才会继续执行。比如在A线程中调用B线程的join()方法,会阻塞A线程,直到B线程执行完成,才会继续执行A线程join() 的构造方法join() 一共有三个构造方法,分别是无参、一个参数、两个参数:public final void join() throws InterruptedException;public final synchronized void join(long m原创 2020-11-19 23:12:35 · 272 阅读 · 0 评论 -
java中如何使用泛型的例子
public static <T> T pop(String key, Class<T> clazz){ try { AMPRedisClient redis = new AMPRedisClient(); String data = redis.lpop(key); if ( data != null && data.length() > 0 ) { return JS原创 2020-11-19 20:12:15 · 240 阅读 · 0 评论 -
理解java中上、下界通配符<? super T>和<? extends T>
上、下界通配符经常用在限定方法的参数传递。本身在开发的过程中很少用到。但是阅读jdk的底层代码,会发现大量使用,所以我们需要有一个了解。上界通配符:<? extends T>上界通配符,限定了泛型T的上界,就是说参数的类型必须是其指定的类型的子类。作用:限定只能传递指定类的子类注意事项:上界<? extends T>不能往里存,只能往外取若将?代表实际类型,T代表我们限定的父类。<? extends T>就可以理解为:可以使用任意的类型,只需要满足实际类型?是T原创 2020-11-19 20:11:11 · 559 阅读 · 0 评论 -
Java关键字synchronized
关于synchronized修饰方法和代码块时锁的对象synchronized修饰方法修饰普通方法锁的是当前方法所属的类创建的实例对象,不同的实例对象互不干扰public synchronized void test2() { int i = 5; while (i-- > 0) { System.out.println(Thread.currentThread().getName() + " : " + i)原创 2020-11-18 15:29:53 · 219 阅读 · 0 评论