随笔分类 -  Java

Java并发编程
摘要:使用ExecutorService+Callable ExecutorService executor = Executors.newFixedThreadPool(4); executor.invokeAll(xxxList.stream().map(Task:new).collect(Colle 阅读全文

posted @ 2021-04-25 16:39 碎羽love星谊 阅读(22) 评论(0) 推荐(0)

Java中的Stream和Iterable
摘要:Stream stream() xxxList.stream() map() xxx.map(yyy::zzz) xxx.map(yyy::new) collect() xxx.collect(Collectors.toList()); Iterable forEach xxx.forEach(yy 阅读全文

posted @ 2021-04-25 16:28 碎羽love星谊 阅读(194) 评论(0) 推荐(0)

Java开发中的代理问题
摘要:为java程序设置代理 系统环境变量上设置的代理并没有用,不会作用于java程序运行时发起的http请求 为jvm设置代理 可以设置在Java命令上 可以设置在Eclipse等IDE的Run/Debug Configuration的jvm参数上(也相当于加在最终执行的命令上?) -Dhttp.pro 阅读全文

posted @ 2021-04-23 14:48 碎羽love星谊 阅读(264) 评论(0) 推荐(0)

Spring Boot使用xxx.properties配置文件
摘要:指定profile/xxx.properties配置文件 在main函数上指定 @PropertySource(value= {"classpath:redis.properties","classpath:database.properties"} , name="ss" , encoding=" 阅读全文

posted @ 2021-02-01 17:07 碎羽love星谊 阅读(203) 评论(0) 推荐(0)

JNLP
摘要:JNLP(Java Network Launching Protocol )是java提供的一种可以通过浏览器直接执行java应用程序的途径,它使你可以直接通过一个网页上的url连接打开一个java应用程序。 Java桌面应用程序以JNLP 的方式发布,如果版本升级后,不需要再向所有用户发布版本,只 阅读全文

posted @ 2021-01-22 17:17 碎羽love星谊 阅读(436) 评论(0) 推荐(0)

Java中的数据结构
摘要:Map merge 阅读全文

posted @ 2020-04-27 09:55 碎羽love星谊 阅读(110) 评论(0) 推荐(0)

Java中的设计模式 - Builder
摘要:定义 使用 阅读全文

posted @ 2020-04-26 14:10 碎羽love星谊 阅读(186) 评论(0) 推荐(0)

LeetCode - 176. 第二高的薪水
摘要:题目 来源:力扣(LeetCode) 描述 我们提供了一个类: 三个不同的线程将会共用一个 Foo 实例。 线程 A 将会调用 one() 方法 线程 B 将会调用 two() 方法 线程 C 将会调用 three() 方法 请设计修改程序,以确保 two() 方法在 one() 方法之后被执行,t 阅读全文

posted @ 2020-01-02 14:45 碎羽love星谊 阅读(98) 评论(0) 推荐(0)

Java单元测试 - Junit
摘要:Eclipse或STS中有可能需要手动在build path中增加相应版本的Junit依赖 JUnit 4 @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment= RANDOM_PORT) @RunWith(SpringJUnit4C 阅读全文

posted @ 2019-12-31 16:16 碎羽love星谊 阅读(301) 评论(0) 推荐(0)

JVM垃圾回收(GC)
摘要:参考 "JVM调优总结" "https://msd.misuland.com/pd/2884250171976191642" "JVM垃圾回收算法" 只发生在heap(堆)中 分类 次数上频繁收集Young区(年轻代),Minor GC 次数上较少收集Old区(老年代),Full GC 基本上不动P 阅读全文

posted @ 2019-12-18 11:19 碎羽love星谊 阅读(153) 评论(0) 推荐(0)

分布式锁
摘要:什么是分布式锁 线程锁 主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段。线程锁只在同一JVM中有效果,因为线程锁的实现在根本上是依靠线程之间共享内存实现的,比如synchronized是共享对象头,显示锁Lock是共享某个变量(state)。 进程锁 阅读全文

posted @ 2019-12-12 11:07 碎羽love星谊 阅读(135) 评论(0) 推荐(0)

Java后端知识体系总结
摘要:Java JVM "字节码与ClassLoader" "垃圾回收" "VisualVM(JVisualVM)" 源码 HashMap 多线程 异常处理 "异常处理(参考阿里巴巴Java开发手册)" 设计模式 数据库 分库分区分表 索引 sql优化 MySQL PostgreSQL ORM 中间件 R 阅读全文

posted @ 2019-12-12 10:19 碎羽love星谊 阅读(242) 评论(0) 推荐(0)

2. 阿里巴巴Java开发手册主题 - 编程规约
摘要:1. 命名风格 强制 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 反例:_name / __name / $name / name_ / name$ / name__ 代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。 说明:正确的英文拼写和语法可以 阅读全文

posted @ 2019-12-02 14:58 碎羽love星谊 阅读(176) 评论(0) 推荐(0)

2. 阿里巴巴Java开发手册主题 - MySQL数据库
摘要:建表规约 命名 强制 表达是与否概念的字段,必须使用is_xxx的方式命名,数据类型是unsigned tinyint(1表示是,0表示否)。 说明:任何字段如果为非负数,必须是unsigned。 注意:POJO类中的任何布尔类型的变量,都不要加is前缀,所以,需要在<resultMap>设置从is 阅读全文

posted @ 2019-11-29 15:54 碎羽love星谊 阅读(386) 评论(0) 推荐(0)

2. 阿里巴巴Java开发手册主题 - 单元测试
摘要:经验总结 最终目的是,使用不同的参数调用一次或多次被测函数,保证跑到所有的分支代码。 如果有返回值,每种情况的返回值要进行判断是否符合预期。 如果依赖其他函数、接口等,那么要进行mock,且mock的数据的结构和值要合适,这样才能跑到所有的分支并保持正确的逻辑。且并不关心被依赖的函数或接口的逻辑,只 阅读全文

posted @ 2019-11-26 17:19 碎羽love星谊 阅读(595) 评论(0) 推荐(0)

Java的产生
摘要:C语言帝国 贴近硬件,运行极快,效率极高。 指针和内存管理 虽然指针强大无比,能直接操作内存,但是没有提供工具去做越界的检查,导致新手程序员很容易出错。 放任内存管理,自己分配的空间自己去释放。 关键这些问题编译期不能发现,运行后才出问题,调试麻烦。 代码的可移植性事实上并不好,需要使用标准库才行。 阅读全文

posted @ 2019-11-26 16:12 碎羽love星谊 阅读(98) 评论(0) 推荐(0)

持久化与JDBC与OR框架
摘要:持久化 为了避免重启后用户数据丢失,所以要把数据放到硬盘上,但是因为硬盘很慢,所以不能替代内存将对象直接放在硬盘上 可以使用序列化、数据库等手段 序列化 将内存中的重要数据适时序列化到硬盘上,然后下次上电后反序列化回内存中 效率低 关系型数据库 特点 强大的理论基础 关系代数、关系演算 支持大规模的 阅读全文

posted @ 2019-11-26 16:12 碎羽love星谊 阅读(196) 评论(0) 推荐(0)

字节码文件与ClassLoader
摘要:使用 javac 命令编译.java源代码文件生成.class字节码文件 使用javap c v XXX.class可以查看字节码文件内容 ClassLoader 将class字节码文件加载到JVM虚拟机中 搜索class字节码文件的范围是由classpath中配置的一个或多个路径来决定的,如果执行 阅读全文

posted @ 2019-11-26 14:17 碎羽love星谊 阅读(217) 评论(0) 推荐(0)

3. 技术专题 - 编程语言的演化、对比
摘要:基本语法 Java C# C++ Typescript 基本数据类型(值类型) boolean, byte, short, int, long, float, double, char bool, sbyte, short, int, long, byte, unshort, uint, ulong 阅读全文

posted @ 2019-11-12 10:40 碎羽love星谊 阅读(160) 评论(0) 推荐(0)

Java单元测试
摘要:一般一个被测试类对应一个测试类,test包下面测试类结构和main包下面的被测试类的结构类似 使用@Mock来标识要返回假数据的类 指定返回什么假数据:when(mockObject.getApi()).thenReturn(someData); 使用@InjectMocks来标识和注入要被测试的类 阅读全文

posted @ 2019-09-28 17:21 碎羽love星谊 阅读(108) 评论(0) 推荐(0)

导航