Java
Jatham
你的对手在看书,你的仇人在磨刀。你的闺蜜在减肥,隔壁老王在练腰。
展开
-
自定义序列化,优雅解决数据在前后端转换
<转载>后端用的时间单位是Date,前端用的秒又比如,后端用的金额单位是分,前端用的是元总之,单位不统一,而且各有各自的理由,统一不了,那就转换吧。每次返回给前端时再转换一遍,返回给前端的json数据,在后端里定义的往往是一个对象,如何做到优雅的转换呢?只需两步写一个负责转换的类,里面写好规则import com.fasterxml.jackson.core.JsonG...转载 2020-04-01 09:57:00 · 258 阅读 · 0 评论 -
BigDecimal序列化后小数位数缺失问题(绝对好用)
问题: 实体类的BigDecimal类型字段,在序列化后,小数点被自动去掉解决:添加String类型的字段,对元数据使用DecimalFormat工具类进行format,String priceStr;BigDecimal price;DecimalFormat df = new DecimalFormat("#0.00"); //指定保留两位小数p.setPrice(p.getP...原创 2019-10-17 11:24:02 · 3064 阅读 · 1 评论 -
springBoot的jar启动基本操作
springBoot基本操作首先进入pom目录,然后执行:$ mvn package[INFO] Scanning for projects...[INFO][INFO] ------------------------------------------------------------------------[INFO] Building myproject 0.0.1-SNA...原创 2018-10-10 20:18:58 · 482 阅读 · 0 评论 -
logback.xml和日志输入格式说明
logback使用依赖jar文件 logback-core-xxx.jar logback-classic-xxx.jarlogback.xml<?xml version="1.0" encoding="UTF-8"?><configuration> <appender name="console" class="ch.qos.logb.原创 2018-10-10 16:35:06 · 3637 阅读 · 0 评论 -
spring-boot maven常用依赖
<?xml version="1.0" encoding="UTF-8"?><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/P原创 2018-10-11 17:00:52 · 1902 阅读 · 0 评论 -
springmvc mockmvc单元测试
springmvc mockmvc单元测试简介MockMvc实现了对Http请求的模拟,能够直接使用网络的形式,转换到Controller的调用,这样可以使得测试速度快、不依赖网络环境,而且提供了一套验证的工具,这样可以使得请求的验证统一而且很方便。使用步骤MockMvcBuilder构造MockMvc的构造器mockMvc调用perform,执行一个RequestBuilder请求,...原创 2018-09-21 10:16:52 · 307 阅读 · 0 评论 -
位、字节、字符区别
位 bit位:(bit)是电子计算机中最小的数据单位。每一位的状态只能是0或1。二进制运算就是按照位来运算的。字节 byte字节(Byte)是一种计量单位,表示数据量多少,它是计算机信息技术用于计量存储容量的一种计量单位。这个是一个计量单位,比如关系型数据库中有一个length()函数,可以计算出指定内容的字节长度;一般一个字节有八位; SELECT LENGTH('中')-...原创 2018-09-10 16:47:13 · 1061 阅读 · 0 评论 -
DigestUtils
DigestUtilspackage org.apache.commons.codec.digest;import java.io.IOException;import java.io.InputStream;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;impor...原创 2018-09-10 16:36:06 · 1712 阅读 · 0 评论 -
spring的bean的作用域类型
Bean作用域小结 作用域类型 说明 singleton 在spring ioc容器中仅存在一个bean实例;bean以单实例的方式存在;容器初始化时完成初始化 prototype 每次从容器中调用bean时,都返回一个新的实例,每次调用getBean()时相当于new XxxxBean() request 每次HTTP请求都会创建一个新的be...原创 2018-09-11 19:38:04 · 202 阅读 · 0 评论 -
spring中bean的三种关系
spring中bean的三种关系继承 关键字:parent <bean id="bean1" class="com.test.Bean1" p:color="red" p:size="big"/> <bean id="bean2" class= "com.test.Bean1" parent="bean1&quo原创 2018-09-11 19:21:46 · 504 阅读 · 0 评论 -
mysql5.7导出到5.5版本时datetime(0)错误
本地创建的表无法导入服务器的mysql条件:本地mysql5.7;服务器mysql5.5查看mysql版本的命令 show variables like 'version'问题原因:datetime(0) 语法错误解决:将创建语句中的datetime(0) 改为datetime原理暂时还不清楚,以后查看下mysql文档。...原创 2018-11-12 11:01:06 · 9839 阅读 · 2 评论 -
mybatis缓存(一级、二级)
http://blog.51cto.com/zero01/2103911转载 2018-12-13 14:22:58 · 132 阅读 · 0 评论 -
@Autowired深入理解
@Autowired很简单吗?后端开发中,使用Spring框架最多,它提供的自动注入方式极大的方便了程序的开发,而且开发中应用最多的可能就是@Autowired注解了,但是,我们真的理解了作者的初衷了吗?真的了解它的原理了吗?知道它的所有应用场景了吗?还有它的注意事项?想想这些,我都觉得很有必要深入了解下这些,抽时间总结总结,在这里先埋下坑,天堂有路我不走,非要挖坑自己来。八月份有有的写了。。。...原创 2019-08-24 23:36:16 · 546 阅读 · 0 评论 -
@Autowred和@Resource
@Resource和@Autowired@Resource按照名称进行依赖注入 @Resource(name="apple")@Autowired按照类型进行属性注入 @Autowired @Qualifier("pear")原创 2019-07-17 15:54:20 · 788 阅读 · 0 评论 -
冒泡排序
看看自己还会不会冒泡,还是写出来了public static void main(String[] args) { int[] test = { 1, 2, 45, 85, 26, 33, 69, 46, 92, 75 }; //实际复杂度: for (int i = 0; i < test.length; i++) { for (int j = 0; j < test.l...原创 2019-03-27 09:48:59 · 747 阅读 · 0 评论 -
多实例流程图查看【待完善】
流程图–接上篇public Map<String, Object> getCoordingByTask(String taskId) { // 存放坐标 Map<String, Object> map = new HashMap<String, Object>(); // 使用任务ID,查询任务对象 Task task = taskServic...原创 2019-03-13 13:21:14 · 293 阅读 · 0 评论 -
act_run_execution表结构分析
act_run_execution表结构分析最近使用activiti做了一个会签的流程,但是查看会签节点的流程图的时候,发现了一些问题,追本溯源就找到了act_run_execution表,在此记录下,这位大神已经写的很详细了,值得一看。...转载 2019-03-13 10:28:53 · 599 阅读 · 0 评论 -
SecurityManager -----java自带的安全管理类
详见官方文档官方解释安全管理器是允许应用程序实现安全策略的类。它允许应用程序在执行可能不安全或敏感的操作之前确定该操作是什么以及是否在允许执行该操作的安全上下文中尝试该操作。应用程序可以允许或不允许该操作。原理类中存在了许多以check开始的方法。因此,安全管理器有机会通过抛出异常来阻止操作完成。如果允许操作,安全管理器例程只返回,如果不允许操作,则抛出AsecurityException...原创 2019-03-08 09:38:12 · 375 阅读 · 0 评论 -
查看powershell版本
$PSVersionTablePS C:\Users\zhangshaobo> $PSVersionTableName Value---- -----PSVersion 5.1.17134.590PSEdition ...原创 2019-03-04 14:37:12 · 3294 阅读 · 0 评论 -
单例模式
java中的单例模式注意事项:/** * @ClassName: SinglePatternTest.java * @Description: * @author jatham * @date 2019年3月2日 下午12:58:05 */public class SinglePatternTest { // 注意这两行的顺序:创建实例的时候,程序会先实例化静态变量,如果类的静态...原创 2019-03-02 13:14:14 · 133 阅读 · 0 评论 -
spring注入方式之singleton注入prototype
singleton注入prototypelookup方法注入 使用场景:一个singleton的bean使用一个prototype的bean时。public interface Bean2{//jiekou Bean1 getBean1();//定义一个方法}<bean id="bean1" class="..." scope="prototype" /...原创 2018-09-11 19:05:33 · 883 阅读 · 0 评论 -
spring4.x学习之bean的singleton和prototype
看了看spring4.x,把书中提到的记录下,也算是回顾下知识,做个总结,毕竟好记性不如烂笔头。1、singleton作用域 当一个bean的作用域设置为singleton, 那么Spring IOC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。换言之,当把一个bean定义设置为singleton作用域时,...原创 2018-09-11 18:43:32 · 368 阅读 · 0 评论 -
自定义SpringUtils
package com.jathams.spring;import org.springframework.beans.BeansException;import org.springframework.beans.factory.NoSuchBeanDefinitionException;import org.springframework.beans.factory.config.Be...原创 2018-08-01 10:42:28 · 2836 阅读 · 5 评论 -
ConfigurableListableBeanFactory理解
ConfigurableListableBeanFactory接口:继承AutowireCapableBeanFactory接口,AutowireCapableBeanFactory接口又继承了beanfactory接口,因此,configurableListableBeanFactory应用上下文环境可以通过bean的name或者clazz获取指定的bean; /* ...原创 2018-08-01 10:38:20 · 6883 阅读 · 0 评论 -
多版本jdk互相切换无效问题终极解决方法
多个版本jdk相互切换最近自己学习springboot时系列,需要使用jdk1.8,然而公司项目使用jdk1.7,于是便在本地又安装了jdk1.8,并且配置了java_home8,以方便切换jdk。首次安装后,cmd输入java -version,jdk1.8安装ok。重启后,发现切换jdk无效。于是又将c://windows/system32下的java.exe、javaw.exe、java...原创 2018-04-02 09:52:06 · 3448 阅读 · 2 评论 -
Jredis--java使用redis
工具:jedis-2.1.0.jarcommons-pool-1.5.4.jar(配置连接池)package com.test;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import org.junit.Before;import org.j原创 2017-09-15 16:28:50 · 638 阅读 · 0 评论 -
redis + centos 安装、启动
环境:VMware-workstation-full-10.0.4-2249910CentOS-7-x86_64-Everything-1611 (1)redis-3.2.9.tar.gzwinscp安装步骤:准备编译环境 yum install gcc 和 yum install gcc-c++将redis压缩包复制到centos下。在centos下进入压缩包路径,进行解压原创 2017-09-14 15:40:00 · 295 阅读 · 0 评论 -
poi导出word:包括**普通的段落以及表格**。常用的**api**已经以注释的方式写了进去。
poi导出word:包括普通的段落以及表格。常用的api已经以注释的方式写了进去。 代码如下:/* * @(#)WordExport.java * Copyright (c) * All rights reserved */ package com.hyetec.zzjj.lcgl;import java.io.File; import java.io.FileOutputS原创 2017-07-20 12:56:22 · 2612 阅读 · 0 评论 -
js和java中string的长度length
在JS中,字符串类型String和数组类型Array都有一个叫length的长度属性值,可以用[对象名.length]的方式读取出来,这里的length是对象固有的属性,不是方法,因此不用.length(),而是直接用.length。 在Java中,数组是引用数据类型,不是类,因此也是读取固有的length属性得到数组长度,它没有length()方法。但是,java中的St转载 2017-03-16 09:47:25 · 880 阅读 · 0 评论 -
<base>标签
base标记是一个基链接标记,是一个单标记。用以改变文件中所有连结标记的参数内定值。它只能应用于标记与之间。 你网页上的所有相对路径在链接时都将在前面加上基链接指向的地址。jsp页面可以定义:在head标签后加上" >即可。原创 2017-03-16 10:27:30 · 399 阅读 · 0 评论 -
BeanFactoryPostProcessor 理解
/* * Copyright 2002-2012 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * Y...原创 2018-08-01 10:43:38 · 235 阅读 · 0 评论 -
java基础-Objects类
java基础-java.util下的Objects类Objects 类包含了常用的操作object的方法。这些方法包括计算hash code、返回string 、比较对象等方法。 package java.util; /** * This class consists of {@code static} utility methods for operating...原创 2018-08-06 13:58:52 · 450 阅读 · 0 评论 -
==与equals最全解疑
两小儿辩==与equals; public static void main(String[] args) { // ==比较的是地址,equals比较的是内容, // 首先在integerCache中缓存127 Integer a = 127; // 创建b时,先去缓存池查看是否有127的引用,有的话,直接拿来用 Integer b = 127;...原创 2018-08-06 14:02:33 · 144 阅读 · 0 评论 -
Jedis之maxInactiveIntervalInSeconds
Jedis的maxInactiveIntervalInSeconds/**在新创建之前以秒为单位设置key的最大存活时间, * Sets the maximum inactive interval in seconds between requests before newly created * sessions will be invalidated. A negative time ...原创 2018-09-04 15:23:24 · 7174 阅读 · 1 评论 -
面向对象理解
使用面向对象的四大特点:可维护可复用可扩展灵活性好实际开发中,客户的需求永远不会是一成不变的,那么也就意味着我们要随时进行修改代码的操作。如果客户提出一个需求,我们就随即在源代码的基础上修改代码,这样确实可行。但是,如果客户的需求变更很频繁,如果我们为了满足实现这次的需求,而改动了其他地方的代码,那样就还需要在开发这个需求的同时,可能还需要更改之前功能的代码,这样是很麻烦费事的。...原创 2018-08-18 15:23:34 · 155 阅读 · 0 评论 -
quartz动态新增、修改、删除
前言:最近项目中要开发一个可以让用户自己定义推送时间,推送内容的类似订阅的功能。想了想实现方式,task、quartz、Thread。最终还是用了比较专业的quartz。quartz实现了任务、触发器、调度器的分离,符合java开发的分离原则,很容易上手。废话不说直接贴代码了。1.定义job导出类(实现job接口,所有的任务都是用这个类,稍后会解释) public class MyQ...原创 2018-08-03 11:25:51 · 3730 阅读 · 0 评论 -
mybatis foreach Collection的List、Array、Map
mybatis的foreach官方文档解释:对一个集合进行遍历,通常是在构建IN条件语句的时候使用。例如&amp;amp;lt;select id=&amp;quot;selectPostIn&amp;quot; resultType=&amp;quot;domain.blog.Post&amp;quot;&amp;amp;gt; SELECT * FROM POST P WHERE ID in原创 2018-08-07 12:33:28 · 465 阅读 · 0 评论 -
LinkHashMap之HollowWorld
先写一个关于排序的测试public static void main(String[] args) { int initialCapacity = 10;// 自定义初始化容量 float loadFactor = 0.75f;// 装载因子 boolean accessOrder = true;// 访问排序方式 // 创建实例...原创 2018-08-14 17:51:03 · 238 阅读 · 0 评论 -
LinkHashMap详解
LinkedHashMap概述:LinkedHashMap是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 之所以这样说。是因为链接散列映射可以设置访问顺序:accessOrder。通过设置这个值false,可以让访问顺序按照插入顺序显示,accessOrder为tr...转载 2018-08-14 17:02:11 · 1554 阅读 · 0 评论 -
ProrityQuenue优先队列初次使用
PriorityQueNue优先队列的小测试: public static void main(String[] args) { MyComparator c = new MyComparator(); PriorityQueue<QuenueTest> pq = new PriorityQueue<>(3, c); ...原创 2018-08-14 14:59:24 · 444 阅读 · 0 评论