• 居民二代身份证扫描识别技术

    居民二代身份证扫描识别技术一、居民二代身份证扫描识别技术应用背景这些年,随着移动互联网的的发展,越来越多的企业都推出了自己的移动APP,这些APP多数都涉及到个人身份证信息的输入认证(即实名认证),如果手动去输入身份证号码和姓名,速度非常慢,且用户体验非常差。为了提高在移动终端上输入身份证信息的速度和准确性,我们开发出居民身份证OCR识别技术SDK,以满足各行业应用需求,给用户...

    Java 2019年11月26日 1567 0
  • java数据库框架mybatis的事务处理

    MyBatis作为Java语言的数据库框架,对数据库的事务管理是其非常重要的一个方面。   本文将讲述MyBatis的事务管理的实现机制,首先介绍MyBatis的事务Transaction的接口设计以及其不同实现JdbcTransaction 和 ManagedTransaction;接着,从MyBatis的XML配置文件入手,讲解MyBatis事务工厂的创建和维护...

    Java 2019年11月26日 1676 0
  • Java进一步增强AI支持:Java-AI库概述

    1.简介 在本文中,我们将概述Java中的人工智能(AI)库。 由于本文是关于库的,因此我们将不对AI本身做任何介绍。另外,为了使用本文介绍的库,必须具备AI的理论背景。 人工智能是一个非常广阔的领域,因此我们将专注于当今最流行的领域,例如自然语言处理,机器学习,神经网络等。最后,我们将提到一些有趣的AI挑战,您可以在其中练习对AI的理解。 2.系统架构 2.1 Apach...

    Java 2019年11月24日 2493 0
  • 别在 Java 代码里乱打日志了,这才是打印日志的正确姿势

    使用slf4j使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一实现方式统一使用: Logback框架打日志的正确方式什么时候应该打日志当你遇到问题的时候,只能通过debug功能来确定问题,你应该考虑打日志,良好的系统,是可以通过日志进行问题定为的。当你碰到if…else 或者 switch这样的分支时,要在分支的首行打印日志,用来确定进入了哪个分支经常以功能为核心进...

    Java 2019年11月23日 1449 0
  • java文件上传判断是否重复,不需要文件请求上去就能判断

    进来看这篇文章的朋友,应该都有做过文件上传的业务,也弄了文件重复的问题。通常的做法就是:使用 MD5 消息摘要算出 文件摘要,作为文件名,判断重复的时候,去数据库比较一下。但有没有发现一个问题就是,文件拿到服务器才能判断,判断重复了不要了呢,是不是白拿了,是不是有点浪费宽带和服务器内存啊,这是能优化的地方啊。这个是最近在做文件处理的时候想到了这样的问题的。还有一个问题,post...

    Java 2019年11月22日 2691 0
  • 为什么main方法是public static void?

    Main 方法是我们学习 Java 编程语言时知道的第一个方法,你是否曾经想过为什么 main 方法是 public、static、void 的。当然,很多人首先学的是 C 和 C++,但是在 Java 中 main 方法与前者有些细微的不同,它不会返回任何值,为什么 main 方式是 public、static、void,这篇文章尝试去找到一些答案。Main 方法是 Java...

    Java 2019年11月21日 1375 0
  • java除法及java除法运算的基础知识

    除法运算看起来很简单,一般人都会吧,如果不是java语言,而是C#或php的除法运算,那就真的简单,而java的除法运算如果也是不屑一顾,那真是无知者无畏!其实java的除法、求余运算有很大的不同。java除法运算一旦计算发生了问题,还很不好找。不好找的原因主要是问题的偶然性太强,如果你知道可能发生什么问题,你的代码就可以写得更安全。 数学除法规定,0不能做除数,因为会得到一...

    Java 2019年11月20日 7707 0
  • Spring Boot2+JPA之悲观锁和乐观锁实战

    前言 大量的请求,或者同时的操作,容易导致系统在业务上发生并发的问题. 通常讲到并发,解决方案无非就是前端限制重复提交,后台进行悲观锁或者乐观锁限制. 悲观锁与并发悲观锁(Pessimistic Lock),顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到解锁,可以理解为独占锁。在java中sync...

    Java 2019年11月20日 3213 0
  • itext7 pdf整体结构和常见功能操作方法

    本文很多资源来自http://developers.itextpdf.com/content/itext-7-jump-start-tutorial itext7整体结构 在层次结构的顶部,我们找到了IPropertyContainer界面。此接口定义设置,获取和删除属性的方法。这个接口有两个直接的子接口:IElement和IRenderer。该IElement接口将由例如...

    Java 2019年11月14日 5723 0
  • 14个Java并发容器,你用过几个?

    前言不考虑多线程并发的情况下,容器类一般使用ArrayList、HashMap等线程不安全的类,效率更高。在并发场景下,常会用到ConcurrentHashMap、ArrayBlockingQueue等线程安全的容器类,虽然牺牲了一些效率,但却得到了安全。上面提到的线程安全容器都在java.util.concurrent包下,这个包下并发容器不少,今天全部翻出来鼓捣一下。仅做简...

    Java 2019年11月12日 1517 0
  • 使用itext7-core来生成pdf文档

    之前使用itext5来生成pdf文档,最近又学习了itext7生成文档,感觉itext7用来生成pdf文件还不错。下面介绍一下使用方法。 首先在pom.xml文件中引入需要的依赖: <dependency> <groupId>com.itextpdf</groupId> <artifactId>itext7-core...

    Java 2019年11月09日 4413 0
  • mvc模式如何分层

    前言在做一个小型的管理系统的时候,有同学说他的功能都能实现,但是就是代码比较凌乱,时间久了就不知道各个包放的啥,有什么功能。我觉得不仅要有良好的写代码习惯,也要有好的分层意识。不能因为是初学者就忽视这个问题,因为好的习惯能给你带很多方便,也为未来做项目打下基础。习惯不好以后改过来挺麻烦的。因此最近看了一些大牛的文章,做了一些整理:首先说一下我们初学者学的MVC设计模式通过这个模...

    Java 2019年11月08日 2542 0
  • An enum switch case label must be the unqualified name of an enumeration constant

    在使用java POI操作Excel的时候,使用枚举值时,会出现这样的错误提示。 先解释一下这句英文的含义:一个枚举switch case标签必须是一个枚举常量的非限定名称。通俗一点,就是在case标签中不能加类(枚举应该算是一种特殊的类吧)的限定。 在Android开发中,有一个变量可能会被很多界面引用,所以我们就会在它前面增加static final publi...

    Java 2019年11月06日 5984 0
  • java使用POI处理用户Excel模板文件

    一、POI概述  Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。  结构: HSSF - 提供读写Microsoft Excel格式档案的功能。 XSSF - 提供读写Microsoft Excel OOXML格式档案...

    Java 2019年11月06日 1809 0
  • Java:如何更优雅的处理空值?

    导语在笔者几年的开发经验中,经常看到项目中存在到处空值判断的情况,这些判断,会让人觉得摸不着头绪,它的出现很有可能和当前的业务逻辑并没有关系。但它会让你很头疼。有时候,更可怕的是系统因为这些空值的情况,会抛出空指针异常,导致业务系统发生问题。此篇文章,我总结了几种关于空值的处理手法,希望对读者有帮助。业务中的空值场景存在一个UserSearchService用来提供用户查询的功...

    Java 2019年10月31日 1444 0
  • SpringBoot中如何优雅的读取yml配置文件?

    YAML是一种简洁的非标记语言,以数据为中心,使用空白、缩进、分行组织数据,从而使得表示更加简洁易读。本文介绍下YAML的语法和SpringBoot读取该类型配置文件的过程。本文目录一、YAML基本语法以缩进代表层级关系缩进不能使用tab,只能用空格空格个数不重要,但是同一层级必须左对齐大小写敏感数据格式为,名称:(空格)值注释单行用#,只能注释单行二、YAML支持的数据格式字...

    Java 2019年10月31日 2213 0
  • SpringBoot+EasyExcel实现Excel的导出

    今天的积累都是为了更好的明天,加油!我是java程序员可以关注我一起学习哈! 今天心血来潮,突然想起很久以前的一个导出excel的功能,以前用的poi感觉挺麻烦的!今天就简单写下EasyExcel版本的,EasyExcel是阿里的一个开源框架!github地址https://github.com/alibaba/easyexcel大家也可以下载下来看看源码!我这里只做了一个简...

    Java 2019年10月25日 19304 0
  • 想动态切换数据源咋办,别急,SpringBoot来帮你搞定

    相信大家在随着公司的规模的不断发展,系统不断的增多,或多或少的可能会遇到多数据源的场景,不管是为了读写分离,还是需要聚合业务上的多数据,今天就给大家分享一下,SpringBoot多数据源的实现方案。首先先看一下实现步骤 实现步骤 使用一个枚举类来定义列出所有的数据源; 加载所有数据源到Spring容器中; 绑定数据源和枚举类定义的数据源的关系; 定义属性...

    Java 2019年10月25日 4186 0
  • SpringBoot 集成 WebSocket 实现前后端消息互传

    WebSocket 协议是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工 (full-duplex) 通信—允许服务器主动发送信息给客户端。 为什么需要WebSocket? 大家都知道以前客户端想知道服务端的处理进度,要不停地使用 Ajax 进行轮询,让浏览器隔个几秒就向服务器发一次请求,这对服务器压力较大。另外一种轮询就是采用 long poll 的方式,...

    Java 2019年10月19日 3108 0
  • Tomcat9+JDK13环境搭建(新版本)

    新版本的JDK13的变化有点大,应学生要求,今天我尝试了一下,还比较顺利,发现新版本的JDK13比以前的版本容易很多,闲话不多说,直接开始配置实验过程。 实验流程 没有用CentOS自带的jdk和tomcat,感觉不好用,直接从官网上下载jdk和tomcat 图1 JDK 13 tar.gz压缩包 图2 tomcat 9 tar.gz压缩包 下载好后将jdk和t...

    Java 2019年10月18日 5262 2
  • springboot中配置mysql一次允许多条sql语句执行

    在springboot中,如果想要对mysql一次性执行多条sql语句,在数据连接配置信息中,要增加allowMultiQueries=true,这样才能一次执行多条sql语句。 理论上这样就可以了,但实际中发现在springboot中,仅仅这样配置是没有用的,执行结果会出现异常,异常提示为: Caused by: java.sql.SQLException: sql inj...

    Java 2019年10月14日 9768 0
  • 如何实现java导出mysql或java导入mysql数据库的sql文件

    本文通过实际例子来教你如何实现java导出mysql或java导入mysql数据库的sql文件 本例只是最简单原始的实现方式,配置信息也没有那么灵活,仅供学习和参考,如果要使用在项目中,自己要多加改造和测试。package com.dreamwu.test;public class Test{ // 实现数据库的导出(方法1) public static void functi...

    Java 2019年10月08日 4538 0
  • 20个非常有用的Java程序片段

    20个非常有用的Java程序片段 从事Java——专注于Java技术的研究与分享! https://zhuanlan.zhihu.com/p/84107413 原文链接 1、字符串有整型的相互转换 String a = String.valueOf(2);//integer to numeric...

    Java 2019年09月29日 1586 0
  • 如何设计 API 接口,实现统一格式返回?

    前言 在移动互联网,分布式、微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式,(题外话:前后端的工作职责越来越明确,现在的前端都称之为大前端,技术栈以及生态圈都已经非常成熟;以前后端人员瞧不起前端人员,那现在后端人员要重新认识一下前端,前端已经很成体系了)。 一般系统的大致整体架构图如下: 需要说明的是,有些小伙伴会回复说,这个架构太简单了吧,太l...

    Java 2019年09月29日 1597 0
  • mysql中emoji表情转换入库,超级实用

    emoji表情符在平时用的时候特别的爽,但是有时候在开发的时候就比较的难受,微信开发昵称往往都有表情符导致无法入库。尝试了往上很多的方法都没有得以解决,甚至我改了数据库配置后发现库不能启动了(哎哟我靠,感谢那些博主的建议)。所以今天给大家个工具类,用着是挺舒服的。 public class EmojiUtil { /** * @Description e...

    Java 2019年09月27日 1742 0
  • JDK/Java 13 发布

    9 月 17 日,JDK/Java 13 正式 GA。 此版本带来了以下几大新特性: Dynamic CDS Archives:扩展应用程序类-数据共享,以允许在 Java 应用程序执行结束时动态归档类。归档类将包括默认的基础层 CDS(class data-sharing)存档中不存在的所有已加载的应用程序类和库类。 ZGC: Uncommit Un...

    Java 2019年09月26日 1681 0
  • 如何优雅的导出Excel

    前言 公司项目最近有一个需要:报表导出。整个系统下来,起码超过一百张报表需要导出。这个时候如何优雅的实现报表导出,释放生产力就显得很重要了。下面主要给大家分享一下该工具类的使用方法与实现思路。 实现的功能点 对于每个报表都相同的操作,我们很自然的会抽离出来,这个很简单。而最重要的是:如何把那些每个报表不相同的操作进行良好的封装,尽可能的提高复用性;针对以...

    Java 2019年09月24日 1928 0
  • SpringBoot使用JdbcTemplate实现增删改查

    SpringBoot使用JdbcTemplate实现CRUD功能 SpringBoot2.x使用JdbcTemplate实现增删改查,非常适合初学者学习案例。 项目结构 项目结构 第一步:开发环境准备 JDK:1.8 Maven:apache-maven-3.6.0 ...

    Java 2019年09月21日 2066 0
  • Maven ojdbc错误:Cannot resolve com.oracle:ojdbc6:11.2.0.1.0

    在java项目中,通过maven引用oracle的库,出现如下错误: <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.1.0</vers...

    Java 2019年09月17日 29471 0
  • Java 13 今天发布,最新最全新特性解读

    2017年8月,JCP执行委员会提出将Java的发布频率改为每六个月一次,新的发布周期严格遵循时间点,将在每年的3月份和9月份发布。 目前,JDK官网上已经可以看到JDK 13的进展,最新版的JDK 13将于2019年9月17日,今日发布。  目前,JDK13处于Release-Candidate Phase(发布候选阶段),将于...

    Java 2019年09月17日 2270 0