
java
王旻烺Sanm
打杂
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java常用的一些正则
[正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$"。 只能输入n位的数字:"^\d{n}$"。 只能输入至少n位的数字:"^\d{n,}$"。 只能输入m~n位的数字:。"^\d{m,n}$" 只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。 只能输入有两位小数的正实数:"^[0-9]+(.[0...原创 2020-03-12 18:40:38 · 309 阅读 · 3 评论 -
死磕Spring Data JPA---第二篇
JPA基础 它山之石可以攻玉,我们先学习下JPA的一些知识。 JPA @Id 和@GeneratedValue 注解的详解 JPA通用策略 通过annotation来映射hibernate实体的,基于annotation的hibernate主键标识为@Id, 其生成规则由@GeneratedValue设定的.这里的@id和@GeneratedValue都是JPA的标准用法。 可以观察下注...原创 2020-01-04 20:20:07 · 528 阅读 · 3 评论 -
死磕Spring Data JPA---第一篇
简介 随着发展目前市场上ORM技术选择主要分为2大类: mybatis和jpa。至于2者的选择或者说优缺点,每个人有心理的自己判断。这里不做赘述。首先对ORM技术做一个简单的叙述: ORM:即Object-Relationl Mapping,它的作用是在关系型数据库和对象之间作一个映射,这样,我们在具体的操作数据库的时候,就不需要再去和复杂的SQL语句打交道,只要像平时操作对象一样操作它就...原创 2020-01-04 20:08:50 · 219 阅读 · 0 评论 -
线程池学习 --- 创建线程的几种简单方式
线程池的概念: 线程池就是首先创建一些线程,它们的集合称为线程池。使用线程池可以很好地提高性能,线程池在系统启动时即创建大量空闲的线程,程序将一个任务传给线程池,线程池就会启动一条线程来执行这个任务,执行结束以后,该线程并不会死亡,而是再次返回线程池中成为空闲状态,等待执行下一个任务。 线程池的工作机制 在线程池的编程模式下,任务是提交给整个线程池,而不是直接提交给某个线程,线程池...原创 2020-01-02 14:22:15 · 250 阅读 · 0 评论 -
List从入门到源码
前言 List是java重要的数据结构之一,我们经常接触到的有ArrayList、Vector(由于此集合基本上被ArrayList取代,本文不做讲解)和LinkedList三种。他们的类图如下: 数组可变大小: 大概是把数组复制进新数组、扩展 Vector:内部是数组数据结构;同步的,线程安全;JDK1.0的时候就只有一种集合结构Vector;几乎不用了;增删查询都很慢。 ArrayList...原创 2019-12-16 09:48:19 · 175 阅读 · 0 评论 -
final,static,this,super 关键字总结
final 关键字 final关键字主要用在三个地方:变量、方法、类。 对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象。 当用final修饰一个类时,表明这个类不能被继承。final类中的所有成员方法都会被隐式地指定为final方法。 使用final方法的原因有两个。第一...原创 2019-11-26 17:19:27 · 146 阅读 · 0 评论 -
数据流教程
数据流工作的方式: List<String> myList = Arrays.asList("a1","a2","b1","c1","c2"); myList.stream().filter(s -> s.startsWith("c")) .map(String::toUpperCase) .sorted() .forEach(Sy...原创 2019-06-26 17:55:18 · 500 阅读 · 0 评论