java基础
OdadaPlus
这个作者很懒,什么都没留下…
展开
-
如何编写service层切面
import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Pointcut;import org.springframework.stereotype.Component;/** * @ClassName Communicati.原创 2022-11-18 21:42:29 · 418 阅读 · 0 评论 -
Mysql varchar与char区别
区别一,定长和变长char 表示定长,长度固定,varchar表示变长,即长度可变。char如果插入的长度小于定义长度时,则用空格填充;varchar小于定义长度时,还是按实际长度存储,插入多长就存多长。(但是如果存的数值超过固定长度,超出部分则会被舍弃。如:varchar(2),存:'abcd',则实际存入数据库只有‘ab’);因为其长度固定,char的存取速度还是要比varch...原创 2019-11-04 17:51:53 · 133 阅读 · 0 评论 -
向Mysql批量插入50万条数据
》批量插入数据脚本表Sql:CREATE TABLE dept(id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,deptno MEDIUMINT UNSIGNED NOT NULL DEFAULT 0,dname VARCHAR(20) NOT NULL DEFAULT '',loc VARCHAR(13) NOT NULL DEFAU...原创 2019-11-03 22:42:40 · 2180 阅读 · 0 评论 -
IntelliJ IDEA 超实用使用技巧分享
前言工欲善其事必先利其器最近受部门的邀请,给入职新人统一培训IDEA,发现有很多新人虽然日常开发使用的是IDEA,但是还是很多好用的技巧没有用到,只是用到一些基本的功能,蛮浪费IDEA这个优秀的IDE。同时,在这次分享之后,本人自己也学习到了一些新的使用技巧,所以借着这次机会,一起分享出来。希望可以帮到一些人。基于的 IDEA 版本信息:IntelliJ IDEA 2018....转载 2019-10-18 17:54:32 · 307 阅读 · 1 评论 -
如何给java项目写日志切面工具类
话不多说,直接上代码!package com.dada.kit.vivo.aop;import com.dada.kit.utils.InfoLogUtil;import com.dada.kit.logger.CxLogFieldName;import com.dada.kit.logger.CxLogManager;import com.dada.kit.logger.CxLo...原创 2019-10-16 14:35:29 · 456 阅读 · 1 评论 -
Socket编程,实现简单聊天
1.建客户端DemoSendimport java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.Socket;...原创 2019-03-08 11:26:15 · 334 阅读 · 0 评论 -
测试时报错:java.lang.Exception: No tests found matching
java.lang.Exception: No tests found matching [{ExactMatcher:fDisplayName=testSave], {ExactMatcher:fDisplayName=testSave(com.atguigu.hibernate.entities.HibernateTest)], {LeadingIdentifierMatcher:fClass...原创 2019-05-19 17:23:09 · 354 阅读 · 0 评论 -
出现java.sql.SQLException: No suitable driver的几种解决办法
今天在用C3p0连接MySql数据库 这个时候出现了上面的错误,一般来说这种错误有3个方向解决 一般都是db的配置的问题 ,一定要小心DB 的配置八月 19, 2017 8:30:46 下午 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask run警告: com.mchange.v2.resourcepool.BasicR...转载 2019-05-16 22:34:14 · 16355 阅读 · 2 评论 -
spring项目《接口响应体格式统一封装》
前言在之前的文章中我们有介绍过,如何更好、更简单的写好一个接口(接口返回值篇),今天的这篇文章我们主要介绍,怎么统一处理下接口的返回格式问题。问题分析我们先来分析下我们所面临的问题在哪里,然后接着给出解决方案。在写一个接口时,我们通常会先统一定义一下接口的返回格式是什么,然后在跟前端去对接,通常的返回格式大体两种(我们以保存用户为例):1. 成功/失败响应格式不一致(此种方式作为我们默认的...转载 2019-05-22 23:44:49 · 457 阅读 · 0 评论 -
前后端交互字段自动驼峰映射
1.后端传给前端:import com.fasterxml.jackson.databind.PropertyNamingStrategy;import com.fasterxml.jackson.databind.annotation.JsonNaming;import lombok.*;import lombok.experimental.Accessors;import ja...原创 2019-07-08 18:51:40 · 1267 阅读 · 1 评论 -
声明式事务不回滚@Transactional的避坑正确使用
看到好文章,轉發的純屬收藏親測有效转发:https://blog.csdn.net/weixin_41485592/article/details/80877665案例:自定义异常类public class IAMException extends Exception { //.....}serviceImpl类1.这种情况抛异常,数据不会回滚...转载 2019-07-11 17:15:59 · 1149 阅读 · 0 评论 -
Java 8 lambda表达式
Java8 lambda表达式10个示例例1、用lambda表达式实现Runnable我开始使用Java 8时,首先做的就是使用lambda表达式替换匿名类,而实现Runnable接口是匿名类的最好示例。看一下Java 8之前的runnable实现方法,需要4行代码,而使用lambda表达式只需要一行代码。我们在这里做了什么呢?那就是用() -> {}代码块替代了整个匿名类。...转载 2019-09-23 17:06:30 · 111 阅读 · 0 评论 -
java常用工具类
package commons;import com.alibaba.fastjson.JSONObject;import org.apache.commons.beanutils.BeanUtilsBean;import org.apache.commons.beanutils.PropertyUtilsBean;import org.springframework.util.Dige...转载 2019-09-25 15:53:09 · 176 阅读 · 0 评论 -
java-猜数字游戏
上代码:public static void main(String[] args) { int num = new Random().nextInt(100) + 1; System.out.println("请输入1-100随机正整数来匹配,你有五次机会"); Scanner scanner = new Scanner(System.in); for (int i = 0...原创 2019-03-07 17:17:52 · 166 阅读 · 0 评论 -
TreeSet按实体类字段排序
1.常规类型TreeSet的自然排序是根据元素的大小进行升序排序,若想自己定制排序,比如降序,就可以使用Comparator接口。@Test //自动排序 public void treeSets() { Set<Integer> set = new TreeSet<>(); set.add(2); set.add(5); set.add(25...原创 2019-03-07 15:21:49 · 349 阅读 · 0 评论 -
方法的重载
1)要求同一个类中,方法名相同参数列表不同(类型或个数不同),或者参数列表数据类型先后顺序不同(以下构成重载: 第一个方法 public void method1(int i,String s){ //方法体 }; 第二个方法 public void me...原创 2018-02-25 23:01:24 · 152 阅读 · 0 评论 -
nginx报错无法启动
报:nginx: [error] OpenEvent("Global\ngx_reload_5988") failed (2: The system cannot find the file specif原因是:nginx还没启动根目录启动Nginx:start nginx2018-03-14 08:26:02 · 364 阅读 · 0 评论 -
判断两个list内容是否相同
private boolean isListEqual(List<String> l0, List<String> l1) { boolean flag1 = l0.containsAll(l1); boolean flag2 = l1.containsAll(l0); return flag1 && flag2; }判断的方法list...原创 2018-11-21 15:42:23 · 3726 阅读 · 0 评论 -
String类型的日期与BigDecimal类型相互转化
实际开发中的案例,需要将日期格式为String类型的"2018-11-13",然后转为BigDecimal(8,2)类型的20181113存入数据库。查询时再将数据转为String类型格式展示。1、先定义工具类:(如果没有传入生失效时间,这自动设置一个默认值;如果有则,不需要。)/** * @Description 工具类 * Create at: 2018年11月21日 下午4...原创 2018-11-24 18:07:54 · 1528 阅读 · 0 评论 -
equals()方法和"=="运算符比较
一、equals()方法和"=="运算符比较(一)equals()超类Object中有这个方法equals()方法,该方法主要用于比较两个对象是否相等。源码如下: public boolean equals(Object obj){ return(this == obj);} 所有对象都拥有标识符(内存地址)和数据,同时"=="比较两个对象的内存地址,所有说使用Ob...原创 2019-02-11 10:10:28 · 337 阅读 · 0 评论 -
STS、eclispe导入正确工程后出现assembly.xml等xml文件报错
错误:解决方法:第一步:Project Explorer (如果没有这个窗口可以在eclipse工具栏->Window->show View ->Project Explorer)->选中一个倒三角标志->Customize view(如图1) ->Content选项卡->把一些J2EE和最后一个选项的勾去掉就好(如 图2 -Available...原创 2019-02-18 16:08:49 · 1140 阅读 · 0 评论 -
OOP之继承:实体类属性不可继承,方法可以继承
先上代码: @Test public void test() { Super sup = new Sub(); System.out.println(sup.field + ":" + sup.getField()); Sub sub = new Sub(); System.out.println(sub.field + ":" + sub.getField());...原创 2019-03-05 17:20:51 · 353 阅读 · 0 评论 -
如何高效地判断数组中是否包含某特定值
如何高效地判断数组中是否包含某特定值检查数组中是否包含特定值的三种不同方法1.定义方法 //使用list static boolean userlist(String[] arr, String targetvalue) { return Arrays.asList(arr).contains(targetvalue); } //使用set stat...原创 2019-03-03 17:24:39 · 588 阅读 · 0 评论 -
HashMap和Hashtable的区别
HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。 HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。 HashMap把Hashtable的contains方...原创 2019-03-03 17:56:51 · 114 阅读 · 0 评论 -
ArrayList和Vector的区别,HashMap和Hashtable的区别
就ArrayList与Vector主要从二方面来说.一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半就HashMap与HashTable主要从三方面来说。一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是J...原创 2019-03-03 17:59:16 · 187 阅读 · 0 评论 -
子类的构造函数默认调用父类的空参构造函数
public class Wolf extends Animal { public Wolf() { super("熊大",2); System.out.println("wolf无参构造器"); } public static void main(String[] args) { new Wolf(); }}class Animal extends Creature{...原创 2019-02-27 14:15:29 · 1351 阅读 · 0 评论 -
Java序列化的几种方式以及序列化的作用
本文着重讲解一下Java序列化的相关内容。如果对Java序列化感兴趣的同学可以研究一下。一.Java序列化的作用 有的时候我们想要把一个Java对象变成字节流的形式传出去,有的时候我们想要从一个字节流中恢复一个Java对象。例如,有的时候我们想要把一个Java对象写入到硬盘或者传输到网路上面的其它计算机,这时我们就需要自己去通过java把相应的对象写成转换成字节流。对于这种通用...转载 2019-03-09 10:59:55 · 128 阅读 · 0 评论 -
java-判断字符串是否由纯数字组成
上代码: static boolean isNum(String s) { char[] ch = s.toCharArray(); for (char c : ch) { if (!(c > '0' && c <= '9')) { return false; } } return true; } @Test pu...原创 2019-03-07 11:24:37 · 1835 阅读 · 0 评论 -
Java运算符优先级
序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右 [ ] 方括号 从左到右 2 + 正号 从右到左 单目 - 负号 从右到左 单目 ++ 自增 从右到左 单目 前缀增,后缀增 - - 自减 从右到左 前缀减,后缀减 ~ 按位非/取补运算 从右到...翻译 2018-02-25 22:47:17 · 186 阅读 · 0 评论