首页
学习
活动
专区
工具
TVP
发布
您找到你想要的搜索结果了吗?
是的
没有找到

Java各种O

Java中数据封装会被命名为各种O,常见有PO、VO、DTO、BO、POJO。...1.PO PO是Persistant Object缩写,即持久化对象,通常对应数据模型,可以简单理解为一个PO实例对应数据库中一条记录,操作该实例即可以操作数据库中对应数据。...PO只封装数据库中对应记录,不应该包含对数据库操作。...5.POJO POJO是Plain Ordinary Java Object缩写,即简单Java对象,一个只有属性及属性setter和getter方法基本JavaBean,是一个中间对象...总结:对于各种O使用,需要根据所在层、用途、及场合来选择,设计这些不同Object目的就是为了区分不同应用场景下数据意义不同,彼此之间隔离开,避免思路上混杂,但是也不可过度为了区分而使用,这样会造成思绪上拥堵

97050

Java各种

参考:https://tech.meituan.com/2018/11/15/java-lock.html 乐观锁 VS 悲观锁 悲观锁认为自己在使用数据时候一定有别的线程来修改数据,因此在获取数据时候会先加锁...Java中,synchronized关键字和Lock实现类都是悲观锁。 乐观锁认为自己在使用数据时不会有别的线程修改数据,所以不会添加锁,只是在更新数据时候去判断之前有没有别的线程更新了这个数据。...乐观锁在Java中是通过使用无锁编程来实现,最常采用是CAS算法,Java原子类中递增操作就通过CAS自旋实现。 悲观锁适合写操作多场景,先加锁可以保证写操作时数据正确。...在不使用锁(没有线程被阻塞)情况下实现多线程之间变量同步。java.util.concurrent包中原子类就是通过CAS来实现了乐观锁。...CAS算法涉及到三个操作数: 需要读写内存值 V。 进行比较值 A。 要写入新值 B。

33810

Java去掉html标签各种姿势

一、背景 业务开发中可能需要将html标签全部去掉,本文将多种方法综合在这里,供大家参考。..."; //定义style正则表达式 String regEx_html="]+>"; //定义HTML标签正则表达式...; import java.io.FileReader; import java.io.Reader; import java.util.List; import java.util.ArrayList...具体jar包请自行到中央仓库里搜索依赖配置 https://search.maven.org/  和 https://mvnrepository.com/ 三、提供一个工具类 可以将资源路径文本类型文件...测试时读取资源文件可以使用第三节提供工具类。 如果正则表达式无法满足你需求,自己进一步优化即可。 如果其他方式仍然有特殊情况没有考虑到,可以自己先用正则去除这种特殊情况。

2.2K20

各种Java实现常用排序算法

,对当前还未排好序范围内全部数, * 自上而下对相邻两个数依次进行比较和调整,让较大数往下沉,较小往上冒。...= 0;i < a.length;i++){ System.out.println(a[i]); } } } 堆排序 - heap sort package sort; import java.util.Arrays...初始时把要排序序列看作是一棵顺序存储二叉树,调整它们存储序, 使之成为一个堆,这时堆根节点数最大。然后将根节点与堆最后一个节点交换。 然后对前面(n-1)个数重新调整使之成为堆。...i=0;i<a.length;i++){ System.out.println(a[i]); } } } 归并排序 - merge sort package sort; import java.util.Arrays...,选出最小一个数与第一个位置数交换; 然后在剩下数当中再找最小与第二个位置数交换, 如此循环到倒数第二个数和最后一个数比较为止。

38620

你了解 Java 各种锁吗?

类似地,我们使用线程池和信号量来约束资源使用。 但是缺不能知晓哪些管辖范围内活动可能形成资源死锁。Java应用程序不能从死锁中恢复,所以确保你设计能够避免死锁出现先决条件是非常有价值。...上面的例子出现死锁根本原因就是获取所顺序是乱序,超乎我们控制。...与内部锁机制不同,Lock提供了无条件,可轮询,定时,可中断锁获取操作,所有加锁和解锁方法都是显式。 Lock实现必须提供举报与内部锁相同内存可见性语义。...一般使用 select ...for update 对所选择数据进行加锁处理,例如 select * from account where name=”JAVA” for update, 这条sql...语句锁定了account 表中所有符合检索条件(name=”JAVA”)记录。

60910

Java去掉html标签各种姿势

一、背景 业务开发中可能需要将html标签全部去掉,本文将多种方法综合在这里,供大家参考。...<\\/style>"; //定义style正则表达式 String regEx_html="<[^>]+>"; //定义HTML标签正则表达式...; import java.io.FileReader; import java.io.Reader; import java.util.List; import java.util.ArrayList...可以将资源路径文本类型文件(如json/html)读取成字符串 public class ResourceUtil { /** * 根据当前类路径,获取资源文件夹对应文件所有字符串...测试时读取资源文件可以使用第三节提供工具类。 如果正则表达式无法满足你需求,自己进一步优化即可。 如果其他方式仍然有特殊情况没有考虑到,可以自己先用正则去除这种特殊情况。

1.8K10

java8 各种GC总结

1. jvm1.8内存布局 java内存布局大致如下图所示: ? 2. 垃圾确认方法 引用计数法: 给对象添加一个引用计数器,当有一个地方引用时,计数器就加1,当引用失效时,计数器就减1。...4.垃圾收集器 jvm1.8中支持垃圾收集器见下图: ? 上图表示不同GC收集器组合,根据业务场景不同,结合各垃圾收集器特点,在年轻代和老年代我们可以使用不同垃圾收集器。...4.7.2 G1收集过程 G1收集器将java堆从一个整体收集变成了一个个Region进行收集,收集过程中,采用垃圾优先,也就是会计算每个Region垃圾回收情况,回收最有利Region。...因此,这也是我们调优时候需要重点关注,G1退化情况。调优目的是尽量保证退化情况不出现。...5.总结 本文对JVM中各种GC回收器进行了总结,在配置GC回收策略时候,我们需要结合我们业务场景来进行: 并行GC是jdk1.8默认GC回收策略,默认采用 ParNew收集器 + Parallel

63840

java 工厂变形模拟各种应用

工厂模式是在项目开发中使用效率高,意一个接口,该定义用于创建对象。让子类来决定哪一个类实例。...这就是一个工厂类示意图 接着来一个简单样例: 如上图所看到,我们首先定义我们产品抽象类接口,也能够是抽象类: package factory; public abstract class PlatForm...在工厂模式方法中抽象产品类负责定义产品共性,实现实物最抽象定义;creator为产品抽喜创建类,也就是抽象工厂详细怎样创建产品类有详细实现creator工厂类来完毕。...工厂类变种非常多,以下,我总结类一个比較通用源代码。...和上一种都比較类似了,当中简单工厂模式仅仅是简单把抽象工厂类去掉,然后把工厂实现类方法改成static方法。多级工厂模式是指:比如当我们见到一个比較复杂项目时。

26020

java各种集合类区别

大家好,又见面了,我是你们朋友全栈君。 最近面试经常遇到java集合类问题,上网搜了一下,做个笔记 百度图 集合类型主要有3种:set(集)、list(列表)和map(映射)。...与Vector区别: 1.如果集合中元素数量大于当前集合数组长度时,Vector增长率是目前数组长度100%,而ArryaList增长率为目前数组长度50%。...客户化排序:其实就是实现java.util.Comparator接口提供具体排序方式, 是具体要比较对象类型,他有个compare方法,如compare(x,y)返回值大于...Map总结: javaMap(映射)是一种把键对象和值对象进行映射集合,其中每一个元素都包含了键对象和值对象,其中值对象也可以是Map类型数据,因此,Map支持多级映射,Map中键是唯一,但值可以不唯一...TreeMap 实现了java.io.Serializable接口,意味着它支持序列化。 TreeMap基于红黑树(Red-Black tree)实现。

48920

项目中没经验遇到各种问题

1.java基础不牢,关于对象和类生命周期等不明白 在做app登陆token验证时候。我设计一个tokenutil中添加一个成员变量map,每次登陆成功,将token放进去。以后取出来验证。...在调试n次后突然发现,我key一直是一样,想起map当key相同时候回覆盖原来。于是,兴奋。重来,果然是可以。 这样,说明类始终加载着,没有销毁。...后来,去掉了拦截,在上传图片方法中自己做验证,验证通过再上传图片。...3.没有缜密思维,做人是不是很失败,明知道错误,可以一次又一次 在开始新建jfinal项目的时候我就明确知道,jetty和tomcat不能共存。而我今天发布项目到tomcat时候,总是失败。...4.Exception in thread "JFinal-Scanner" java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFact

68280
领券