一.概述 1.1 当前现状 当前JDK中用来表达货币的类为java.util.Currency,这个类仅仅能够表示按照**[ISO-4217]**描述的货币类型.它没有与之关联的数值,也不能描述规范外的一些货币.对于货币的计算.货币兑换.货币的格式化没有提供相关的支持,甚至连能够代表货币金额的标准类型也没有提供相关说明.JSR-354定义了一套标准的API用来解决相关的这些问题. 1.2 规范目的 JSR-354主要的目标为: 为货币扩展提供可能,支撑丰富的业务场景对货币类型以及货币金额的诉求:…
Preface Validating data is a common task that occurs throughout all application layers, from the presentation to the persistence layer. Often the same validation logic is implemented in each layer which is time consuming and error-prone. To avoid dup…
目录 mysql 数据库 规范 基础规范 命名规范 表设计规范 字段设计规范 索引设计规范 SQL编写规范 行为规范 mysql 数据库 规范 基础规范 必须使用InnoDB存储引擎 解读:支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 新库使用utf8mb4字符集 解读:万国码,无需转码,无乱码风险,节省空间 数据表.数据字段必须加入中文注释 解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的 禁止使用存储过程.视图.触发器.Event 解读:高并发大数据的互联网…
1.51.自动装箱与拆箱:2.枚举(常用来设计单例模式)3.静态导入4.可变参数5.内省 1.61.Web服务元数据2.脚本语言支持3.JTable的排序和过滤4.更简单,更强大的JAX-WS5.轻量级Http Server6.嵌入式数据库 Derby 1.71,switch中可以使用字串了2.运用List tempList = new ArrayList<>(); 即泛型实例化类型自动推断3.语法上支持集合,而不一定是数组4.新增一些取环境信息的工具方法5.Boolean类型反转,空指针安全…
译文出处: Java译站   原文出处:Michael Scharhag JSR 354定义了一套新的Java货币API,计划会在Java 9中正式引入.本文中我们将来看一下它的参考实现:JavaMoney的当前进展. 正如我在之前那篇Java 8新的日期时间API一文中那样,本文主要也是通过一些代码来演示下新的API的用法 . 在开始之前,我想先用一段话来简短地总结一下规范定义的这套新的API的用意何在: 对许多应用而言货币价值都是一个关键的特性,但JDK对此却几乎没有任何支持.严格来讲,现有…
Java 9 概述 1. jdk 9 的发布.经过 4 次跳票,历经曲折的 java 9 终于终于在 2017 年 9 月 21 日发布. 2. Java 9 中哪些不得不说的新特性?java 9 提供了超过 150 项新功能特性,包括备受期待的模块化系统.可交互的 REPL 工具:jshell,JDK 编译工具,Java 公共 API 和私有代码,以及安全增强.扩展提升.性能管理改善等.可以说 Java 9 是一个庞大的系统工程,完全做了一个整体改变.具体来讲:  模块化系统  jShel…
1.在java 9 中看不到什么? 1.1 一个标准化和轻量级的JSON API 一个标准化和轻量级的JSON API被许多java开发人员所青睐.但是由于资金问题无法在Java 9中见到,但并不会削减掉.Java平台首席架构师Mark Reinhold在JDK 9邮件列中说:“这个JEP将是平台上的一个有用的补充,但是在计划中,它并不像Oracle资助的其他功能那么重要,可能会重新考虑JDK 10或更高版本中实现. ” 1.2 新的货币API 对许多应用而言货币价值都是一个关键的特性,但JDK…
概述 如果说EJB,JPA是之前JEE(JEE5及JEE5之前)中里程碑式的规范,那么在JEE6,JEE7中CDI可以与之媲美,CDI(Contexts and Dependency Injection),即上下文依赖注入,它是众多JEE规范中的一个,从JEE6开始CDI正式成为JEE规范,但CDI相关的概念不是新的,依赖注入的概念已经存在了许多年,相关的流行框架包括Spring,Google Guice等.目前CDI规范的实现主要有 JBoss Weld,Apache OpenWebBeans…
前言 在为dropwizard选择DI框架的时候考虑了很久.Guice比较成熟,Dagger2主要用于Android.虽然都是google维护的,但Dagger2远比guice更新的频率高.再一个是,Dagger2不同于guice的运行时注入,编译时生成代码的做法很好.提前发现问题,更高的效率. 还是那句话,百度到的dagger2资料看着一大堆,大都表层,而且和Android集成很深.很少有单独讲Dagger2的.不得已,去看官方文档. HelloWorld 官方的example是基于maven…
Restful是一种架构style,目前常说的有restful web service, resultful http.现在热搜榜的微服务,大多数会采用Restful方式. JAX-RS 作为一个Restful 风格WebService规范,目前已发展到了2.0版本,目前比较常用的两个版本是JAX-RS1.1(jsr-311). JAX-RS2.0(jsr-339) . 规范地址:https://jax-rs-spec.java.net/ .现在已有很多实现: Jersey:是jax-rs的标准…
一个项目能否发布上线,重要的环节就是测试.经过集成测试.性能测试.压力测试等不断循环的测试过后依据测试报告来确定上线.这些由专业的测试人员来完成,因此会导致程序开发者对自身的单元测试的弱化.若在代码中写入那些准备的数据代码片段,会让代码冗余,重用性不高,代码复杂度增加不易阅读,太多繁琐的低效的重复工作等会让开发人放弃这块的开发. unit-test是基于junit框架 + csv文本结合的测试模板.JUnit 是一个回归测试框架,被开发者用于实施对应用程序的单元测试,加快程序编制速度,同时提高编…
前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大部分内容参照自这一篇文章,有一些自己补充的,也算是重新学习一下 Java 吧. 前序文章链接: Java 面试知识点解析(一)--基础知识篇 Java 面试知识点解析(二)--高并发编程篇 Java 面试知识点解析(三)--JVM篇 对于 Java 各个版本的特性,特别是 Java 8 的新知识点,…
1974年冬,互联网大师 Jon Postel发表了RFC674:“Procedure Call Protocol Documents,Version 2”,尝试定义一种在包含70个节点的网络中共享资源的通用方法.在大师一生中编辑过的无数个RFC文档中,674属于并不突出的一个,但却拉开了RPC的序幕.也正是接下来我们故事的开始. 1. 从IPC到RPC IPC(Inter-Process Communication)即进程间通信.指在不同进程之间的通信过程.Unix家族中IPC种类繁多,其中有…
概述 如果说EJB,JPA是之前JEE(JEE5及JEE5之前)中里程碑式的规范,那么在JEE6,JEE7中CDI可以与之媲美,CDI(Contexts and Dependency Injection),即上下文依赖注入,它是众多JEE规范中的一个,从JEE6开始CDI正式成为JEE规范,但CDI相关的概念不是新的,依赖注入的概念已经存在了许多年,相关的流行框架包括Spring,Google Guice等.目前CDI规范的实现主要有 JBoss Weld,Apache OpenWebBeans…
javaBean_百度百科 https://baike.baidu.com/item/javaBean/529577?fr=aladdin 区别EJB JavaBean 和 Server Bean(通常称为Enterprise JavaBean(EJB))有一些基本相同之处.它们都是用一组特性创建,以执行其特定任务的对象,获得其它特性的能力.这使得 bean 的行为根据特定任务和所在环境的不同而有所不同. Enterprise Bean 与 JavaBean 不同.JavaBean 是使用jav…
MySQL 基础篇 三范式 MySQL 军规 MySQL 配置 MySQL 用户管理和权限设置 MySQL 常用函数介绍 MySQL 字段类型介绍 MySQL 多列排序 MySQL 行转列 列转行 MySQL NULL 使用带来的坑 MySQL AND 和 OR 联合使用带来的坑 MySQL 触发器的使用 转载: <58到家数据库30条军规解读> <赶集mysql军规> <58到家MySQL军规升级版> 基础规范 必须使用 InnoDB 存储引擎 解读:支持事务.行级锁…
Dagger2是一个IOC框架,一般用于Android平台,第一次接触的朋友,一定会被搞得晕头转向.它延续了Java平台Spring框架代码碎片化,注解满天飞的传统.尝试将各处代码片段串联起来,理清思绪,真不是件容易的事.更不用说还有各版本细微的差别. 与Spring不同的是,Spring是通过反射创建对象的,而Dagger2是[通过apt插件]在编译期间生成代码,这些生成的代码负责依赖对象创建. 本文旨在以简单通俗易懂的方式说明如何使用Dagger2,对其背后设计不做深入探讨.人生苦短,码农更…
一.缓存有什么用?  缓存应该是我们每一个系统都应该考虑使用的,这样可以加速系统的访问,提升系统的性能.比如我们经常需要访问的高频数据,将此类数据放在缓存中,可以大幅度提升系统的响应速度.原因就是一般来说我们的数据都是存在数据库中,但是高频的访问数据库不仅会对数据库造成压力,一定程度上还会影响响应速度,影响用户体验.如果引入了缓存,不仅能提升访问性能的同时降低数据库的压力. 二.JSR107规范  JSR是Java Specification Requests的缩写,意思是Java 规范提案.是…
1:JVM基础知识 什么是JVM 1. java虚拟机,跨语言的平台,实现java跨平台 2. 可以实现多种语言跨平台,只要该语言可以编译成.class文件 3. 解释执行.class文件 java是跨平台的语言,JVM是跨语言的平台 JVM运行流程 1. preparation 默认值=>初始值=> 2. 类加载器(jvm是按需动态加载,采用双亲委派机制,自底向上检查该类是否已经加载) 3. 为什么要使用双亲委派,为了安全 4. 自定义ClassLoader(customer Class L…
Atitit attilax总结的对于attilax重要的jsr规范,以及需要增加的jsr规范 需要增加的jsr规范1 开发常用的10个规范(jsp etc)1 other开发常用的50个规范1 需要增加的jsr规范 Conf api Dync bg font api Gui op api Adm mng api 开发常用的10个规范(jsp etc) other开发常用的50个规范 10Preferences API Specification   atu 15Image I/O Framew…
Atitit jsr规范有多少个  407个.Jsr规范大全 1.1. JCP维护职能是发展和更新.1 1.2. Java技术规范.参考实现(RI).技术兼容包(TCK)1 1.3. JCP维护的规范包括J2ME.J2SE.J2EE,XML,OSS,JAIN等1 1.4. 所有的jsr规范大全407个..2 2. 900开头的java 核心规范  30个11 1.1. JCP维护职能是发展和更新. 1.2. Java技术规范.参考实现(RI).技术兼容包(TCK) 1.3. JCP维护的规范包括…
JSR 规范目录 一.Servlet 规范 1.1 Servlet 2.x 规范 1.2 Servlet 3.x 规范 - 注解和异步请求规范 每天用心记录一点点.内容也许不重要,但习惯很重要!…
JSR是JavaSpecification Requests的缩写,意思是Java 规范提案.是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求.任何人都可以提交JSR,以向Java平台增添新的API和服务.JSR已成为Java界的一个重要标准. Web Service技术 Java Date与Time API ( JSR 310) Java API for RESTful Web Services (JAX-RS) 1.1 (JSR 311) Im…
春节放假期间,一直在学习c++,越想越发现c++标准之于gcc/vc/boost等实现相当于jsr规范之于sunjdk/ibmjdk/tomcat/weblogic等实现…
一.基础规范 (1)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省空间(由于移动设备原因最好使用utf8mb4) (2)禁止使用存储过程.视图.触发器.Event 解读:高并发大数据的互联网业务,架构设计思路是“解放数据库CPU,将计算转移到服务层”,并发量大的情况下,这些功能很可能将数据库拖死,业务逻辑放到服务层具备更好的扩展性,能够轻易实现“增机器就加性能”.数据库擅长存储与索引,CPU计算还是上移吧 (3)禁止存储大文件或者大照片 解读:为何要让数据库做它不擅长的事情?大…
Web Service技术 Java Date与Time API ( JSR 310) Java API for RESTful Web Services (JAX-RS) 1.1 (JSR 311) Implementing Enterprise Web Services 1.3 (JSR 109) Java API for XML-Based Web Services (JAX-WS) 2.2 (JSR 224) Java Architecture for XML Binding (JAXB…
转载自:https://mp.weixin.qq.com/s?__biz=MjM5ODYxMDA5OQ==&mid=2651959906&idx=1&sn=2cbdc66cfb5b53cf4327a1e0d18d9b4a&chksm=bd2d07be8a5a8ea86dc3c04eced3f411ee5ec207f73d317245e1fefea1628feb037ad71531bc&mpshare=1&scene=1&srcid=0813cj7qS…
mPOS是近年出现并得到迅速发展的一种新型受理产品,不少机构和生产企业进行了各种形式的试点. 因为mPOS引入了手机.平板电脑等通用智能移动设备.并通过互联网进行信息传输.因此其安全特点与传统银行卡受理终端存在不同;同一时候,市场对mPOS含义认识不一,安全水平參差不齐.因而也对安全管理提出了更大的挑战. 本文基于银联终端工作组研究成果.结合最新公布的<中国银联mPOS通用技术安全要求>(下面简称<要求>).对mPOS技术概念.安全目标和技术要求进行解读,并提出系统应用部署的安全方…
军规适用场景:并发量大.数据量大的互联网业务 军规:介绍内容 解读:讲解原因,解读比军规更重要 一.基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省空间 (3)数据表.数据字段必须加入中文注释 解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的 (4)禁止使用存储过程.视图.触发器.Event 解读:高并发大数据的互联网业务,架构设计思路是“解放…
前提 最近发现各个频道推荐了很多ULID相关文章,这里对ULID的规范文件进行解读,并且基于Java语言自行实现ULID,通过此实现过程展示ULID的底层原理. ULID出现的背景 ULID全称是Universally Unique Lexicographically Sortable Identifier,直译过来就是通用唯一按字典排序的标识符,它的原始仓库是https://github.com/ulid/javascript,该项目由前端开发者alizain发起,基于JavaScript语言…