java
by南坡居士
学习进步,实践巩固。一个蜗牛,慢慢走。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
位运算实现权限demo
概念位运算:计算机是以0、1进行存储的,直接在内存中对二进制位进行操作。代码实现/** * 位运算符 * 计算机二进制。 */public class BitwiseTest { private static final int add = 1<<0; private static final int delete = 1<<1; private static final int update = 1<<2; private stati.原创 2021-09-07 21:40:15 · 195 阅读 · 0 评论 -
利用wait和notifyAll写个简单连接池
概念wait和notifyAll是对象的方法。需求利用syncronized,wait,notifyAll编写简单的连接池。实现获取连接,释放连接功能。代码import java.sql.Array;import java.sql.Blob;import java.sql.CallableStatement;import java.sql.Clob;import java.sql.Connection;import java.sql.DatabaseMetaData;imp原创 2021-09-02 22:11:09 · 127 阅读 · 0 评论 -
syncronized
概念happens-before:A先行于B发生,并且能查看A的修改结果。重入同步:即持有锁,调用其它含有该锁的方法时,持有当前锁即可访问。voliate:易变得,每次修改,在另一个线程即可见修改结果。syncronized:加锁。分为:类锁,对象锁使用格式1.代码块加锁1)变量(锁的属性对象)synchronized(variable){}2)this(当前对象)synchronized(this){}3)类.class(类)synchronize.原创 2021-08-31 22:44:38 · 237 阅读 · 0 评论 -
win10环境配置gradle
1.下载gradle文件夹https://gradle.org/releases/2.解压3.设置环境变量win+r-->sysdm.cpl-->高级-->环境变量设置RADLE_HOME设置path4.查看版本原创 2021-08-01 22:15:16 · 532 阅读 · 0 评论 -
springboot访问静态文件配置
环境springboot 2.4方法properties文件或yml文件配置。重写原创 2020-11-24 19:38:20 · 894 阅读 · 0 评论 -
window环境设置bat脚本关闭jar项目
背景通过bat脚本关闭jar项目。方法方法1@echo offchcp 65001set "filename=fileweb" %设置环境变量%% 通过jsp -lv|findstr filename 查找满足条件的java进程 ^|中的^为win命令的转移符。 tokens 1-2取第一列和第二列。 %%i为第一列的赋值。 %%j为第二列的赋值%for /f "tokens=1-2" %%i in ('jps -lv^|findstr "%filename%"') do (原创 2020-11-24 18:54:44 · 2178 阅读 · 0 评论 -
jdk由1.8换为11后,执行java -version还是1.8
背景jdk切换版本后,java -version显示还是原版本。解决方案修改path中java_home的顺序。分析查看版本java -version2. 查看执行顺序 where java3. 查看pathecho %path%4. 将%java_home%/bin前移。5. 查看版本...原创 2020-11-21 11:34:42 · 3408 阅读 · 0 评论 -
管理员运行的cmd执行java -version提示Error: Registry key ‘Software\JavaSoft\Java Runtime
背景在个人账户执行cmd的java -version没问题。而以超级管理员执行java -verison提示如下Error: Registry key ‘Software\JavaSoft\Java Runtime Environment’\CurrentVersion’has value ‘1.8’, but ‘1.7’ is required.Error: could not find java.dllError: Could not find Java SE Runtime Environm原创 2020-11-21 11:13:13 · 531 阅读 · 0 评论 -
maven打包提示com.sun.beans.introspect.PropertyInfo文件找不到
背景自从安装jenkins打包后,基本上没有本地打包过。今天特殊情况,需要本地打包。确一直提示打包失败。提示 com.sun.beans.introspect.PropertyInfo文件找不到。分析去本地仓库查看,确实到sun目录下没有 beans目录。多次更新依赖,还是不行。因为maven版本问题,更新还是不行。后来想到sun为jdk相关的包。而因为现在jdk环境已经升级为jdk11。而以前打包时一直为jdk8。开始着手尝试。步骤echo %JAVA_HOME%# 临时更改环境变量的jdk版原创 2020-09-24 11:32:19 · 5099 阅读 · 1 评论 -
java的user.dir打印路径问题
背景因为涉及大批量访问,因此线上发布了两个包,分别在test/a和test/b文件夹下。那日志文件路径是借助user.dir变量。在a和b文件夹下直接启动没有问题。而在test文件夹下通过 ./*/start.sh脚本,则始终有一个启动不起来,提示日志文件被一个进程占用。结果分析user.dir 为当前用户的目录。即 输入启动命令 时的目录。验证1.创建dirtest的java项目,并且在Test.java类中打印user.dir的值。package dirtest;public class原创 2020-09-16 19:34:49 · 1134 阅读 · 0 评论 -
记微信小程序获取openid需要授权后才能获取的问题
业务背景最近需要用到小程序,跳转到我们自己的项目中。过程主要是借小程序作为入口,进入到我们的项目,期间需要存储小程序获取的用户信息。wx.login来获取openid。然后授权获取用户的个人信息。获取openid的过程:1.wx.login获取code认证码。2.根据code,wx.request调用本地服务器。3.本地服务器调用微信获取openid,session_key等。4.返回2调用的结果。问题问题出在2调用后,3已经执行了,但是小程序端始终没有获取到openid等信息的响应。每原创 2020-09-09 14:36:13 · 2174 阅读 · 0 评论 -
针对jsp中写java的lambda表达式编译失败
环境tomcat8.5jdk1.8运行在jsp中编写java代码,使用1.8新的特性lambda表达式。错误信息:Ladmbda expressions are allowed only at source level 1.8 or above。分析tomcat将jsp转换为java文件,然后在编译成class文件。发现生成了java文件,但是不能编译成class文件。而在默认情...原创 2019-11-20 11:26:27 · 1701 阅读 · 4 评论 -
jdk8多字段排序
背景最近针对代码改造,由于原有实体类是经过排序的,而改造后,懒得去xml增加排序。因此将排序放在java代码进行。实现public class Test { public static void main(String[] args) { List<Student> sList = new ArrayList<Student>(); IntStream.ra...原创 2019-10-22 18:57:35 · 1566 阅读 · 0 评论 -
java线程池
理解进程是操作系统的最小执行单元,而线程是进程的最小执行单元。每次创建线程,销毁线程都需要消耗资源以及时间。而能不能将创建好的线程都放到一个地方。每次使用直接取,不用了则放回。因此线程池便应运而生。线程池创建线程池有三种方法。ExecutorService executorService = Executors.newFixedThreadPool(2);//创建固定数量线程的线程池。e...原创 2019-09-25 23:00:19 · 115 阅读 · 0 评论 -
java.exe和javaw.exe区别
作用1.都是执行class文件。区别java适用于命令行和阻塞程序。javaw适用于gui和非阻塞程序。java是调用系统的System.console。只能通过ctrl+c可以关闭cmd命令框。而javaw调用的是java的gui。...原创 2019-04-08 19:12:36 · 418 阅读 · 0 评论 -
单例的四种实现方式
单例的实现方式:1.饿汉式:顾名思义,已加载类就会创建单例。2.懒汉式:顾名思义,只有使用单例的时候,才给加载3.静态内部类(推荐),通过再单例实现类中,增加静态内部类,在静态内部类中实现单例,与饿汉式不同的时,因为是内部静态类的静态属性,只有使用的时候才会创建单例。4.枚举实现代码://将要实现的单例的对象public class Man { public Man(...原创 2019-04-15 19:27:16 · 221 阅读 · 0 评论 -
jdk8关于map相关的操作
开发中遇到了Map对应的key和value需要互换的需求。以及按key进行默认排序重装,还有就是针对于key和value组装url连接。public class Test { public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>...原创 2019-04-17 18:49:55 · 1999 阅读 · 0 评论 -
tomcat访问html文件
路径:localhost:8080/index.html会从webapps下的ROOT文件下进行查找。还可以创建文件夹(demo),将index.html文件放入进去,进行访问。eg: localhost:8080/demo/index.html...原创 2019-04-24 19:22:11 · 9047 阅读 · 1 评论 -
springboot相关知识学习
1.定义原创 2019-05-14 18:31:16 · 146 阅读 · 0 评论 -
slf4j占位符的长度问题
背景原创 2019-05-24 19:03:55 · 1227 阅读 · 0 评论 -
maven构建多模块项目
一般项目都是讲一个完整的项目,按层分成多个项目。如何利用maven构建多模块项目呢?步骤:1.创建demo-parent项目。mvn archetype:generate -DgroupId=maven.test.mulmodel -DartifactId=demo-parent删除生成的src文件,以及修改pom文件。将packaging改为pom类型。因为该项目只用于继承。&l...原创 2019-05-16 20:01:23 · 189 阅读 · 0 评论 -
Arrays.asList新的理解
场景通过将数组转化为list,进行内容的日志记录时。当通过正则表达式读取日志,发现存在问题,后来发现生成的内容存在空格。原创 2019-05-22 19:37:29 · 402 阅读 · 0 评论 -
maven针对于多模块如何给指定项目构建
背景一般多个模块项目,只想打某个具体的包,而与其无关的则排除不做任何构建操作。eg:demo-web和demo-app是相互平行的关系,但是互相之间没有依赖。实践普通的打包方式mvn clean package -Dmaven.test.skip=true2. 指定模块打包方式# -pl参数,代表要构建的列表,格式 -pl 路径:包名,因为是projects list,如果...原创 2019-05-17 18:45:53 · 405 阅读 · 0 评论 -
集合contains和流anymatch的效率测试
背景需要从集合中,判定是否含有某个元素。存在两种方式:1.集合的contains,2.转化为流的anymatch进行比较。实践import java.util.List;import java.util.stream.Collectors;import java.util.stream.IntStream;import org.slf4j.Logger;import org.s...原创 2019-06-04 20:11:14 · 3875 阅读 · 0 评论 -
接口调试-eclipse小工具tcp/ip monitor
调试接口的时候,如何查看发送的内容以及相应状态呢?eclipse给提供了一个便利。tcp/ip monitor功能。1.打开tcp/ip monitor2.打开配置 3.配置 映射端口8088,项目所在服务器ip127.0.0.1,所占端口8080.4.点击ok后,点击start启动。 5.查看内容。访问http://localhost:8088/httpte...原创 2019-01-17 18:41:42 · 735 阅读 · 0 评论
分享