JAVA
竹蜻蜓dd
干一行,爱一行。热爱自己手中的事业。
展开
-
用策略模式替代switch case
switch case 看着方便,但是如果后期要加入条件:还要修改原代码,导致回归测试,测试成本增加不遵循开闭原则(对修改关闭,对拓展开放)所以,我选择了策略模式来解决该问题。。。一,首先了解下业务(大概说一下):字段eventType有多种情况(org_dept_create,org_dept_modify,org_dept_remove,。。。。),不同情况下走不同得逻辑二,用s...原创 2020-04-16 18:02:37 · 2648 阅读 · 1 评论 -
SpringBoot整合校验框架validation
本文介绍在Spring Boot中实现对请求的数据进行校验。数据校验常用到概念:JSR303/JSR-349: JSR303是一项标准,只提供规范不提供实现,规定一些校验规范即校验注解,如@Null,@NotNull,@Pattern,位于javax.validation.constraints包下。JSR-349是其的升级版本,添加了一些新特性。hibernate validation:h...原创 2019-12-18 17:40:44 · 1088 阅读 · 1 评论 -
基本数据类型-包装类-String类之间的转化
/** * 基本数据类型--包装类--String类 之间的转化 * * 01:基本数据类型-->包装类 自动装箱: * 通过包装类的构造器:Integer i = new Integer(123); Float f = new Float("23.1F"); * * 02.包装类-->基本数据类型 自动拆箱: * 调用包装类的方法 Integer.valueOf(...原创 2019-05-03 18:05:40 · 141 阅读 · 1 评论 -
java中代码块使用
/** * 类的第四个成员-初始化块(或代码块) * 1. 代码块如果有修饰的话,那么只能用static * 2. 分类: * 非静态初始化块 * 1. 可以对类的属性(静态&非静态)进行初始化操作,也可调用本类声明的方法 * 2. 里面可以有输出语句 * 3. 一个类可以有多个初始化块,多个初始化块之间按照顺序结构执行 * 4. 每创建一个类的对象,非静态初...原创 2019-05-03 21:50:16 · 236 阅读 · 2 评论 -
接口?抽象?
刚学接口可能会有这么个疑惑?接口是不是抽象的?存在抽象接口吗?接口中的方法是抽象的吗?接口中可以有不是抽象的方法吗?。。。。请看下面:答案:所有的接口都是抽象的,,接口中所有的方法都是抽像的! // 自己定义一个接口: public interface jieKouTest { public abstract void test1(); public void test...原创 2019-05-07 16:34:32 · 663 阅读 · 0 评论 -
Java集合List
Java集合在java语言中的java.util包提供了一些集合类,这些集合类又被称作容器。区别集合类和数组。(1)数组的长度是固定的,集合的长度是可变的。(2)数组是用来存放基本数据类型的,集合是用来存放对象的引用。|----Iterable(接口) |----Collection(接口) &n...原创 2019-05-10 11:39:41 · 147 阅读 · 2 评论 -
Java集合Set
接上一篇“Java集合list”1.2:Set接口 无序的,不可重复,允许null值。 无序性:指的是元素底层存储的位置是无序的。不是打印出来的值的顺序。 不可重复性:当向Set中添加重复值的时候,后面的值添加不进去。  ...原创 2019-05-10 11:50:53 · 208 阅读 · 7 评论 -
异常处理
java的中异常祖先是Throwable,Throwable的直接子类是Exception和Error。看图:(Eclipse中,选中Throwable,按CTRL + T 便可出现此结构树。)Error是错误的意思,这种错误一般是jvm运行产生的错误,出现这种错误,我们的程序不能解决,比如内存溢出oom,堆溢出等。这种错误,我们不必处理,直接让jvm抛出报错,我们没办法解决就不管了。Ex...原创 2019-05-08 09:07:13 · 136 阅读 · 3 评论 -
Java集合Map
java集合汇总Map接口|----HashMap(类):Map的主要实现类|----LinkedHashMap(类):使用链表维护添加进Map中的顺序,遍历Map时,按照添加顺序遍历|----TreeMap(类): 按照添加进入Map中元素的key的指定属性排序。【自然排序,定制排序】。key必须是同一个类的对象。是同种类型的数据|----Hashtable(类):Hashtabl...原创 2019-05-11 10:37:03 · 239 阅读 · 3 评论 -
Java集合List-Set-Map汇总
在java语言中的java.util包提供了一些集合类,这些集合类又被称作容器。区别集合类和数组:(1)数组的长度是固定的,集合的长度是可变的。(2)数组是用来存放基本数据类型的,集合是用来存放对象的引用。集合集合中接口,类之间的继承,实现关系手绘图:Collection接口Collection接口定义了许多非常常用的方法,下面来了解这些方法的使用:public static ...原创 2019-05-11 10:46:19 · 184 阅读 · 0 评论 -
Can not autowire.No beans of "UserDao" type found…
这是IDEA的自动检测出现的错误。spring的自动扫描,不能扫描到 UserDao 这个组件。01.使用AppConfig类作为Spring全局扫描配置文件1.查看UserDao层(如果用接口实现的dao层,就要查看dao层接口实现的那个类)是否加注解@Component或者@Repository【二选一】2.查看全局扫描的配置文件(此处是AppConfig类)路径,如下图会出错的例子:...原创 2019-07-07 15:10:36 · 6849 阅读 · 1 评论 -
java数据类型详解
java数据类型详解数据类型分类长度及表示范围不同类型间的计算数据类型分类长度及表示范围解析:TB :1 TB = 1024 GBGB:1 GB = 1024 MBMB:1 MB = 1024 KBKB:1 KB = 1024 B 【Byte,字节】B:1 B = 8 b 【bit,位】位:"位(bit)“是电子计算机中最小的数据单位。每一位的状态只能是0或1。字节:8个二...原创 2019-04-16 11:09:34 · 223 阅读 · 1 评论 -
去除首尾指定字符
使用的时候,调一下方法就好。/** * 去除首尾指定字符 * * @param str 字符串 * @param element 指定字符 * @return */public static String trimFirstAndLastChar(String str, String element) { boolean beginIndexFlag = true; b...原创 2019-03-28 09:56:51 · 160 阅读 · 3 评论 -
final与static 的慎用
##情景再现原来代码这样的,我想根据 “nowTime ”的值,来执行不同的内容。private final int nowTime = Integer.parseInt(new SimpleDateFormat("HH").format(new Date()));public IntegralResult sendMessage() { if( nowTime > 19 ){...原创 2019-03-29 15:06:52 · 710 阅读 · 0 评论 -
java-利用Private确保数据安全(getter&setter)
首先写一个Person类,定义成员变量和成员方法。package day06Private;public class Person { // 成员变量 String name; int age; boolean flag; // 成员方法 public void show() { System.out.println("我叫" + name + ",今年" + age + ...原创 2018-07-01 10:57:23 · 680 阅读 · 5 评论 -
Java-获取键盘输入内容
简单说就是“导包--创建--获取”这个过程。import java.util.Scanner;//导包 public class getSt{ public static void main(String[] args){ Scanner sc =new Scanner(System.in);//创建 int num =sc.nextInt();//获取键盘输入的日容 Sy...原创 2018-06-19 17:35:59 · 1266 阅读 · 22 评论 -
mybatis in查询
foreach 在SQL语句的in中,可以迭代一个集合。foreach 元素属性主要有item,index,collection,open,separator,close。 属性 描述 item 表示集合中每一个元素进行迭代时的别名。 index 指定一个名字,表示在迭代过程中每次迭代的位置。 open 表名该语句以什么开始。 se...原创 2018-08-14 21:42:47 · 850 阅读 · 6 评论 -
Java基础--API文档是什么
API文档是什么?开发一个大型软件时,需要定义成千上万的类,而且需要很多人参与开发。每个人都会开发一些类,并在类里面定义一些方法,成员变量提供给其他人使用。但其他人怎么知道如何使用这些类和方法呢? 这时候就需要提供一份说明文档,用于说明每个类,每个方法的用途。当其他人使用一个类或者一个方法时,她无需关系这个类或者方法的具体实现,只需要知道这个类或者方法的功能即可,然后使用这个类或者方法来实现具体...原创 2018-11-16 20:01:47 · 9066 阅读 · 4 评论 -
break,continue,return区别
首先,这三种方式,都能跳出 循环,但是也有差别;Break:某些时候需要的某种条件出现时强行 终止循环,而不是等到循环条件为false时退出循环。此时可以使用break强行跳出循环,是完全结束循环,跳出循环。continue:continue的功能和break有点类似,区别是continue只是忽略本次循环剩下语句,接着直接开始下伦循环,而break是终止循环本身。return:ret...原创 2018-12-02 21:26:39 · 162 阅读 · 4 评论 -
java日期处理
//获取当前时间: Date date = new Date(); //获取昨天当前时间: Date date = new Date(); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.DAY_OF_MONTH, -1); Date resDate ...原创 2018-12-15 20:32:08 · 136 阅读 · 0 评论 -
创建spring boot工程(一)
以HelloWorld工程为例,网页接收“hello”,返回hello world1,创建一个maven工程Create new project --maven–选择jdk–next2.输入GroupId–和ArtifactId–next3.输入Project name—Project Location–next4.就会自动打开项目,看右下角,选择 Enable Auto-Impo...原创 2018-12-25 12:40:58 · 158 阅读 · 0 评论 -
创建spring boot工程--(二)使用Spring Initializer快速创建
1.Create new project–Spring Initializr–选择jdk–下一步2.填写组织id,模块id,包名等–next3.此处我以helloworld为例,仅以web为例:根据自己的需求,选择不同的模块。4.填写工程名。项目路径–next5.打开项目。目录结构如下所示,启动类已经自动建立好了最后:使用springboot快速创建spring boot项...原创 2018-12-25 12:45:06 · 984 阅读 · 2 评论 -
Java中查看今天周几
Date today = new Date(); Calendar c=Calendar.getInstance(); c.setTime(today); int weekday=c.get(Calendar.DAY_OF_WEEK);上面的weekday就是周几,对应规则:weekday=1-----周日weekday=2-----周一weekday=3...原创 2019-01-25 11:16:47 · 1735 阅读 · 3 评论 -
JAVA判断两个时间戳,相隔多少分钟
hqtime为原时间戳System.currentTimeMillis()获取当前时间戳Long s = (System.currentTimeMillis() - hqtime) / (1000 * 60);转自https://blog.csdn.net/ufo2910628/article/details/43964663原创 2019-03-10 21:34:22 · 7686 阅读 · 0 评论 -
Java入门-- 自增晕算法和自减运算符
自增元算符:++ 就是在变量原有基础上,累加一个1(涨一个数)自减元算符: -- 就是在变量原有基础上,减少一个1(降一个数)使用格式(++和--一样,这里以++为例): 可以用在变量的前面,如:++num 可以用在变量的后面:num++使用方式; 1.单独使用:自己独立成为一个步骤语句,不和其他任何操作混合。 2.混合使用:和其他步骤一起使用。两种使用方式的区...原创 2018-06-14 12:56:43 · 210 阅读 · 10 评论