- 博客(21)
- 收藏
- 关注
转载 深入研究Java类加载机制
3、Bootstrap Loader自动加载Extended Loader(标准扩展类加载器),并将其父Loader设为Bootstrap Loader。4、Bootstrap Loader自动加载AppClass Loader(系统类加载器),并将其父Loader设为Extended Loader。命令的时候,JVM会将HelloWorld.class加载到内存中,并形成一个Class的对象HelloWorld.class。2、产生一个Bootstrap Loader(引导类加载器);
2022-11-17 21:36:58
152
原创 linux下脚本部署Javaweb项目
说明:1.新建一个目录DBCP与tomcat目录放在同级目录下(1)dbcp.sh放在DBCP目录下(2)需要部署的DBCP.war放在DBCP目录下(test.war为需要部署的到tomcat上的war包)2.tomcatPath=tomcat-7(指定tomcat文件目录名称,tomcat-7改为自己tomcat的目录名称)3.执行dbcp.sh即可实现自动部署新建的autoDepoy.sh若没有执行权限,需要执行:chmod +x dbcp.sh
2022-06-01 17:31:59
214
原创 配置多个tomcat
1、配置运行tomcat 首先要配置java的jdk环境2、第一个tomcat: 找到"我的电脑" 里面的环境变量 , 添加"CATALINA_HOME"=“D:\apache-tomcat-8.5.78” 这个时候第一个tomcat启动运行是没有问题的3、接着开始配置第二个tomcat的:增加环境变量CATALINA_HOME2,值为新的tomcat的地址;增加环境变量CATALINA_BASE2,值为新的tomcat的地址;4、找到第二个tomcat中的startup.bat文件,把里面的
2022-04-29 14:36:12
1809
2
原创 StopWatch的使用
org.springframework.util包下的一个工具类StopWatch,通过该工具类,我们可以输出执行时间一级各个时间段的占比
2022-01-11 10:15:10
171
原创 Linux下查看磁盘及内存使用情况
查看内存使用情况top各项解释:PID:当前运行进程的IDUSER:进程属主PR:每个进程的优先级别NInice:反应一个进程“优先级”状态的值,其取值范围是-20至19,一 共40个级别。这个值越小,表示进程”优先级”越高,而值越 大“优先级”越低。一般会把nice值叫做静态优先级VIRT:进程占用的虚拟内存RES:进程占用的物理内存SHR:进程使用的共享内存S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示 该进程优先值为负数%CPU:进程.
2021-12-29 17:02:32
528
原创 Linux部署springboot jar第三方jar的问题
<!--添加的本地的外部jar包依赖--> <dependency> <groupId>com.ak.lzh</groupId> <artifactId>项目名称</artifactId> <version>1.0-SNAPSHOT</version> <scope>system</.
2021-06-15 16:57:11
214
原创 添加对https的支持(证书忽略)
对https协议的网站,httpclient需要添加一个合法的SSL 证书,否则会报异常:javax.net.ssl.SSLPeerUnverifiedException,在被访问方实际不需要证书为访问前提的情况下,可以重写一个trustManager可解决忽略证书的问题案例:import org.apache.http.conn.ClientConnectionManager;import org.apache.http.conn.scheme.Scheme;import org.apache.h
2021-06-03 11:46:20
558
转载 HttpClient用法--这一篇全了解(内含例子)
HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性,它不仅使客户端发送Http请求变得容易,而且也方便开发人员测试接口(基于Http协议的),提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会更加深入。org.apache.commons.httpclient.HttpClient与org.apache.http.client.HttpClient的区别Commons
2021-06-02 17:01:22
251
原创 MultipartFile文件上传大小超过限制的问题
使用sprngMVC拦截器方式解决在springmvc-servlet.xml文件中加入拦截器配置,如下: <mvc:interceptors> <bean class="com.XXX.XXX.XXX.AuthorizationInterceptor"> <property name="maxSize" value="1073741825" /> </bean> </mvc:in
2021-05-22 17:43:26
4462
原创 java设计原则
里式替换原则只要是父类出现的地方,都可以用子类替代,且不会出现任何异常。但是反过来则不行,有子类出现的地方,不能用其父类替代子类继承了父类,拥有了父类和方法,同时还可以定义自己有,而父类没有的方法。这是在继承父类方法的基础上进行功能的扩展,符合里氏替换原则,代码示例:public class TestA { public void sum(int i,int j){ System.out.println(i+"i"+j+"j"+"="+(i+j)); } pu
2021-05-13 15:09:26
93
原创 java stream 流操作
一、介绍从 Java8 开始,jdk 新增加了一个 Stream 类,用来补充集合类,它的强大,相信用过它的朋友,能明显的感受到,不用使用for循环就能对集合作出很好的操作。Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象。这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。元素流在管道中经过中间操作(intermediate operation)的处理,最后由最终操
2021-05-12 19:17:41
855
原创 停止线程的方法总结
判断线程是否为停止状态this.interrupted():测试当前线程是否已经被中断(返回值:boolean)this.isInterrupted():测试线程是否已经中断(返回值:boolean)异常法停止线程public class MyThread extends Thread{ @Override public void run(){ super.run(); try { for (int i = 0; ..
2021-05-12 14:53:54
85
原创 ThreadLocal面试题总结
ThreadLocal概念ThreadLocal 是线程本地存储,在每个线程中都创建了一个 ThreadLocalMap 对象,每个线程可以访问自己内部 ThreadLocalMap 对象内的 value。面试总结先说Thread,也就是我们的线程类,在这个类里面有一个Map成员变量,源码如下/* ThreadLocal values pertaining to this thread. This map is maintained * by the ThreadLocal class
2021-05-10 11:14:05
997
2
原创 使用postman传递list<long> 类型
后台controller @DeleteMapping(value = "/deleteRole") public ActionResult addRule(@RequestBody List<Long> roleIds) { //代码}postman传递方式
2021-05-10 10:24:07
5577
1
转载 Linux 启动停止SpringBoot jar 程序部署Shell 脚本的方法
shell脚本#!/bin/bashcd `dirname $0`CUR_SHELL_DIR=`pwd`CUR_SHELL_NAME=`basename ${BASH_SOURCE}`#修改这里jar包名即可JAR_NAME="xxxxxxxxxxxx.jar"JAR_PATH=$CUR_SHELL_DIR/$JAR_NAME#JAVA_MEM_OPTS=" -server -Xms1024m -Xmx1024m -XX:PermSize=128m"JAVA_MEM_OPTS=""#SP
2021-04-26 12:51:48
131
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人