java基础
文章平均质量分 56
java基础
zane197
这个作者很懒,什么都没留下…
展开
-
java8 Consumer supplier predicate function 简单使用示例
java8 Consumer基本使用Java8之后提供了consumer接口,Consumer字面意思是消费者,这个接口里面只有一个accept方法,主要的功能是消费输入的数据,无返回。主要的几种使用方式有以下几种: @Test public void testConsumer() { //1. 直接new一个consumer对象 ,实现里面的accept方法 Consumer consumer = new Consumer() { @O原创 2021-09-27 15:24:38 · 485 阅读 · 0 评论 -
CSV文件读写操作
CSV文件读写操作CSVOperationUtilLinkIDCSVOperationUtilimport com.alibaba.fastjson.JSON;import com.opencsv.CSVReader;import com.opencsv.CSVReaderBuilder;import com.opencsv.CSVWriter;import com.opencsv.bean.CsvToBean;import com.opencsv.bean.CsvToBeanBuilder;原创 2021-08-10 11:17:14 · 621 阅读 · 0 评论 -
Java异常处理思路
Java异常处理思路一、错误的异常处理示例二、异常处理思路三、checked和unchecked异常四、异常码和异常类我自己在刚开始写代码的时候,总是有着这样的疑惑,想着请求第三方接口,或者是重要的处理步骤万一出错了,是不是得把异常处理一下。但是在看代码时发现一个现象,项目中的异常主要处理形式如下所示,代码中基本没有try-catch的异常处理语句,大部分的异常直接向上层抛出。关于异常处理自己也查了一些资料和师兄讨论过,所以专门学习总结一下项目中关于异常处理思路。public void methodB(原创 2021-08-08 13:50:52 · 525 阅读 · 0 评论 -
int[]与list<Integer>互转
/** * int[]转list<integer> */ List<Integer> list = Arrays.stream(nums).boxed().collect(Collectors.toList()); nums = list.stream().mapToInt(Integer::valueOf).toArray(); /*list转int[]*/ int[] intArr1 = list.stream().ma..原创 2020-09-01 16:51:11 · 654 阅读 · 0 评论 -
java 基础知识
Java基础知识对比 Hashtable、HashMap、TreeMap 有什么不同?如何保证集合是线程安全的? ConcurrentHashMap如何实现高效地线程安全?Java 提供了哪些 IO 方式? NIO 如何实现多路复用?java 文件拷贝的机制谈谈接口和抽象类有什么区别面向对象程序设计的特性面向对象编程的设计原则AtomicInteger 底层实现原理是什么?类加载的过程?双亲委派模型?有哪些方法可以在运行时动态生成一个 Java 类?实现一个简单的动态代理,都要做什么?字节码操纵技术,除了原创 2020-07-29 12:04:19 · 568 阅读 · 0 评论 -
缓存更新策略
缓存的更新策略一般来说,缓存有以下三种模式:Cache Aside 更新模式 :同时更新缓存和数据库Read/Write Through 更新模式 :先更新缓存,缓存负责同步更新数据库Write Behind Caching 更新模式: 先更新缓存,缓存定时异步更新数据库Cache Aside更新模式失效:应用程序先从 cache 取数据,没有得到,则从数据库中取数据,成功后,放到缓存中。命中:应用程序从 cache 中取数据,取到后返回。更新:先把数据存到数据库中,成功后,再去删除缓原创 2020-08-07 14:30:36 · 2010 阅读 · 0 评论 -
一致性hash算法理解
一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简 单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正得到应用。一致性hash算法提出了在动态变化的Cache环境中,判定哈希算法好坏的四个定义:1、平衡性(Balance):平衡性是指哈希的结果能够尽可能分布到所有的缓冲中去,这样可以使得所有的缓冲空间都得到利用。很多哈希算法都能够满足这一条件转载 2020-08-07 12:08:51 · 260 阅读 · 0 评论 -
背包问题基础
0-1 背包问题import java.util.Scanner;public class ZeroOne {/** * 0 1 背包问题 * V[]表示物品的体积,W[]表示物体的价值。 * 采用动态规划来做 * 使用dp[i][j] 表示前 i 件物品恰放入一个容量为 j 的背包可以获得的最大价值。。dp[0-n][0-m] * 主要分为两种情况: * 1. 如果不装入第i个物品的时候,那么问题就转化为“前 i − 1 件物品放入容量为 j 的背包中”:dp[i][j] = dp[i-原创 2020-08-02 15:21:17 · 169 阅读 · 0 评论 -
Unicode,UTF-8,UTF-16,UTF-32简单总结
Unicode是一种字符集,UTF-8,UTF-16,UTF-32是Unicode的三种不同的编码方式。Unicode编码定义了这个世界上几乎所有字符的数字表示,而且Unicode还兼容了很多老版本的编码规范,例如 ASCII码。在Unicode中为每个字符定义了一串唯一的ID来确定这个字符。这串数字在Unicode中被称作是码点。UTF是 Unicode Transformation Formats 的缩写,Unicode转换格式是为了解决[码点]在计算机存储方式而设计的。[码点]经过映射后得到的二进原创 2020-07-30 10:50:52 · 804 阅读 · 0 评论 -
java 面试准备(基础)
java 基础篇谈谈对java平台的理解?java是解释执行的,这句话正确吗?请对比Exception和error,另外,运行时异常与一般异常有什么区别?ClassNotFoundException和NoClassDefFoundError的区别谈谈对java平台的理解?java是解释执行的,这句话正确吗?java 本身是一种面向对象的语言,主要有两个显著特点,第一就是所谓的write on...原创 2020-03-22 22:14:15 · 240 阅读 · 0 评论 -
java 二叉树操作
节点的dat是public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; }} /** * 使用递归来创建二叉树 */ public TreeNode createBinaryTre...原创 2020-02-29 13:55:28 · 130 阅读 · 0 评论 -
CentOS7.3系统Tomcat无法正常启动解决(8005端口不能启动)
在阿里云CentOS环境中配置tomcat服务器,结果使用端口查看命令netstat -tunlp查看tomcat的8005端口半天都起不来(tomcat的关闭端口),这个端口起不来就无法访问tomcat和关闭tomcat。杀进程或者shutdown.sh永远失败,重启服务器也不行。解决办法:需要修改文件:$JAVA_HOME/jre/lib/security/java.security中的配...原创 2020-01-14 14:31:57 · 834 阅读 · 0 评论 -
centos7设置tomcat自启动
在tomcat 的bin目录下加上下面两行代码:export JAVA_HOME=/usr/local/java/jdk1.8.0_11export JRE_HOME=${JAVA_HOME}/jre在/usr/lib/systemd/system目录下增加tomcat9.service文件,内容如下[Unit]Description=TomcatAfter=syslog.t...原创 2020-01-13 18:49:02 · 330 阅读 · 0 评论 -
深入理解Java的接口和抽象类
深入理解Java的接口和抽象类一、抽象类在了解抽象类之前,先来了解一下抽象方法。抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。抽象方法的声明格式为:abstract void fun();抽象方法必须用abstract关键字进行修饰。如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。因为抽象类中含有无具体实现的方法,所以不能用抽象类创建对...原创 2019-10-14 13:44:48 · 938 阅读 · 0 评论 -
java PoI 导出excel到本地
package cn.zanezz.excel;import org.apache.poi.hssf.usermodel.*;import org.apache.poi.hssf.util.HSSFColor;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOEx...转载 2019-09-08 10:42:13 · 4394 阅读 · 0 评论 -
log4j使用教程
log4j使用教程1. log4j配置构成日志信息优先级(logger level): og4j日志分为7个等级:ALL、DEBUG、INFO、WARN、ERROR、FATAL、OFF,从左到右等级由低到高,分等级是为了设置日志输出的门槛。日志信息的输出目的地(appender): 日志信息的输出目的地指定了日志将打印到控制台还是文件中;日志信息的输出格式(layout)。 ...原创 2018-09-15 16:23:12 · 300 阅读 · 0 评论 -
java json 对象操作
java json 对象操作JSONObject 类必须引用的jar包commons-beanutils-1.7.0.jarcommons-collections-3.1.jarcommons-lang-2.5.jarcommons-logging.jarezmorph-1.0.3.jarjson-lib-2.1-jdk15.jarjava 操作json需要引入以下...原创 2018-09-15 20:38:17 · 525 阅读 · 0 评论 -
jquery $.post 接收返回值及java中去除json中的斜杠
jquery $.post 接收返回值及java中去除json中的斜杠jquery $.post回调函数中赋值问题而某些时候我们要用callback回调函数处理完以后的返回值,常规的思路是定义一个全局变量来接收返回值,然后在$post的外面,函数的里面返回即可.在这种方法是行不通的。因为jquery 中的$.get和$.post 都是默认是使用异步方式传输的,所以发出请求后还没等一般处理程序处...原创 2018-10-19 10:42:50 · 1367 阅读 · 0 评论 -
java 工程中Servlet 和 springMVC共存
java 工程中Servlet 和 springMVC共存师兄交给我的一个地图demo,只是简单的使用了servlet,让我进行功能扩展时需要添加的功能较多,且后面要与另一个使用了springMVC的项目进行融合,但是原来的servlet中必要的方法比较多,不想使用springMVC对这些方法进行重写,所以对web.xml 进行了一些简单的配置,使servlet和springMVC能够在同一个...原创 2018-11-01 14:11:49 · 2307 阅读 · 1 评论 -
httpclient 带参数 post get
httpclient 带参数 post get//httpclient 和httpcore的maven依赖包 <dependencies> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</art...原创 2018-11-03 20:23:33 · 1402 阅读 · 0 评论 -
properties 文件的加载,修改保存
properties 文件的加载,修改保存properties 文件的加载Properties prop = new Properties();prop.load(this.getClass().getResourceAsStream("/conf.properties"));prop.get("KEY");properties 文件的修改保存JSONObject jsonO...原创 2018-11-03 20:24:35 · 1442 阅读 · 0 评论 -
JSON字符串和java对象的互转【json-lib】《转》
https://www.cnblogs.com/teach/p/5791029.html转载 2018-11-02 11:58:55 · 190 阅读 · 0 评论 -
Set ,HashSet,TreeSet和LinkedHashSet的区别
Set ,HashSet,TreeSet和LinkedHashSet的区别Set接口Set不允许包含相同的元素,如果试图把两个相同元素加入同一个集合中,add方法返回false。Set判断两个对象相同不是使用==运算符,而是根据equals方法。也就是说,只要两个对象用equals方法比较返回true,Set就不会接受这两个对象。HashSetHashSet中不能...原创 2018-12-03 13:03:51 · 449 阅读 · 3 评论 -
java8 lambda表达式和stream
java8 lambda表达式1. Lambda表达式的语法基本语法:(parameters) -> expression或(parameters) ->{ statements; }// 1. 不需要参数,返回值为 5() -> 5// 2. 接收一个参数(数字类型),返回其2倍的值x -> 2 * x// 3. 接受2个参数(数字),并返回他们的差...转载 2018-12-05 14:45:52 · 164 阅读 · 0 评论 -
Java8函数式接口Function、Consumer、Predicate、Supplier的使用
Java8函数式接口Function、Consumer、Predicate、Supplier1. java8中函数接口的种类:2. function型函数式接口Function接口 接受一个输入参数T,返回一个结果R。function的源码@FunctionalInterfacepublic interface Function<T, R> { // 接受输入参数...转载 2018-12-05 16:51:24 · 971 阅读 · 0 评论 -
shiro 依赖
<dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-all</artifactId> <version>${shiro.version}</version></dependency><!-- h...原创 2019-07-11 16:55:19 · 1717 阅读 · 0 评论 -
获取properties文件中的所有配置
public class GetProps { private static GetProps instance = new GetProps(); private final Logger logger = LoggerFactory.getLogger(this.getClass()); private GetProps() { } /** ...原创 2019-08-26 17:08:46 · 1742 阅读 · 0 评论 -
java中== 和equals的区别
java中== 和equals的区别java中的数据类型可分为两类:基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean。 基本数据类型的比较,应使用==来比较他们的值数据类型(类): 当这些复合数据类型使用== 来进行比较时,==是比较的他们存放在内存的地址(所以除非是同一个new出来的对象,他们的比较...原创 2018-09-08 12:02:59 · 114 阅读 · 0 评论