java
java基础,编程
殇莫忆
历尽千帆,归来仍是少年
展开
-
maven 安装以及环境变量配置
1、下载安装包在Maven官网下载最新版的安装包:http://maven.apache.org/download.cgi2、解压安装包3、配置Maven环境变量MAVEN_HOME PATH 中%MAVEN_HOME%\bin;4、验证在命令行执行mvn –version,如果显示下图所示信息,说明maven已经安装成功5、修改IDEA...原创 2019-03-07 14:46:51 · 2784 阅读 · 0 评论 -
TCP和UDP的优缺点及区别
1、TCP与UDP区别总结:1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。3、U...转载 2019-02-25 10:33:26 · 464 阅读 · 0 评论 -
@GetMapping(value="/") , "/" 可加可不加 ,是不是一样的
@GetMapping(value = "/user") 和 @GetMapping(value = "user") 的区别1、带上 “/” 是绝对路径,不带 “/” 是相对路径。2、这个"/" 其实起到连接作用, 如果只是单纯的一个地址,写不写 “/” 都可以。如果控制器最外层有一层映射地址,那么方法上面的RequestMapping 的"/" 其实就起到分割作用...原创 2019-02-21 14:29:04 · 15715 阅读 · 0 评论 -
http缺省的请求方法
缺省 -- 系统的默认状态,意思与“默认相同” 。缺省是一种计算机术语,指在无决策者干预情况下,对于决策或应用软件、计算机程序的系统参数的自动选择。默认选项的设计可以在用户不须决策的状况下就可以基础地使用上述的软件与程序。“缺省”最初来源于计算机英文文档中的单词"default","default”有很多意思:违约、缺省、拖欠、默认,由于当时计算机方面的翻译水平不高,于是就把这个词直译成了...转载 2019-02-25 10:17:17 · 3689 阅读 · 0 评论 -
一张图搞清楚Java异常机制
下面是Java异常类的组织结构,红色区域的异常类表示是程序需要显示捕捉或者抛出的。ThrowableThrowable是Java异常的顶级类,所有的异常都继承于这个类。Error,Exception是异常类的两个大分类。ErrorError是非程序异常,即程序不能捕获的异常,一般是编译或者系统性的错误,如OutOfMemorry内存溢出异常等。ExceptionEx...转载 2019-02-15 10:13:49 · 234 阅读 · 0 评论 -
避免空指针的 5 个案例!
什么是空指针?当一个变量的值为 null 时,在 Java 里面表示一个不存在的空对象,没有实际内容,没有给它分配内存,null 也是对象成员变量的默认值。所以,一个对象如果没有进行初始化操作,这时候,如果你调用这个对象的方法或者变量,就会出现空指针异常。如下面示例会发生空指针异常:Object object = null;String string = object.toSt...转载 2019-02-15 10:11:53 · 738 阅读 · 0 评论 -
参数验证 @Validated 和 @Valid 的区别
Spring Validation验证框架对参数的验证机制提供了@Validated(Spring's JSR-303 规范,是标准 JSR-303 的一个变种),javax提供了@Valid(标准JSR-303规范),配合 BindingResult 可以直接提供参数验证结果。其中对于字段的特定验证注解比如 @NotNull 等网上到处都有,这里不详述在检验 Controller 的入参是否...转载 2019-01-21 10:39:34 · 623 阅读 · 0 评论 -
StringUtils工具类常用方法
isEmpty(String str) 是否为空,空格字符为false isNotEmpty(String str) 是否为非空,空格字符为true isBlank(String str) 是否为空,空格字符为true isNotBlank(String str) 是否为非空,空格字符为false trim(String str)去除字符串两端的控制符,空字符串、null 返回 null...转载 2019-01-10 14:58:22 · 198 阅读 · 0 评论 -
分布式、高并发、多线程,到底有什么区别?
当提起这三个词的时候,是不是很多人都认为分布式=高并发=多线程?当面试官问到高并发系统可以采用哪些手段来解决,或者被问到分布式系统如何解决一致性的问题,是不是一脸懵逼?确实,在一开始接触的时候,不少人都会将三者混淆,误以为所谓的分布式高并发的系统就是能同时供海量用户访问,而采用多线程手段不就是可以提供系统的并发能力吗?实际上,他们三个总是相伴而生,但侧重点又有不同。什么是分布式?分...转载 2019-01-09 18:15:17 · 259 阅读 · 0 评论 -
JDK1.8 Lambda 表达式的学习
1、Lambda 表达式Lambda 表达式(也称为闭包)是整个Java8发行版本中最受期待的在Java语言层面上的改变,Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中),或者把代码看成数据,Lambda 表达式用于简化Java中接口式的匿名内部类,被称为函数式接口的概念,函数式接口就是一个具有一个方法的普通接口,像这样的接口,可以被隐式转换为Lambda 表达式。...原创 2018-12-08 11:39:34 · 1034 阅读 · 0 评论 -
hibernate 是否支持join 语句
hibernate 只支持 join 语句 原生sql就是sql-client的语法原创 2018-12-03 16:09:41 · 620 阅读 · 0 评论 -
java 基础 -- 枚举类的简介
自定义枚举类:/** * @Date: 2018/12/3 11:18 * @Description: 自定义枚举类 */public class testEnum { public static void main(String args[]) { Season spring = Season.SPRING; System.out.pri...原创 2018-12-03 14:31:42 · 166 阅读 · 0 评论 -
@NotBlank、@NotNull、@NotEmpty三者之间的区别
1.@NotNull:不能为null,但可以为空字符串2.@NotEmpty:不能为null,并且长度必须大于03.@NotBlank:只能作用在String上,不能为null,而且调用trim()后,长度必须大于0...转载 2018-12-03 12:00:47 · 401 阅读 · 0 评论 -
FetchType.LAZY和FetchType.EAGER什么区别
FetchType.LAZY:懒加载,加载一个实体时,定义懒加载的属性不会马上从数据库中加载FetchType.EAGER:急加载,加载一个实体时,定义急加载的属性会立即从数据库中加载...转载 2018-12-03 12:02:42 · 403 阅读 · 0 评论 -
HashMap和Hashtable的区别
HashMap和Hashtable都实现了Map 接口,但是具体要使用哪一个,需要先了解它们存在怎样的区别,然后再根据具体的情况做出选择。1、线程安全性 首先,HashMap是非synchronized的,而Hashtable是synchronized的。这说明Hashtable是线程安全的,而且多个线程可以共享一个Hashtable;而HashMap如果没有正确的同步的话,是不能被...转载 2018-12-03 13:37:44 · 5415 阅读 · 0 评论 -
java integer 和 int 的区别
Integer 类和 int 的区别 ①、Integer 是 int 包装类,int 是八大基本数据类型之一(byte,char,short,int,long,float,double,boolean) ②、Integer 是类,默认值为null,int是基本数据类型,默认值为0; ③、Integer 表示的是对象,用一个引用指向这个对象,而int是基本数据类型,直接存储数值。...原创 2018-11-29 16:24:24 · 1260 阅读 · 0 评论 -
JSON 详细的技术报告
一 、各个JSON技术的简介和优劣1.json-libjson-lib最开始的也是应用最广泛的json解析工具,json-lib 不好的地方确实是依赖于很多第三方包,包括commons-beanutils.jar,commons-collections-3.2.jar,commons-lang-2.6.jar,commons-logging-1.1.1.jar,ezmorph-1.0...转载 2018-10-10 16:26:38 · 354 阅读 · 0 评论 -
一次性搞清楚equals和hashCode
前言在程序设计中,有很多的“公约”,遵守约定去实现你的代码,会让你避开很多坑,这些公约是前人总结出来的设计规范。Object类是Java中的万类之祖,其中,equals和hashCode是2个非常重要的方法。这2个方法总是被人放在一起讨论。最近在看集合框架,为了打基础,就决定把一些细枝末节清理掉。一次性搞清楚!下面开始剖析。public boolean equals(Obje...转载 2018-09-30 11:40:58 · 512 阅读 · 0 评论 -
sleep( ) 和 wait( ) 的这 5 个区别
sleep(休眠) 和 wait(等待) 方法是 Java 多线程中常用的两个方法,它们有什么区别及一些该注意的地方有哪些呢?下面给大家一一分解。区别1:使用限制使用 sleep 方法可以让让当前线程休眠,时间一到当前线程继续往下执行,在任何地方都能使用,但需要捕获 InterruptedException 异常。try { Thread.sleep(3000L);} ca...转载 2018-09-19 09:04:13 · 879 阅读 · 0 评论 -
Date 类型转换成时间戳类型Timestamp
一共有3中方式可以实现@DateTimeFormat(pattern ="yyyy-MM-dd HH:mm:ss")@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")@Temporal(TemporalType.TIMESTAMP)private Date creat_time;原创 2018-09-18 17:51:25 · 8339 阅读 · 0 评论 -
可能是全网把 ZooKeeper 概念讲的最清楚的一篇文章
目录前言一 什么是 ZooKeeperZooKeeper 的由来1.1 ZooKeeper 概览1.2 结合个人使用情况的讲一下 ZooKeeper二 关于 ZooKeeper 的一些重要概念2.1 重要概念总结2.2 会话(Session)2.3 Znode2.4 版本2.5 Watcher2.6 ACL三 ZooKeeper 特点四 Z...转载 2018-09-17 13:40:38 · 567 阅读 · 0 评论 -
用Java输出语句1-0.9等于0.1
第一种方法:System.out.printf("%.1f",1.0-0.9);第二种方法: System.out.println(new BigDecimal("1").subtract(new BigDecimal("0.9")));报错你调用 divide 时 四舍五入即可,无线循环小数,计算机要如何处理?所以,divide 方法有多个参数,调用多个参数方...原创 2018-09-07 15:04:43 · 3269 阅读 · 0 评论 -
面试题 | 《Java面试题集》-- 第三套
转载 2018-09-03 10:08:42 · 141 阅读 · 0 评论 -
Java 岗位 100道 面试题及答案详解
详情解答1:Arraylist和Linkedlist的区别?ArrayList、LinkedList、Vector和Stack是List的四个实现类,其中Vector是基于JDK1.0,虽然实现了同步,但是效率低,已经不用了,Stack继承Vector区别:...转载 2018-09-03 09:50:04 · 18402 阅读 · 5 评论 -
Java 岗位 【数据库】 面试题及答案详解
1:触发器的作用?· 触发器是一种特殊的存储过程,主要是通过事件来触发而被执行的。· 它可以强化约束,来维护数据的完整性和一致性。· 可在写入数据表前,强制检验或转换数据。· 触发器发生错误时,异动的结果会被撤销。· 部分数据库管理系统可以针对数据定义语言(DDL)使用触发器,称为DDL触发器。· 可依照特定的情况,替换异动的指令 (INSTEAD OF)。2:触发器的...转载 2018-09-03 09:51:47 · 2134 阅读 · 0 评论 -
面试题 | 《Java面试题集》 -- 第二套
转自: 码神联盟转载 2018-09-03 10:00:51 · 138 阅读 · 0 评论 -
前后端的数据交互
Java学习——前后端数据交互(一)当前的结果是提交之后js内有响应。不知道原因在哪个地方,下面是当前了解的一些知识。 1、在html页面要链接到js页面,要有个这样的东西(html页面 2、在js页面要定义controller层的url地址,就是requestMapping后面的内容(js页面)3、分为获取数据和提交数据(js页面)首先是获取数据,shopIn...转载 2018-08-10 09:54:53 · 24762 阅读 · 0 评论 -
面试题 | 《Java常见面试题集 》- 第一套
面试题 | 《Java常见面试题集 》- 第一套01 、下面程序运行的结果为?import java.io.*;import java.util.*;public class foo{ public static void main(){ String s; System.out.println("s="+s); }} A. ...转载 2018-08-29 14:45:09 · 468 阅读 · 0 评论 -
JAVA中显式类型转换和隐式类型转换
自动类型转换(隐式类型转换),由系统自动完成的类型转换。从存储范围小的类型到存储范围大的类型。由于实际开发中这样的类型转换很多,所以Java语言在设计时,没有为该操作设计语法,而是由JVM自动完成。 转换规则: 从存储范围小的类型到存储范围大的类型。 具体规则为: byte→short(char)→int→long→float→double也就是说byte类型的变量可以自动转换为sho...转载 2018-07-27 16:00:05 · 5427 阅读 · 1 评论 -
java 中@interface 和interface 的区别
1、区别①、interface :声明了这是一个java 的接口②、@interface : 是用来修饰 Annotation 的,请注意,它不是 interface。这个关键字声明隐含了一个信息:它是继承了 java.lang.annotation.Annotation 接口,而不是声明了一个 interface。 2、什么是java AnnotationJava 从1.5开...转载 2018-08-02 14:16:37 · 10328 阅读 · 0 评论 -
java time 的构造函数中可添加String 转换成Timestamp 类型
//构造函数 public zxxxEntity(Timestamp Time1, Timestamp Time2) { //String类型转为timestamp类型 Timestamp time1= new Timestamp(System.currentTimeMillis()); time1.valueOf(Time1.toStr...原创 2018-08-03 11:36:23 · 609 阅读 · 0 评论 -
map.put 覆盖问题(一)
直接将Map放到循环里执行,这样就不会将重复的值覆盖掉。 //创建ArrayList对象 List list =new ArrayList(); for (int i =0; i < list.size() ; i ==1) { Map map = new HashMap(); //map.put 方法用于覆盖操作 //一个Map中不能包含相...原创 2018-05-04 11:03:33 · 24319 阅读 · 6 评论 -
map.put 覆盖(二)
一、问题描述 最近在代码开发中遇到一个问题,在往Map中put文件路径值然后把Map放到List中去时,遇到问题是Map的后一个值总是把前一个值覆盖,导致最后Map中只有一个值。二、解决办法(有如下几种 ): 第一种,直接改写HashMap;让他在值相同的时候不覆盖即可。 第二种,因为我实际上是要把Map存值然后再放到List中,那么我们可以想到放一个Map和多个Ma...转载 2018-05-12 10:55:33 · 2712 阅读 · 0 评论 -
String.format 的用法
String.format("%s:%s", error.getCode(), error.getDefaultMessage())String.format(Locale , String format, Object... args) 该方法使用指定的语言环境、字符串格式和参数生成一个格式化的新字符串。新字符串始终使用指定的语言环境。 语法: String....原创 2018-05-04 12:04:02 · 1850 阅读 · 0 评论 -
Cassandra连接Java
1、pom.xml文件<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs...原创 2018-06-01 11:03:45 · 1110 阅读 · 0 评论 -
自动装箱
自动装箱只能用equals== 比较地址Equals 比较对象原创 2018-05-15 10:17:34 · 278 阅读 · 0 评论 -
正则表达式
转载 2018-05-15 10:38:22 · 136 阅读 · 0 评论 -
冒泡排序
原创 2018-05-15 10:40:03 · 114 阅读 · 0 评论 -
JSON数据类型
JSON格式支持的数据类型有以下:类型描述Number在JavaScript中的双精度浮点格式String双引号的反斜杠转义的UnicodeBooleantrue 或 falseArray值的有序序列Value它可以是一个字符串,一个数字,真的还是假(true/false),空(null )等Object无序集合键值对Whitespace可以使用任何一对中的令牌nullempty数字这是一个双精度...转载 2018-06-04 17:17:29 · 3240 阅读 · 0 评论