自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 资源 (1)
  • 收藏
  • 关注

原创 阿里巴巴Java开发规范——异常日志

对大段代码进行 try-catch,使程序无法根据不同的异常做出正确的应激反应,也不利于定位问题,这是一种不负责任的表现。:用户注册的场景中,如果用户输入非法字符,或用户名称已存在,或用户输入密码过于简单,在程序上作出分门别类的判断,并示给用户。

2024-05-22 18:46:37 275

原创 阿里巴巴Java开发规范——编程规约(5)

取反逻辑不利于快速理解,并且取反逻辑写法必然存在对应的正向逻辑写法。使用if (x < 628) 来表达 x 小于628。使用if (!(x >= 628)) 来表达 x 小于628。

2024-05-15 00:02:15 531

原创 阿里巴巴Java开发规范——编程规约(4)

正例:注意线程安全,使用 DateUtils。@Override说明:如果是JDK8 的应用,可以使用Instant 代替Date,LocalDateTime 代替Calendar,DateTimeFormatter 代替SimpleDateFormat,官方给出的解释:simple beautiful strong总结来说,为了确保线程安全,避免将SimpleDateFormat定义为静态变量,或者通过同步、使用ThreadLocal、采用线程安全的库类等方式来解决潜在的并发问题。

2024-05-08 08:28:07 818

原创 阿里巴巴Java开发规范——编程规约(3)

说明:菱形泛型,即 diamond,直接使用<>来指代前边已经指定的类型。// <> diamond 方式// 全省略方式。

2024-04-22 22:57:59 950

原创 阿里巴巴Java开发规范学习——编程规约(2)

1) 第二行相对第一行缩进 4 个空格,从第三行开始,不再继续缩进,参考示例。2) 运算符与下文一起换行。3) 方法调用的点符号与下文一起换行。4) 方法调用中的多个参数需要换行时,在逗号后进行。5) 在括号前不要换行,见反例。

2024-04-17 00:16:00 708

原创 阿里巴巴Java开发规范学习——编程规约(1)

抽象类命名使用Abstract或Base开头这个规则建议在命名抽象类时,以Abstract或Base作为前缀,以明确表示此类是一个抽象类,即不能被实例化,主要用于定义通用行为和接口,供子类继承实现。这样命名有助于开发者一眼识别出这是一个抽象类,了解其设计意图和用途。或。异常类命名使用Exception结尾异常类通常用于表示程序运行过程中遇到的错误情况。遵循这一规则,将Exception作为后缀添加到异常类名中,可以清晰地标识出此类是一个异常类,便于理解和管理程序中的错误处理逻辑。或。抽象类中,可以以。

2024-04-09 23:47:34 756

原创 spring内部类的实例化

spring内部类实例化异常,通过spring源码分析并解决

2022-10-03 00:48:20 421 1

原创 Spring日志引用原理

理解spring中日志框架选用流程,通过绑定器、桥接器实现统一项目日志

2022-10-02 19:56:01 949

原创 “Stop the World”简单分析

1.引言有一个问题,GC的时候还能创建新的对象吗?假设允许GC期间,还可以继续让系统在年轻代的Eden区里创建新的对象,会是什么样的场景?根据上图所示,如果垃圾回收器一边想办法将Eden和Survivor2区里的存活对象标记出来转移到Survivor1区,然后还在想办法把Eden和Survivor2区里的垃圾对象清理掉,结果这个时候系统程序还在不停地在Eden里创建新的对象。这些新的对象有的很快成为了垃圾对象,有点是还有人引用的存活对象,怎么办?其实在垃圾回收过程中,同时还允许.

2020-07-20 23:37:28 373

原创 JVM中年轻代里的对象什么情况下进入老年代?以及老年代垃圾回收算法-标记整理算法

1.躲过15次GC之后进入老年代系统刚启动时,创建的各种各样的对象,都是分配在年轻代里。随着慢慢系统跑着跑着,年轻代满了,就会出发MinorGC ,可能1%的少量存活对像转移到空着的Survivor区中然后系统继续运行,继续在Eden区里分配对象.............类似静态变量等引用的对象,可能存活时间会久一些,无论年轻代中怎么垃圾回收,类似这种对象都不会被回收掉。而此对象每次在年轻代里躲过一次MinorGC被转移到一块Survivor区域中,他的年龄就会增加一岁默认的..

2020-07-20 22:24:17 4867

原创 JVM年轻代的垃圾回收算法-复制算法

1.背景引入针对年轻代的垃圾回收算法,叫做复制算法如下图,首先吧年轻代的内存分为两块:假设有如下代码,在“loadReplicasFromDisk()”方法中创建了对象,此时对象会分配在年轻代其中一块内存空间里而且是由“main线程”的栈内存中的“loadREplicasFromDisk()”方法的栈帧内的局部变量来引用的public class Kafka { public static void main(String[] args) { loadRep

2020-07-20 10:40:25 2069

原创 JVM内存中什么情况下一个对象会被垃圾回收

一旦年轻代快满了,那么垃圾回收的时候,到底哪些对象是能回收的,哪些对象是不能回收的呢?1.被哪些变量引用的对象是不能回收的?JVM中使用了一种可达性分析算法来判定哪些对象是可以被回收的,哪些对象是不可以被回收的这个算法的意思,就是说对每个对象,都分析一下有谁在引用他,然后一层一层往上去判断,看是否有一个GCRoots。在JVM规范中,局部变量就是可以作为GCRoots的只要一个对象被局部变量引用了,那么就说明他有一个GCRoots,此时就不能被回收了在JVM...

2020-07-20 09:35:21 614

原创 JVM内存相关的核心参数

-Xms:Java堆内存的大小-Xmx:Java堆内存的最大大小-Xmn:Java堆内存中的年轻代大小,扣除年轻代剩下的就是老年代的内存大小-XX:MetaspaceSize:永久代大小-XX:MaxMetaspaceSize:永久代最大大小-Xss:每个线程的栈内存大小JDK1.8之后,-XX:PermSize和-XX:MaxPermSize被替换为了-XX:MetaspaceSize和-XX:MaxMetaspaceSize;...

2020-07-20 00:07:17 202

原创 JVM年轻代和老年代中对象的分配与流动

平时代码创建出来的对象,一般分为两种: 一种是短期存活的,分配在Java堆内存之后,迅速使用完就会被垃圾回收,会分配到年轻代里。 另一种是长期存活的,需要一直生存在Java堆内存里,让程序后续不停地去使用,会分配到老年代里。一、对象什么时候进入年轻代?什么时候进入老年代?(1)大部分正常对象都优先在年轻代分配内存public class Kafka { private static ReplicaFetcher fetcher = new Repli...

2020-07-19 23:42:55 395

原创 (入门)JVM分代模型:年轻代、老年代、永久代

一、堆内存的年轻代和老年代我们在代码中创建的对象,都会进入到Java堆内存中;而根据写代码的方式不同,采用不同的方式来创建和使用对象,其对象的生命周期是不同的。所以JVM将Java堆内存划分了两个区域,分别是年轻代和老年代。年轻代,顾名思义,就是把创建和使用完之后立马就要回收的对象放在里面;老年代,就是创建之后需要一直长期存在的对象放在里面。比如下面的代码:public class Kafka { private static ReplicaFetcher fet

2020-07-19 23:00:41 493

原创 JVM的类加载机制

一、首先看一个简单的JVM整体运行原理简单说,首先是".java"代码文件编译成".class"字节码文件,然后类加载器把".class"字节码文件中的类加载到JVM中,接着JVM来执行这些类的代码。二、类加载过程类加载到使用,经历以下过程加载->验证->准备->解析->初始化->使用->卸载(1)JVM会在什么情况下去加载一个类?当代码中用到这个类的时候。例如有一个类(DemoMain.class),里面有一个main方法作为主入口一旦J

2020-07-18 21:12:50 172

原创 Mybatis-generator使用

1,pom.xml: <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</...

2020-03-06 23:08:39 118

原创 调用有赞云接口实例

获取有赞微商城token请点击有赞云接口官方介绍:此接口只需要传递一个参数:订单号首先看有赞给的请求示例给参数对象设置参数即可:Token token = new Token("你的accessToken");YouzanTradeGet youzanTradeGet = new YouzanTradeGet();//创建参数对象YouzanTr...

2019-11-22 17:17:20 1658

原创 调用有赞云api的前置工作——获取token

1、首先进入有赞云控制台,创建应用2、点击已创建的应用进入控制台,应用概况,查看client_id和client_secret3、点击授权信息,获取grantId3.将clientId、clientSecret、grantId填入下面即可 //初始化有赞客户端 DefaultYZClient yzClient = n...

2019-11-22 16:27:39 2008

原创 java maven 引入有赞云SDK

1、首先在pom.xml文件中引入代码库 <repositories><!-- 代码库 --> <repository> <id>baymax-releases</id> <name>Nexus Release Repository</name&...

2019-11-22 16:06:52 3816 3

原创 Vue.js简单入门

目录一、环境搭建二、指令2.1 插值表达式2.1.1 花括号2.1.2 v-text和v-html2.2 v-model2.3 v-on2.3.1 基本用法2.3.2 事件修饰符2.3.3 按键修饰符2.3.4 组合按钮2.4 v-for2.4.1 遍历数组2.4.2 数组角标2.4.3 遍历对象2.4.4 key → 提高渲染...

2019-08-24 17:56:06 159

原创 Spring Cloud — Feign

一、简介Feign可以把Rest的请求进行隐藏,伪装成类似SpringMVC的Controller一样。你不用再自己拼接url,拼接参数等等操作,一切都交给Feign去做。二、 入门2.1 引入依赖在消费者pom文件中引入依赖<dependency> <groupId>org.springframework.cloud</groupI...

2019-08-23 00:27:37 90

原创 Spring Cloud—Hystrix

一、简介Hystrix,英文意思是豪猪,全身是刺,看起来就不好惹,是一种保护机制。Hystrix也是Netflix公司的一款组件。Hystix是Netflix开源的一个延迟和容错库,用于隔离访问远程服务、第三方库,防止出现级联失败。二、入门2.1 引入依赖在生产者的pom文件中引入Hystrix依赖<dependency> <groupId&...

2019-08-22 23:34:11 82

原创 算法学习笔记—复杂度分析(下)

极客时间|数据结构与算法之美 学习笔记,摘自课件一、最好、最坏时间复杂度// n 表示数组 array 的长度int find(int[] array, int n, int x) { int i = 0; int pos = -1; for (; i < n; ++i) { if (array[i] == x) pos = i; } return p...

2019-08-22 10:56:03 147

原创 Spring Cloud Eureka注册中心

目录一、原理图二、搭建EurekaServer2.1 完整pom文件2.2 application.yml配置三、注册到Eureka3.1 修改demo-service-provider工程(生产者)3.1.1 在pom.xml中,添加springcloud的相关依赖3.1.2 修改application.yml配置3.1.3 在引导类上开启Eureka...

2019-08-22 01:16:15 146

原创 算法学习笔记—时间复杂度分析(上)

极客时间|数据结构与算法之美 学习笔记,摘自课件时间复杂度分析目录时间复杂度分析几种常见时间复杂度实例分析1.O(1)2. O(logn)、O(nlogn)3. O(m+n)、O(m*n)空间复杂度分析内容小结课后思考1. 只关注循环执行次数最多的一段代码 int cal(int n) { int sum = 0; int i ...

2019-08-21 00:45:06 363

原创 SpringBoot基本配置、整合笔记

一、SpringBoot的启动类package cc.demo.springboot;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;/** * springboot的启动类 * 1.需要...

2019-08-20 22:05:21 109

原创 centos6.7安装mysql依赖安装失败

输入以下命令安装依赖yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6 --setopt=protected_multilib=false

2019-08-06 17:00:46 347

原创 Spring mvc文件上传的配置

springmvc.xml中:<!-- 文件上传 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 设置上传文件的最大尺寸为5MB --> <property...

2019-08-05 21:06:01 115

原创 MVC+AJax+JSon实现简单的单表增删改查

一、附html和学生类代码student.html其中id为'tt'的表用来显示学生信息id为'toup'的div用来做更改信息的回显,先设置style使div隐藏id为'toad'的div是用来添加学生的输入信息框,也设置style使div隐藏<!DOCTYPE html><html><head><meta charset...

2019-07-20 10:09:00 709

原创 原生ajax实现

//创建XMLHttpRequest对象 var xmlhttp; /* 检查浏览器是否支持 XMLHttpRequest 对象。如果支持,则创建 XMLHttpRequest 对象。如果不支持,则创建 ActiveXObject,主要针对IE5和IE6 */ if (window.XMLHttpRequest) {// code for IE7+, F...

2019-07-19 16:42:34 74

原创 SQL多表查询、事务、DCL

多表查询:* 查询语法: select 列名列表 from 表名列表 where....* 准备sql # 创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME) VALUES ('开发部'),('市场部'),('...

2019-07-08 17:34:22 92

转载 SQL的约束、设计

约束* 概念: 对表中的数据进行限定,保证数据的正确性、有效性和完整性。 * 分类: 1. 主键约束:primary key 2. 非空约束:not null 3. 唯一约束:unique 4. 外键约束:foreign key* 非空约束:not null,值不能为null 1. 创建表时添加约束 CREATE TABLE stu( id INT, NAME V...

2019-07-08 15:37:43 214

转载 SQL基础,SQL单表操作(MySQL)

长时间不敲sql语句,各种语法忘得一干二净,特此参考一些资料,将一些SQL基础以及单表操作总结一下分享给大家,供同我一样有“健忘症”的入门者参考学习~一、SQL概述1.什么是SQL? Structured Query Language:结构化查询语言 其实就是定义了操作所有关系型数据库的规则。每一种数据库操作的方式存在不一样的地方,称为“方言”。 2.SQL通用语法 1....

2019-06-08 17:38:05 291

原创 Java—PTA 点是否在圆内?

编写程序,提示用户输入一个点(x,y),然后检查这个点是否在以原点(0,0)为圆心、半径为10的圆内。输入格式:输入任意一个点的x轴和y轴坐标值,且两个值之间空格分隔。输出格式:若点在圆内,输出1,否则输出0。输入样例:4 5输出样例:1代码import java.util.Scanner;public class Main { pub...

2019-06-06 17:31:19 3545

原创 Java—PTA 用if、switch两种方法输出月份

分别用if、switch两种方法编写根据0~11的整数转换为十二月份的程序片断,假定数字0对应一月份。输入格式:每一行输入0~12之间的一个数字输出格式:输出该数字对应的月份输入样例:0输出样例:请输入月份:2三月份请输入月份:12请重新输入月份代码一(用if语句):import java.util.Scanner;publi...

2019-06-06 16:54:45 4946

原创 Java—PTA 习题 十进制转十六进制

编写一个程序,提示用户输入0~15之间的一个整数,显示其对应的十六进制数。输入格式:输入一个0~15之间的整数。输出格式:若输入的整数在0~15范围内,则输出对应的十六进制数。否则输出“Invalid input”。输入样例:11输出样例:B经过测试十几遍成功提交的代码...import java.util.Scanner;public c...

2019-06-06 16:09:13 2982

原创 java暴力反射私有方法(含参)和私有字段

一、User类package com.wsw.demo7;public class User { private String name; private Integer id; private User() {} private User(String name, Integer id) { this.name = name; this.id = id; ...

2019-06-05 15:05:59 1246

原创 java单列集合

一、迭代器Iterator:迭代器,它是Java集合的顶层接口(不包括 map 系列的集合,Map接口 是 map 系列集合的顶层接口)  Object next():返回迭代器刚越过的元素的引用,返回值是 Object,需要强制转换成自己需要的类型  boolean hasNext():判断容器内是否还有可供访问的元素迭代器的使用: //...

2019-06-03 19:54:10 638

原创 js对象和jQuery对象的相互转换

因为js dom对象和jQuery对象的函数不能互相使用,所以往往需要对两者进行转换方法代码如下: <script type="text/javascript"> // 直接获得js对象 var input1 = document.getElementById('input1'); // 直接获得jquery对象 var $input1 = ...

2019-06-02 17:23:48 187

java面试资料整理汇总

面试资料java

2022-10-09

ssh+mysql实现的超市进销存管理系统项目源码.rar

ssh+mysql实现,包含项目源码,mysql数据库文件,项目使用教学视频以及论文文档。本项目使用eclipse完成。

2019-06-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除