4 菜鸡03号

尚未进行身份认证

为3年后的架构而战

等级
博文 316
排名 6k+

serialVersionUID 有什么作用?该如何使用?

##问题当一个对象实现Serializable接口时,多数ide会提示声明一个静态常量serialVersionUID(版本标识),那serialVersionUID到底有什么作用呢?应该如何使用serialVersionUID?##回答serialVersionUID是实现Serializable接口而来的,而Serializable则是应用于Java对象序列化/...

2018-05-29 23:57:14

mysql事物及数据库隔离级别

如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。⑵一致性(Consistency)  一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态...

2018-03-12 01:01:49

Spring restTemplate使用

最近看到springRestTemplate,觉得挺好用的,就研究总结了一下,第一次写。。。 RestTemplate可使用http的所有方式进行请求,本文主要说明下get,post的使用,其他的基本类似。httpget方式springRestTemplate中直接使用get方法有两种getForObject和getForEntitygetForObject每种方式都有3个重载方法Tge...

2018-03-07 10:27:14

字节与字符的区别,以及数据库中字节长度说明

   字节(Byte/bait/n.[C])是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于有八位,[1]  也表示一些计算机编程语言中的数据类型和语言字符。ASCII码:一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。如一个ASCII码就...

2018-02-28 16:52:09

利用grep-console插件使Intellij idea显示多颜色调试日志

由于Intellijidea不支持显示ascii颜色,grep-console插件能很好的解决这个问题,下面就以开发JavaEE项目中,结合Log4j配置多颜色日志输出功能。安装grep-console插件https://plugins.jetbrains.com/plugin/7125-grep-console 下载最新的版本

2018-02-01 17:03:42

mysql数据库在不同的服务器,无法进行数据传输,或者导入导出数据错误,原因分析

如果两个相同的mysql数据库在不同的服务器,无法进行数据传输,或者导入导出数据错误,应查看两个数据库版本是否一致。mysql>selectversion(); 如果版本一致仍然不能顺利导入导出数据,则应查看mysql配置文件,my.ini中配置的sql_mode是否一致。mysql>select@@sql_mode; 将配置文件中的sql_m

2018-01-29 12:06:03

工作积累

1.spring@Async@Transactional注解一起使用影响事物执行在@Async标注的方法,同时也适用了@Transactional进行了标注;在其调用数据库操作之时,将无法产生事务管理的控制,原因就在于其是基于异步处理的操作。   那该如何给这些操作添加事务管理呢?可以将需要事务管理操作的方法放置到异步方法内部,在内部被调用的方法上添加@Transaction

2018-01-16 22:28:51

git版本回退

现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,再练习一次,修改readme.txt文件如下:Gitisadistributedversioncontrolsystem.GitisfreesoftwaredistributedundertheGPL.然后尝试提交:$gitaddreadme.txt$gitcommit-m

2017-12-27 22:37:27

Spring工厂模式

.     前言我相信很多在刚刚使用Spring的同事会考虑一个问题:   我们为什么要用Spring,Spring虽然给我们带来了一些好处,可是,似乎好处似乎不是那么明显。IOC的作用似乎也很牵强。   所以,冷凝沙漠在此记录了自己的一些Spring开发经验,与各位分享。 2.     一个常见的业务场景2.1.   场景简介

2017-12-22 16:50:51

IDEA liveTemplate生成JAVA Doc模板

注释模版注释模版是指在编写代码时针对不同的类,方法或者其他文件时自动生成的注释信息。在eclipse我们很熟悉可以利用/**,Enter在方法,类名等前一行来生成注释模板,但是IntelliJIDEA并没有去按照原来的方法去实现。他引进了LiveTemplate来达到类似效果。从eclipse到IDEAeclipse中的注释模板在codeTemplate中,它存储的形式xml文件。

2017-12-15 10:27:38

mysql order by 多字段排序问题

说在前面突发奇想,想了解一下mysqlorderby排序是以什么规则进行的?好了,话不多说,直接进入正题吧。MySqlorderby单字段建一测试表如下:[sql] viewplain copyCREATE TABLE `a` (    `code` varchar(255) DEFAULT NULL,  

2017-12-13 21:59:28

MYSQL orderBy和limit连用陷阱

在Mysql中我们常常用orderby来进行排序,使用limit来进行分页,当需要先排序后分页时我们往往使用类似的写法select*from表名orderby排序字段limtM,N。但是这种写法却隐藏着较深的使用陷阱。在排序字段有数据重复的情况下,会很容易出现排序结果与预期不一致的问题。比如现在有一张user表,表结构及数据如下:现在想根据创建时间

2017-12-12 22:24:41

java validation 后台参数验证

javavalidation后台参数验证 一、前言二、几种解决方案三、使用beanvalidation自带的注解验证四、自定义beanvalidation注解验证  一、前言  在后台开发过程中,对参数的校验成为开发环境不可缺少的一个环节。比如参数不能为null,email那么必须符合email的格式,如果手动进行if判断或者写正则表达式判断无意

2017-12-10 13:53:55

JAVA 8 Stream API 对Stream进行分组、分区

这篇文章展示了如何使用StreamsAPI中的Collector及groupingBy和partitioningBy来对流中的元素进行分组和分区。思考一下Employee对象流,每个对象对应一个名字、城市和销售数量,如下表所示:+----------+------------+-----------------+|Name|City|

2017-12-06 15:45:38

深入理解JAVA异常

1.引子try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下面的代码,“猜猜”它执行后的结果会是什么?不要往后看答案、也不许执行代码看真正答案哦。如果你的答案是正确,那么这篇文章你就不用浪费时间看啦。1

2017-11-29 00:03:34

JAVA常用的集合转换

在Java应用中进行集合对象间的转换是非常常见的事情,有时候在处理某些任务时选择一种好的数据结构往往会起到事半功倍的作用,因此熟悉每种数据结构并知道其特点对于程序员来说是非常重要的,而只知道这些是不够的,有时候你需要一个Map来处理数据,而此时你手中只有一个List,此时知道如何将List转为Map就非常重要了,而只知道for循环将List转为Map这就太Low了,JDK1.8吸收了许多函数式编

2017-11-24 17:24:34

Centos、redHat使用比较

历史RedHat家族中有企业版的产品,它是RedHatEnterpriseLinux(以下称之为RHEL),CentOS正是这个RHEL的克隆版本.软件安装redHat需要提前注册才能使用yum直接安装,注册账户需要收费。centos不需要注册可直接使用yum远程安装软件centos桌面版较redHat更为方便(个人感觉),

2017-11-20 21:48:33

Centos7Docker安装

Docker是一个开源工具,它可以让创建和管理 Linux容器变得简单。容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止。Docker帮助系统管理员和程序员在容器中开发应用程序,并且可以扩展到成千上万的节点。容器和VM(虚拟机)的主要区别是,容器提供了基于进程的隔离,而虚拟机提供了资源的完全隔离。虚拟机可能需要一分钟来启动,而容器只需要一秒钟或更短。容器使用宿主操作系统

2017-11-20 20:51:33

linux常用操作

1.linx安装rpm包提示:Faileddependencies[root@sh158-xendata]#rpm-ivhMySQL-server-5.5.24-1.linux2.6.x86_64.rpmerror:Faileddependencies:MySQLconflictswithmysql-5.0.77-4.el5_4.2.x86_64解决办法:

2017-11-20 17:52:09

linux常用操作

1.linx安装rpm包提示:Faileddependencies[root@sh158-xendata]#rpm-ivhMySQL-server-5.5.24-1.linux2.6.x86_64.rpmerror:Faileddependencies:MySQLconflictswithmysql-5.0.77-4.el5_4.2.x86_64解决办法:

2017-11-20 17:52:06
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!