首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    编码规范 - 养成良好Java编码习惯

    最近在整理公司编码规范方面的内容,2017年阿里巴巴发布了编码规范插件,强烈建议大家安装使用,好编码习惯是通往成功阶梯。...SpringBoot整合SpringDataJPA 004 SpringDataJPA 核心技术 全面讲解SpringDataJPA核心技术 文档目录 注释规范 类注释 方法注释 行级注释 DTO/Param注释 编码规范...private String userId; /** * 查询关键字 */ @Length(max = 30) private String keyWord; } 二、编码规范...三、异常日志规范 异常规约 Java 类库中定义可以预判断来规避RuntimeException,不应该采用try {} catch(Exception e){}来处理。...正确示例: logger.error(参数或对象.toString() + "_" + e.getMessage(), e); 写在最后 强烈建议IDEA开发工具安装使用阿里巴巴国际编码规约插件,为良好编码习惯打下基础

    1.6K10

    Java 中对象池本质是什么?

    对象池顾名思义就是存放对象池,与我们常听到线程池、数据库连接池、HTTP 连接池等一样,都是典型池化设计思想。...对象池优点就是可以集中管理池中对象,减少频繁创建和销毁长期使用对象,从而提升复用性,以节约资源消耗,可以有效避免频繁为对象分配内存和释放堆中内存,进而减轻 JVM 垃圾收集器负担,避免内存抖动。...Apache Common Pool2 是 Apache 提供一个通用对象池技术实现,可以方便定制化自己需要对象池,大名鼎鼎 Redis 客户端 Jedis 内部连接池就是基于它来实现。...这个配置意思是,当对象池 active 状态对象数量已经达到最大值 maxinum 时,是否进行阻塞直到有空闲对象; 是的话按照设置 borrowMaxWaitMillis 属性等待可用对象。...至于激活对象方法在上述取用对象时也会先激活再被取出。 因此我们可以发现处于空闲和使用中对象他们除了状态不一致,我们也可以通过激活和钝化方式在他们之间增加新差异。

    96010

    java编码规范

    Java编码规范是指为了提高代码可读性、可维护性、可扩展性等方面的规范性要求。 源文件名 每个源文件只包含一个公共类或接口。 源文件名应该与公共类或接口名称完全匹配。...源文件名应该以.java作为扩展名。 示例:假设有一个名为Person公共类,那么源文件名应该为Person.java编码 使用 UTF-8 编码。 每行不超过 80 个字符。...编码规范一部分,可以参考Oracle官方文档 异常处理 不要捕获 Throwable,应该只捕获实际需要处理异常。...编码规范一部分,具体内容可以根据需要和实际情况进行适当调整。...遵循Java编码规范可以使代码更加易于阅读、理解和维护,提高代码质量和可靠性。

    1K20

    java编码规范

    java编码规范(日常编码总结,规范项目组员有统一规范,方便合作,查错,重构等)当你抛弃规范随心所意写代码时,等你之后再回来阅读时真有的一种全部删掉重写冲动。...源代码文件以文件内容中最顶层Java类命名,而且大小写敏感,文件扩展名为 .java,同时,文件编码格式统一为UTF-8。 12....├── uparm │   ├── UparmManager.java │   ├── bean │   │   ├── ComposeBean.java │   │   └── XilianBean.java... ReqAddQhFailNumHandler.java │   │   ├── ReqDecomposeHandler.java │   │   └── ReqZyqhHandler.java Field...相关资料 阿里巴巴Java开发手册v1.2.0-1.pdf 阿里巴巴java编程规范2017版.pdf Android & Java 书写简洁规范代码 https://github.com/xiaomoinfo

    2.6K10

    java编码规范

    java编码规范(日常编码总结,规范项目组员有统一规范,方便合作,查错,重构等)当你抛弃规范随心所意写代码时,等你之后再回来阅读时真有的一种全部删掉重写冲动。...源代码文件以文件内容中最顶层Java类命名,而且大小写敏感,文件扩展名为 .java,同时,文件编码格式统一为UTF-8。 12....├── uparm │   ├── UparmManager.java │   ├── bean │   │   ├── ComposeBean.java │   │   └── XilianBean.java... ReqAddQhFailNumHandler.java │   │   ├── ReqDecomposeHandler.java │   │   └── ReqZyqhHandler.java Field...相关资料 阿里巴巴Java开发手册v1.2.0-1.pdf 阿里巴巴java编程规范2017版.pdf Android & Java 书写简洁规范代码 https://github.com/xiaomoinfo

    2.5K20

    Java - 字符编码

    字符编码其实就是对Unicode字符集实现方式,用以约定如何用1~4个字节来存储字符。 字符编码 UTF-8 UTF-8是可变长编码,即多字节编码,在存储不同字符时使用字节数量是不同。...UTF-8分为有BOM(Byte Order Marker)和无BOM两种编码方式,现代文本编辑器在改变文件编码时应该都看到过这两种编码。...UTF-8好处是节省了空间,但编码效率降低了,即时间换空间。 UTF-16 UTF-16是双字节编码,属于定长编码。...因此UTF-16存在三种编码: UTF-16BE,使用两个字节进行存储大端编码。...Java就是使用这个编码来存储字符,中文和英文都是两个字节(即char这个基础数据类型),所以Java是双字节编码。 UTF-16LE,使用两个字节进行存储小端编码

    1.9K10

    Java编码规范

    测试类命名以它要测试名开始,以Test结尾。 记住,中括号是数组类型一部分,String[] args,请勿使用String args[]。...POJO类中任何布尔类型变量,都不要加is,否则部分框架会引起序列化错误。 枚举类名建议带上Enum后缀,枚举成员名称需要全部大写,单词间用下划线隔开。...集合处理 使用集合转数组方法,必须使用集合toArray(T[] array),传入类型完全一样数组,大小是list.size()。 使用工具类Array.asList()把数组转换成集合。...避免Random实例被多线程使用,虽然共享该实例是线程安全,但会因竞争同一个seed导致性能下降。...循环体中语句要考量性能,以下操作尽量移至循环体外处理,如定义对象,变量,获取数据库连接,进行不必要try-catch操作。 © 著作权归作者所有

    1.2K40

    Java编码规范

    Java 命名约定 除了以下几个特例之外,命名时应始终采用完整英文描述符。此外,一般应采用小写字母,但类名、接口名以及任何非初始单词第一个字母要大写。...java.awt,com.ambysoft.www.persistence 类(Class) 采用完整英文描述符,所有单词第一个字母大写。...Java 文件样式约定 所有的 Java(*.java) 文件都必须遵守如下样式规则: 1) 版权信息 版权信息必须在 java 文件开头,比如: /** * Copyright 2016...Java编码其它约定 n 文档化 必须用 javadoc 来为类生成文档。不仅因为它是标准,这也是被各种 java 编译器都认可方法。...n 尽量使用接口而不是一个具体类 比方如下需求,给定一个SQL语句,返回一个对象列表,实现中用java.util.ArrayList实现,于是定义方法为: public java.util.ArrayList

    90940

    Java中IO和NIO本质和区别

    简介 终于要写到java中最最让人激动部分了IO和NIO。...IO全称是input output,是java程序跟外部世界交流桥梁,IO指的是java.io包中所有类,他们是从java1.0开始就存在。...NIO叫做new IO,是在java1.4中引入新一代IO。 IO本质是什么呢?它和NIO有什么区别呢?我们该怎么学习IO和NIO呢? 别急,看完这篇文章一切都有答案。...IO本质 IO作用就是从外部系统读取数据到java程序中,或者把java程序中输出数据写回到外部系统。这里外部系统可能是磁盘,网络流等等。...所有IO本质就是对Buffer处理,我们把数据放入Buffer供系统写入外部数据,或者从系统Buffer中读取从外部系统中读取数据。如下图所示: ?

    85310

    容器本质

    # 前言 使用NameSpace技术来修改进程视图,创建出独立文件系统、主机名、进程号、网络等资源空间,再使用Cgroups来实现对进程 CPU、内存等资源优先级和配额限制,最后使用chroot更改进程根目录...举个例子 NameSpace可以让当前进程只能看到当前Namespace里进程,看不到宿主机创建进程。并且运行容器命令为1号进程。...但是我们在使用ps aux时,还是看到整个宿主机进程,并且进程ID为1还是Systemd,为什么呢? 这是因为ps命令是读/proc文件系统,所以我们还需要进行文件系统隔离。...所以我们需要在子进程中修改当前挂载点,并且子进程在新namespace挂载动作只影响自身挂载文件系统。...\n"); return 1; } 再次运行进入容器中,当前根目录是上面我们构造testfs,并且ps aux命令只能看到当前namespace进程,而看不到宿主机namespace进程了。

    27420

    Go 中 channel 与 Java BlockingQueue 本质区别

    ,这个本质上也是通过 wait/notify 机制实现,区别只是通知了所有等待线程。...从上文例子中可以看出,实现相同功能 go 写法会更加简单直接,相对 Java 就会复杂许多(当然这也和这里使用偏底层 api 有关)。...Java BlockingQueue 这些特性都与 Java BlockingQueue 非常类似,他们具有以下相同点: 可以通过两者来进行 goroutine/thread 通信。...当然还有本质区别就是 channel 是 go 推荐 CSP 模型核心,具有编译器支持,可以有很轻量成本实现并发通信。...拿这里并发通信来说,本质上是因为并发模型上不同; Go 更推荐使用通信来共享内存,而 Java 大部分场景都是使用共享内存来通信(这样就得加锁来同步)。 带着疑问来学习确实会事半功倍。

    54610

    进制本质

    什么是进制,进制本质又是什么,为什么在计算时候都会把十进制作为中间转换,其实这样思维完全是错误,进制本质并不是我们熟悉十进制。...进制本质 进制本质就是查表,与各种转换没有任何关系,并不是说计算八进制,就把它转为十进制计算后再转回八进制,这种思想本来就是错误,进制本质就是写表和查表,我们之所以对十进制特别熟悉,就是因为我们把十进制相关表记住了...w=531&h=189&f=png&s=7600] 基本运算 进制加减乘除运算依靠前面写出来两个加发表和乘法表就可以满足了,一切依旧是查表,记住进制本质就是查表。...也是没有问题;而且在这样情况下,还有一个好处,不知道你进制规范是看不懂其中具体内容,这也就是通过自定义进制元素方式实现了所谓进制加密。...w=398&h=346&f=png&s=27695] 总结 进制本质就是查表,进制本质就是掰手指头数数。 公众号:无心梦呓(wuxinmengyi)

    90520

    架构本质

    架构也是如此,如果能领悟架构本质,就不会拘泥于现有的实践和理论框框,而以最直接方式解决问题,无招胜有招。本文内容包括架构本质、架构服务对象、架构师能力模型 、架构境界等。...抽象思维是往高层次总结升华,由实到虚;而透过问题看本质则是由虚到实,往深层次地挖掘。...比如看到一段 Java 代码,知道它在 JVM 如何执行;一个跨网络调用,知道数据是如何通过各种介质到达目标 (操作系统内核 / 网卡端口 / 电磁介质等)。...此时看到已经是问题本质,看山不是山。   ...第四境界方案,在了解问题本质基础上,同时考虑现状,评估未来,不多做,不少做。

    58720
    领券