编程研发工作日记_廖万忠_2016_2017
2016-12-10
计算机编程的任何业务逻辑都是涉及数据库里的一张表或者是几张表的数据操作。
a) 项目开发就是一个实体设计的过程,java po对象所对应的及时数据库里的表结构。
b) 项目开发的过程就是从无到有的一个过程,其实就是一个一对多的数据建模 ...
SpringBoot--自动配置的替换和关闭
SpringBoot启用自动配置需要使用@EnableAutoConfiguration注解,整个应用只需一个该注解,因此,只要将该注解加到主配置类即可。
由于 @SpringBootApplication是由@EnableAutoConfiguration、@ComponentScan、@Configuration这三个组合的,因此,只要项目中使用了@SpringBootApplication,也自然使用了@EnableAutoConfigura ...
工作中常见的OOM?你了解JVM调优吗?
工作中常见的6种OOM问题
堆内存OOM
堆内存OOM是最常见的OOM了。
出现堆内存OOM问题的异常信息如下:
java.lang.OutOfMemoryError: Java heap space
此OOM是由于JVM中heap的最大值,已经不能满足需求了。
举个例子:
@Test public void test01() {
List list = Lists.newArrayList();
while (true) {
list.add(new O ...
SpringBoot--学会配置日志
理解SpringBoot 的日志设计
在项目中导入spring-boot-starter.jar依赖,它会传递 导入spring-boot-starter-logging.jar依赖,依赖关系如下图:
spring-boot-starter-logging.jar依赖三个jar包:
logback-classic.jar:它传递依赖于logback-core.jar和slf4j-api.jar
log4j-to-slf4j.jar:它传递依赖于log4j-api.jar和slf4j-a ...
Java研发工作日记 Wanzhong Liao 2016-9-25
Java研发工作日记
Wanzhong Liao
2016-9-25
枚举enumeration 数据类型的本质是常量数据类型值的数组Array集合。
a) 所有的数据结构都是基于数组设计而成的。
b) 一个常量值,我们可以称之为常量数值,多个常量数值的集合就是枚 ...
剑指offer-12、数值的整数次方
题⽬描述
给定⼀个 double 类型的浮点数 base 和 int 类型的整数 exponent 。求 base 的exponent
次⽅。保证 base 和 exponent 不同时为 0 。
示例1:
输⼊:2.00000,3
返回值:8.00000
示例2:
输⼊:2.10000,3
返回值:9.26100
思路及解答
暴力求解
如果使⽤暴⼒解答,那么就是不断相乘,对于负数⽽⾔,则是相除,并且符号 ...
java 导入dbf和excel解析 导出dbf和excel
导入dbf和excel解析:
点击查看代码
package com.test.server.utils;
import com.linuxense.javadbf.DBFReader;
import lombok.extern.slf4j.Slf4j;
import java.io.ByteArrayInputStream;
import java.io.FileInputStream;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.H ...
剑指offer-11、⼆进制中1的个数
题⽬描述
输⼊⼀个整数,输出该数 32 位⼆进制表示中 1 的个数。其中负数⽤补码表示。
示例1
输⼊:10
返回值:2
说明:⼗进制中10的32位⼆进制表示为0000 0000 0000 0000 0000 0000 0000 1010,其中有两个1。
示例2
输⼊:-1
返回值:32
说明:负数使⽤补码表示 ,-1的32位⼆进制表示为1111 1111 1111 1111 1111 1111 1111 ...
07 - 面向对象编程(高级部分三)
一、类中的成分 - 代码块
基本介绍
代码块是类的 5 大成分之一(成员变量、构造器、方法、代码块、内部类)。
代码块分为两种:
静态代码块:
格式:static {}
特点:类加载时自动执行,由于类只会加载一次,所以静态代码块也只会执行一次。
作用:完成类的初始化,例如,对静态变量的初始化赋值。
//示例
public cla ...
SpringBoot--Profile你用对了吗
所谓Profile,就是一组配置环境,各种程序组件的合集。
实际开发中,经常要在不同的环境间切换,比如,开发时应用的是开发场的部署环境;测试时,用的是测试场的部署环境;上线时,用的是产品场的部署环境。传统做法是手动更改配置信息,但实际项目中配置信息比较多,这样做起来很麻烦,还容易出错,而Profile就是来解决这 ...
HashMap居然可以和它直接合体???
LinkedHashMap集合继承于HashMap,学习LinkedHashMap重点对比 LinkedHashMap 与 HashMap 的异同
特别强调两者的 Entry(节点)数据结构、数据结构的不同带来的特性差异、HashMap 的后置处理机制及最少访问删除策略。
LinkedHashMap = HashMap + LinkedList ?
就像这幅图一样?
1. Entry(节点)数据结构
1.1. HashMap.N ...
又一款基于 SpringBoot + Vue 实现的开源新零售商城系统!
大家好,我是 Java陈序员。
之前给大家介绍过两款支持多端操作的开源商城系统。
邻家小铺!一个基于 SpringBoot 和 Vue 的商城系统!
后台管理 + H5 + 微信小程序!又一个开源轻量的小商城!
今天,再给大家推荐一款基于 SpringBoot + Vue 实现的开源新零售商城系统,包含移动端、PC 后台!
关注微信公众号:【Java陈序员 ...
垃圾回收算法有哪些?了解哪些垃圾回收器?
垃圾回收算法有哪些?
垃圾回收算法有四种,分别是标记清除法、标记整理法、复制算法、分代收集算法。
标记清除算法:首先利用可达性去遍历内存,把存活对象和垃圾对象进行标记。标记结束后统一将所有标记的对象回收掉。这种垃圾回收算法效率较低,并且会产生大量不连续的空间碎片。
复制清除算法:半区复制,用于新生代垃 ...
SpringBoot--如何整体读取多个配置属性及其相关操作
上篇文章讲到使用@Value注解每次只能读取一个配置属性,若要整体读取多个属性,或者读取具有某种结构关系的一组属性可使用@ConfigurationProperties注解来处理。
@ConfigurationProperties注解的两种用法:
修饰属性处理类:当@ConfigurationProperties修饰的类被部署为容器中的Bean时,改注解指定的属性会被注入该Bean的 ...
SpringBean的静态字段/静态属性(static的field),支持Apollo配置热更新吗?
我们知道,springbean的静态field可以通过显式的setter方法(实例方法)实现注入。
下面LaborFeeCalculator,其中的 basePercentage 是一个静态field。通过显式@Value的setter方法来进行配置参数赋值。
@Component
public class LaborFeeCalculator {
private static FeeRate basePercentage;
@Value("${boss ...
Java简历、面试、试用期、转正
前言
这个内容其实一直在我的GitHub中,但我最近应要求面了一些人,整体感受让我头疼得很,所以添加一些细节点后拿到博客园来了,顺便夹杂着吐吐槽,
面试前准备
提前准备
1、使用招聘网站列出招聘的技术清单
百度百聘:https://yiqifu.baidu.com/g/aqc/joblist?q=Java开发
查岗位招聘情况:https://index.baidu.com/v2/i ...
NBA巨星詹姆斯表变老嫂子了?这锅Viggle Ai得背/Ai视频创作/Ai魔性视频创作/Ai优质视频创作
最近我使用Viggle Ai创作视频有点上头,还对自己的偶像下手了,不得不说这效果挺魔性,原本就是一次尝试,效果却意外的惊喜。实在忍不住分享给大家:
原本Viggle Ai视频角色替换要求形体和装扮要近似才能效果好,但意外将男性角色替换后,保留了男性特征,却出现了视频中女性的柔媚特点,这也导致詹姆斯变成了老嫂子,竟然 ...
榨干 Claude Code 的 16 个实用小技巧(高端玩法,建议收藏!)
大家好,我是R哥。
这几年 AI 编程工具越来越火,尤其是 Cursor、Claude Code 这种终端级 AI 编程助手,用好了真的能让程序员开发效率直接起飞。
但很多同学用 AI 写代码,常常卡在 “不会提问”、“不会拆需求”、“不会控制上下文”,只会傻傻提问,很多实用技巧都不会,结果总是写不出自己想要的效果。
今天这篇笔记,R ...
Java开发笔记(一百五十五)生成随机数的几种途径
随机数生成是一个常见的业务场景,比如摇号、抽奖等等都需要随机数。Java代码主要有三种随机数的生成方式,包括Math.random、Random、ThreadLocalRandom等,分别说明如下:
1、Math.random
Java代码调用Math.random()会返回一个大于等于0.0且小于1.0的双精度类型随机数,即取值区间落在[0,1)。可见该方式获取的随机数是个小 ...
vivo Pulsar 万亿级消息处理实践(3)-KoP指标异常修复
作者:vivo 互联网大数据团队- Chen Jianbo
本文是《vivo Pulsar万亿级消息处理实践》系列文章第3篇。
Pulsar是Apache基金会的开源分布式流处理平台和消息中间件,它实现了Kafka的协议,可以让使用Kafka API的应用直接迁移至Pulsar,这使得Pulsar在Kafka生态系统中更加容易被接受和使用。KoP提供了从Kafka到Pulsar的无缝转 ...