
java人生
senwei.zhang
Keep looking until you find it
展开
-
Aspose 设置单元格下拉选择框(Java代码实现)
java实现aspose生成Excel单元格下拉选择框原创 2023-05-04 18:36:09 · 600 阅读 · 1 评论 -
基于git 提交记录打标签
git tag原创 2022-10-09 10:12:34 · 715 阅读 · 0 评论 -
maven项目配置私服
1. 首先在windows 或者在Linux服务器中安装并运行nexus私服。2. 使用私服就是将项目jar 上传到私服中,提供给别的项目使用,那么就需要在项目中和maven的配置文件中配置文件3. 项目中配置私服的仓库地址 <distributionManagement> <repository> <id>maven-releases</id> <name>Nexus原创 2022-05-02 16:37:22 · 7960 阅读 · 0 评论 -
BooleanLock
package com.thread.test.booleanlock;import java.util.List;import java.util.concurrent.TimeoutException;public interface Lock { void lock() throws InterruptedException; void lock(long mills) throws InterruptedException, TimeoutException; v.原创 2021-02-25 23:36:39 · 294 阅读 · 0 评论 -
Map遍历的三种方式
Map遍历的三种方式import java.util.HashMap;import java.util.Iterator;import java.util.Map;public class Test { public static void main(String[] args) { Map<String,Object> map = new HashMap<>(); map.put("a", "this is a");原创 2021-02-23 09:14:51 · 409 阅读 · 0 评论 -
自定义显式锁BooleanLock
今天看到Java高并发变成详解一书中的自定义显式锁,复制代码留痕public interface Lock { void lock() throws InterruptedException; void lock(long mills) throws InterruptedException, TimeoutException; void unlock(); List<Thread> getBooleanThreads();}package com.thr原创 2021-01-17 21:09:47 · 364 阅读 · 0 评论 -
Zipkin server jar包下载地址
ZipKin是Twitter开源的分布式跟踪系统,主要功能是收集系统的时序数据,从而追踪微服务架构的系统延时等问题。Zipkin还提供了非常友好的界面,来帮助分析追踪数据。Zipkin 的服务端,在使用 Spring Boot 2.x 版本后,官方就不推荐自行定制编译了,反而是直接提供了编译好的 jar 包来给我们使用jar包的下载地址:https://dl.bintray.com/openzipkin/maven/io/zipkin/java/zipkin-server/...原创 2020-08-21 21:11:47 · 3967 阅读 · 0 评论 -
将本地的项目推送到远程gitee仓库
将本地的项目推送到远程gitee仓库 本地新建的Java项目,想推送到远程gitee仓库或者git仓库,你需要两个条件 1. 本地已存在的项目 2. 远程仓库(没有则新建)现在演示本地推送到gitee仓库的git命令 1. 登录gitee账号,新建一个仓库(强烈建议远程仓库和本地仓库同名),创建完成后会生成了远程仓库地址 2.进入本地项目的文件目录,使用如下命令 1.git init 将本地项目初始化为一个本地仓库 2. git add . 将...原创 2020-08-13 21:39:28 · 1303 阅读 · 0 评论 -
spring集成activiti工作流引擎
spring集成activiti工作流引擎1. Activiti工作流了解2. Spring集成Activiti1. Activiti工作流了解2. Spring集成Activiti原创 2020-08-13 14:24:19 · 391 阅读 · 0 评论 -
idea优化配置(Settings设置)
idea下载安装后,需要对该软件进行一些优化配置,可以让你使用idea更加得心应手,一下的的优化配置是我个人的习惯,仅供参考。1,调整界面字体和编辑区字体点击File---settings进入idea的配置页面Appearance中设置的字体是编辑器的字体以及大小,还有主题,主题这里选择Darcula,黑色的装比感十足,而且比白色的要护眼,点击Apply接着设置编辑页面的字体。这里设置编辑区域的字体2.取消拼写检查Settings-Editor-Inspection,取消Spelli原创 2020-07-17 20:56:30 · 2413 阅读 · 0 评论 -
前端ajax传递数组到后台springmvc
前端ajax传递数组到后台springmvc前端代码: $.ajax({ url: '/role/assignPerms', type: 'post', data: {'ids': checked}, traditional:true, success: function (data) { } })前端代码传到后台需要加traditional:true,原创 2020-06-18 11:06:21 · 407 阅读 · 0 评论 -
java 代码实现异步处理任务
public class JavaAnSycTest { public static void main(String[] args) { ExecutorService executor = Executors.newFixedThreadPool(2); CompletableFuture<String> future = Comple...转载 2020-04-14 15:03:29 · 1750 阅读 · 0 评论 -
idea maven 下载源码出现:Cannot download sources Sources not found for
下载源码出现:Decompiled .class file ,右下角出现Cannot download sources Sources not found for: xxx解决办法:在对应项目pom.xml所在目录下执行以下命令:mvn dependency:resolve -Dclassifier=sources执行过程截图:选择对应的源码包:即解决问题...转载 2020-03-29 00:06:51 · 2581 阅读 · 0 评论 -
一个优秀的程序员如何在公司更好的生存(代码写得好,bug少,看起来就像一个闲人)
代码写得好,bug少,看起来就像一个闲人 注释多,代码清晰,任何人接手都非常方便,看起来谁都可以替代 代码写得烂,每天风风火火改bug,各种救火,解决各种线上重大问题,于是顺理成章成为公司亮眼人才 代码乱的只有自己能看懂,公司不可替代的重要人才救火成员VS防火程序员,你是哪种?...原创 2020-03-27 22:55:26 · 1277 阅读 · 0 评论 -
HashTable遍历
HashTable是基于哈希表实现的,是线程安全的类。,可以用于多线程环境。 Hashtable hashtable = new Hashtable(); hashtable.put(1, "今天"); hashtable.put(2, "天气"); hashtable.put(3, "不怎么好"); //遍历K...原创 2020-03-26 16:01:21 · 668 阅读 · 2 评论 -
原生的JDBC去访问数据库
直入主题:通过JDBC一般有如下几个步骤:加载JDBC的驱动器,将数据库的JDBC驱动加载到上classpath中(相当于引入依赖) 加载JDBC驱动,将它注册到驱动管理器DriverManager中,一般使用Class.forName(String driverName) 建立数据库连接,获取Connection对象 建立Statement对象或者PreparedStatement...原创 2020-03-25 20:08:10 · 358 阅读 · 0 评论 -
JSP的9个内置对象和6个基本动作
一:Jsp中内置对象又称为隐含对象,指的是不声明就可以直接使用的成员变量。Jsp一共提供了九个内置对象:request,response,pageContext,session,application,out,config,page,exception。request 客户端请求,此请求包含来自POST/GET请求的参数。客户端的请求信息被封装在request对象中,通过它才能了...原创 2020-03-25 19:50:07 · 492 阅读 · 0 评论 -
Executing an update/delete query] with root cause jpa执行update语句报错
springbot继承jpa执行update语句。报错Executing an update/delete query] with root cause 。。。。原因是调用该Dao的service方法,没有加事务注解。添加事务注解:@Transactional 即可解决问题。...原创 2020-03-25 17:28:16 · 1083 阅读 · 0 评论 -
Springboot + jpa实现分页条件查询
springboot +jpa的技术框架,可以实现基于面向对象的orm,即不写sql语句即完成查询。springboot框架的搭建这里不再赘述。直接看代码:(通过jpa的Example实现条件分页查询) @Autowired private ItemDao itemDao; public Page<Item> getItemListByPage(Int...原创 2020-03-23 08:40:12 · 2838 阅读 · 0 评论 -
java运算符的优先级
优先级 运算符 综合性 1 . () [ ] 2 +(正) -(负) ++ -- ~ ! 3 * / % 4 +(加) -(减) 5 << >> (无符号右移) ...原创 2020-03-23 08:26:06 · 320 阅读 · 0 评论 -
java中的作用域
在java中,成员变量主要有4中作用域,他们区别如下表:作用域可见性 当前类 同一package 子类 其他package public ✔ ✔ ✔ ✔ private ✔ ✘ ✘ ✘ protected ✔ ✔ ✔ ✘ default ✔ ✔ ✘ ✘ p...原创 2020-03-23 08:14:56 · 665 阅读 · 0 评论 -
截取一个字符串的函数,输入为一个字符串和字节数,输出为为按字节截取的字符串,但是要保证汉字不会被截半个...
看面试程序时候看到一个这样的题目,自己用最基础的方式实现了一下。题目:截取一个字符串的函数,输入为一个字符串和字节数,输出为为按字节截取的字符串,但是要保证汉字不会被截半个,如 “我ABC” 4,应该被截为“我AB”:输入“我ABC汉DEF”,应该输出为“我ABC”而不是“我ABC”+汉的半个。题解: /** * 截取字符串方法 * @param s...原创 2020-03-20 18:27:41 · 470 阅读 · 0 评论 -
判断一个字符或者字符串是否为中文字符
在Java语言中,默认使用Unicode编码方式,每个字符占用两个字节,因此可以用来存储中文。虽然String是由char所组成的,但是它采用了更加灵活的方式来存储,即英文占用一个字符,中文占用两个字符,采用这种存储的方式可以减少所需要的内存,提高存储效率。1. 判断字符串中是否包含中文字符(注意在UTF-8环境下和GBK环境下,中文 占的字节数不一样,在UTF-8环境下中文占三个字节,而在G...原创 2020-03-20 16:23:02 · 9494 阅读 · 0 评论 -
存储过程和函数的区别和联系?
什么是存储过程?sql语句在执行时候需要编译,然后再被执行,在大型的数据库系统中,为了提高效率,将为了完成特定功能的sql语句集进行编译优化后,存储在数据库服务器中,用户通过指定存储过程的名字来调用执行。存储过程简单的来说,就是为了以后的使用而保存的一条或者多条的SQL语句集合,可将其视为批文件。 使用存储过程可以增强sql语言的功能和灵活性,由于可以使用流程控制语句编写存储过程,有很强的灵...原创 2020-03-17 20:28:36 · 827 阅读 · 0 评论 -
Webservice client客户端的实现方式---axis调用方式
1.添加maven依赖 <dependencies> <!-- https://mvnrepository.com/artifact/org.apache.cxf/cxf-core --> <dependency> <groupId>org.apache.cxf</group...原创 2020-03-15 13:31:07 · 585 阅读 · 0 评论 -
Java中和encodeURI()功能相同的转码类
当你看到这里的时候,我不知道你是不是已经看了很多没用的博客,什么URLEncoder.encode()方法,啥的,注意:Java 中的URLEncoder.encode()方法和JS中的encodeURI()完全划不上等号!我的问题:后台从某个接口中查询到一个字段,字段的填充值为一长串url,并且其中还带着中文,这个时候前端拿到url直接取访问页面,在谷歌等浏览器上是正常的,但是如果到了IE,...原创 2020-03-15 01:13:59 · 3570 阅读 · 1 评论 -
properties获取配置文件中的中文乱码解决
public static String getValueByCharset(String key, String charset){ Properties properties = new Properties(); InputStream is = PropertiesUtil.class.getResourceAsStream("/config.proper...原创 2020-03-14 20:21:34 · 976 阅读 · 0 评论 -
Class类中的forName0()方法为什么没有实现?
Class类中的方法forName0没有实现?原因在于该方法的前边使用native 关键字修饰。使用关键字修饰意思就是这个这个方法是原生函数,底层是C/C++语言实现的,并且编译成了DLL文件,这个java方法只是调用而已,这些函数的实现体都在DDL文件中写着,所以JDK源码中没有,所以你就看不见,也没有实现。...原创 2019-07-28 01:04:58 · 1835 阅读 · 0 评论 -
Java逗号相连的字符串转为List
List和String字符串互转List-------->String原创 2020-03-11 22:36:16 · 546 阅读 · 0 评论 -
Java读取配置文件的PropertiesUtil工具类
Java 中读取配置文件的工具类封装:public class PropertiesUtil { public static Properties prop = null; static { prop = new Properties(); try { File shopxxPropertiesFile = R...原创 2020-03-11 22:27:53 · 595 阅读 · 0 评论 -
封装HttpClient工具类
添加依赖: <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.3</ve...原创 2020-03-11 22:24:51 · 526 阅读 · 0 评论 -
maven添加Oracle 依赖,将Oracle的依赖jar包打成依赖引入到maven
<!--Oracle数据库--> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.4...原创 2020-03-09 11:51:35 · 1547 阅读 · 0 评论 -
面向对象有哪些特征?
面向对象的特征包括封装、继承、多态和抽象。封装:将客观的事物抽象成类,每个类对自身的数据和方法实行保护。类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。 继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确的表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的的特性,新类称为原始类的派生类,而原始类称为新类...原创 2020-03-04 22:25:08 · 1866 阅读 · 0 评论 -
IDEA中进行Resin的断点调试
1. 打开resin.conf配置文件,找到The JVM arguments 参数位置,添加或者修改如下: <!-- - The JVM arguments --> <jvm-arg>-Xmx1024m</jvm-arg> <jvm-arg>-Xss1m</jvm-arg...原创 2020-03-04 10:29:02 · 835 阅读 · 0 评论 -
Java中类的变量类型有几种
在Java语言中,变量的类型主要分为3种:成员变量,静态变量和局部变量。类的成员变量的作用范围与类的实例化对象的作用范围相同,当类被实例化,成员变量就会在内存中分配空间并且初始化,知道这个被实例化对象的生命周期结束,成员变量的生命周期才结束。 静态变量也也称作为全局变量,它被static修饰符修饰,与成员变量不同的是,静态变量不依赖于特定的对象实例,而是被所有的实例共享,只要一个类被加载,J...原创 2020-03-03 22:38:16 · 3476 阅读 · 0 评论 -
浅复制和深复制有什么区别
浅复制:被复制对象的所有变量都含有原来对象的相同值,而所有对其他对象的引用仍然指向原来的对象。换句话说就是,浅复制至复制他所考虑的对象(也就是基本数据类型),不复制他所引用的对象(其他对象)。 深复制:被复制对象的所有变量都含有与原来对象相同的值,那些引用其他对象的变量指向复制的新对象,而不再是原有的那些被引用的对象,换而言之,深复制吧复制的对象所引用的对象都复制了一遍。深复制和浅复制都是由c...原创 2020-03-03 22:30:21 · 2696 阅读 · 0 评论 -
线程池执行多线程案例
使用线程池执行多线程需要如下几个条件首先是一个线程池,线程池包含一些初始化数据,包含队列大小,核心线程数,最大线程数。然后是一个实现了 runnable的任务,将该任务当如到线程池中进行执行。线程池配置:public class ThreadPoolManager<T> { /** * 根据cpu的数量动态的配置核心线程数和最大线程数 ...原创 2020-01-14 09:04:58 · 937 阅读 · 0 评论 -
给字符转将双引号
给一个字符串变量加双引号 String str = "字符串"; str = "\"" +str+ "\""; System.out.println(str);输出的结果为:"字符串"原创 2020-01-14 08:58:33 · 604 阅读 · 0 评论 -
手机扫码登陆网页的原理实现
微信,淘宝等许多应用通过手机扫码登陆,是如何实现的?这里以微信页面为例:浏览器请求微信服务端,微信的server端返回给浏览器一个唯一的UID,前端将其封装到一个二维码中,并且发一个长链接请求携带这个唯一UID每隔1-2秒去请求微信server端的数据。当使用手机扫码的时候,app端获取这个uid,并且将这个uid和当前app登陆的用户进行绑定,发送到Server端。此时长链接再次...原创 2020-01-06 16:12:11 · 740 阅读 · 0 评论 -
Idea新建项目上传(推送)到github上
准备: 已经有github账号,电脑上安装了git客户端,idea 编辑器。已经准备好的项目。1. 已经准备好的项目2. 将本地项目创建成为一个git仓库3. 使该项目的空间成为一个git仓库后,可以发现,该项目已经加入了版本控制,可以在版本控制中发现,该项目的文件全部变为可提交状态4. 右键项目点击Git将代码提交到本地暂存区。5. 将该项目上传到g...原创 2020-01-03 11:49:53 · 1072 阅读 · 0 评论