自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

转载 spring boot 中热编译的常用方式

平时开发Sprig Boot的时候,经常改动个小小的地方就要重新启动项目,这无疑是一种很差的体验。在此,博主收集了3种热部署的方案供大家选择。正文目前博主用过的有三种:Spring Loaded spring-boot-devtools JRebel插件博主开发环境系统:win10 开发工具:IDE:IntelliJ IDEA 2017.1 spring-boot版本:1...

2019-10-29 19:05:01 827

转载 java8 optional

从 Java 8 引入的一个很有趣的特性是Optional 类。Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) —— 每个 Java 程序员都非常了解的异常。本质上,这是一个包含有可选值的包装类,这意味着 Optional 类既可以含有对象也可以为空。Optional 是 Java 实现函数式编程的强劲一步,并且帮助在范式中实现。但...

2019-07-25 13:31:29 164

原创 java8中Stream的学习

直接上代码public class TestStream { public static void main(String[] args) { TestStream test = new TestStream(); //test.test0(); //test.test1(); //test.test2(); ...

2019-07-19 16:47:46 249

转载 java中参数校验

1.常见的验证的方式前端的校验是必须的,这个很简单,因为客户体验。后台的校验更是必须的,关键在于如何与目前我们的分层思想(控制层、业务层、持久层)综合起来考虑。在每层都要进行校验吗?还是只在是某个特定层做就可以了?是否有好的校验框架(如前端的jquery校验框架、springmvc校验框架)?总之校验框架还是有很多的,原理不就是对后端接收的数据进行特定规则的判断,那我们怎么制定规则,有怎么去检...

2019-07-18 17:28:32 1072

转载 idea 创建web项目

说明:IntelliJ IDEA 版本为17.JDK 版本为1.8tomcat 版本为apache-tomcat-8.5.29注:在创建过程中注意相关软件版本位数的问题。32位,64位的软件混搭会导致访问不成功的问题!!!首先要理解一个基本问题:对比eclipse ,在IntelliJ IDEA中“new Project”相当于eclipse中的工作空间(Workspace)...

2018-12-29 11:10:51 165

转载 java并发编程之Executor框架

Eexecutor作为灵活且强大的异步执行框架,其支持多种不同类型的任务执行策略,提供了一种标准的方法将任务的提交过程和执行过程解耦开发,基于生产者-消费者模式,其提交任务的线程相当于生产者,执行任务的线程相当于消费者,并用Runnable来表示任务,Executor的实现还提供了对生命周期的支持,以及统计信息收集,应用程序管理机制和性能监视等机制。 1.Exexctor简介Execu...

2018-07-19 16:50:35 260

转载 从输入url到页面展示的过程

原文地址:http://www.cnblogs.com/xianyulaodi/p/6547807.html     刚开始写这篇文章还是挺纠结的,因为网上搜索“从输入url到页面展示到底发生了什么”,你可以搜到一大堆的资料。而且面试这道题基本是必考题,二月份面试的时候,虽然知道这个过程发生了什么,不过当面试官一步步追问下去的,很多细节就不太清楚了。  最近刚好也在看http协

2018-01-25 15:41:54 266

转载 http请求从浏览器到服务器过程

前些天刚看完《How Tomcat Works》,虽然书比较老,但是看完后收获还是挺多的,懂得了tomcat的内部结构和一个请求进出tomcat的全过程。前些天看的为什么现在提呢,因为做到了面试题呀,发现自己原本很清晰的思路突然模糊了,所以花点时间总结一下。题目是说一说在浏览器中输入一个url后,直到浏览器显示页面的过程中发生了什么? 如果我说的话,会分四步: 1.通过访问的域名找

2018-01-25 14:37:07 11386

原创 ngrok反向代理使用

近期由于需要对自己写的一些代码进行调试,因为是前后端分开开发的,前段调试的时候需要访问部分资源,但是由于处于开发阶段没有真正上传到服务器,但是又要进行调试,很矛盾,就在网上看到ngrok反向代理,让外网也能访问本机的资源来进行调试。1.下载ngrok ngrok下载地址:http://ngrok.ciqiuwl.cn/可以在网上根据自己需要的版本进行下载,linux或者windows的

2018-01-23 14:50:17 3232

转载 MySQL索引

在MySQL中进行SQL优化的时候,经常会在一些情况下,对MySQL能否利用索引有一些迷惑。譬如:1、MySQL 在遇到范围查询条件的时候就停止匹配了,那么到底是哪些范围条件?2、MySQL 在LIKE进行模糊匹配的时候又是如何利用索引的呢?3、MySQL 到底在怎么样的情况下能够利用索引进行排序?今天,我将会用一个模型,把这些问题都一一解答,让你对MySQL索引的使用不再畏惧二、知识补充key_

2018-01-19 17:05:02 173

转载 Java过滤器与SpringMVC拦截器之间的关系与区别

过滤器和拦截器的区别:  ①拦截器是基于java的反射机制的,而过滤器是基于函数回调。  ②拦截器不依赖与servlet容器,过滤器依赖与servlet容器。  ③拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。  ④拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。  ⑤在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一

2018-01-19 15:58:30 172

转载 优化MySQL数据库性能的一些基本技巧

优化技巧 #1:学习如何使用 EXPLAIN使用任何数据库所做的两个最重要的决定是设计应用程序实体之间的关系如何映射到表(数据库模式),以及设计应用程序如何以所需的格式获得所需的数据(查询)。复杂的应用程序可以有复杂的模式和查询。如果想得到应用程序所需要的性能和扩展性,不能仅仅依靠直觉来理解如何执行查询。应该学习如何使用EXPLAIN命令,而不是随意的猜测和想象。此命令展示了如何执行查询,并让您了

2018-01-19 11:46:24 269

转载 pdf 内容设置详解

import java.awt.Color;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import com.lowagie.text.Cell;import com.lowagie.text.Chapter;import com.lowagie.text.Document

2018-01-11 11:31:58 821

转载 多张图片合成PDF

一: 把图片路径存到一个list . List list = new List();        list.Add("d:\\6.png");         list.Add("d:\\8.png");         list.Add("d:\\7.png");         list.Add("d:\\1.png");         string dateTim

2018-01-09 21:45:58 2624

转载 Java中操作pdf模板生成pdf

【java】 iText使用PDF模板生成输出PDF项目需求涉及到操作pdf模板,根据生成好的模板向里面填充数据  用到的jar包是iText-5.0.6.jar 和iTextAsian.jarpdf模板效果如下:import java.io.ByteArrayOutputStream;  import java.io.FileOutpu

2018-01-09 21:34:28 1308

转载 java实现img与pdf相互转换

import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream;import java.io.File;  import java.io.FileInputStream;  import java.io.FileOutputStream; import java.io.InputStream;  imp

2018-01-09 21:26:59 1752

转载 JAVA 将图片转换成pdf文件

/*** 将图片转换成pdf文件*imgFilePath 需要被转换的img所存放的位置。 例如imgFilePath="D:\\projectPath\\55555.jpg";*pdfFilePath 转换后的pdf所存放的位置 例如pdfFilePath="D:\\projectPath\\test.pdf";* @param image* @return* @thro

2018-01-09 21:09:30 21215 7

转载 java poi 通过excel模板导出并且生成多个sheet

下面写一下,关于通过excel模板生成之后,生成多个sheet;代码如下:(只写关键代码)FileOutputStream fileOut = new FileOutputStream("D:\\excel.xls");HSSFWorkbook workbook = null;InputStream fis = new FileInputStream(filePath);

2017-12-26 09:38:11 1171

转载 自定义MyBatis Generator Plugin

现在可以自定来定义一个MyBatis Generator Plugin了,我们从什么功能下手呢?在我们平时基于MySQL的数据库对应的mapper.xml映射文件中,在insert元素上,我们往往会定义keyColumn="id" keyProperty="id" useGeneratedKeys="true"这三个参数,在MBG中,这是可以配置的,就是在每一个table元素中使用来生成。但

2017-12-15 17:14:18 793

转载 spring boot:使用fastJson解析json数据

如果我们想在spring boot中使用第三方的json解析框架:1)我们需要在pom.xml文件中引入第三方包的依赖;2)实现方法:方法1 需要在启动类中继承WebMvcConfigurerAdapter 类,并重写该类的configureMessageConverters方法。方法2. 我们直接使用@Bean注入第三方的 解析框架。 1、引入fastJson的依赖库

2017-12-15 16:09:33 289

转载 Spring高级话题-@Enable***注解的工作原理

@EnableAspectJAutoProxy@EnableAspectJAutoProxy注解 激活Aspect自动代理 aop:aspectj-autoproxy/>开启对AspectJ自动代理的支持。在用到AOP的自动代理的时候用,如果你理解了Java的动态代理,很容易的就会熟悉AOP的自动代理的。@EnableAsync@EnableAsync注解开启异步方法的支持

2017-12-15 14:20:44 266

转载 java自定义注解

java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用。包含在 java.lang.annotation 包中。1、元注解元注解是指注解的注解。包括  @Retention @Target @Document @Inherited四种。1.1、@Retention: 定义注解

2017-12-15 13:54:10 221

原创 spring boot 定时器的使用例子

spring boot 中使用的时候不像spring中使用的时候还需要配置,直接拿来就可以用上栗子@Componentpublic class MeetingTask { Logger logger = LoggerFactory.getLogger( MeetingTask.class ); @Resource private Mapper1

2017-12-15 12:38:45 501

原创 枚举在java项目中的应用

近期做项目要用到枚举,所以研究了一下,以前都是用接口来定义一些值来作为常量用后来让用枚举,其实枚举真的比接口那样写好很多以前接口的写法public interface Status { // 未认证 Short NOT_AUTH = 1; // 已认证 Short HAS_AUTH = 2;}用的时候直接 Status.NOT_AUTH

2017-12-15 11:41:48 708

转载 CollectionUtils工具类的使用

CollectionUtils在真实项目中,是一个非常好用的工具类,使用非常频繁。它可以使代码更加简洁和安全。刚好在工作中利用这个工具类重构代码,顺便总结下分享分享:并集@Testpublic void testUnion(){ String[] arrayA = new String[] { "A", "B", "C", "D", "E", "F" }; Strin

2017-12-14 14:26:21 644

原创 mybatis 中 or 的使用

NoticeCoreExample noticeCoreExample = new NoticeCoreExample();NoticeCoreExample.Criteria criteria = noticeCoreExample.createCriteria();NoticeCoreExample.Criteria criteriaMemberName = noticeCoreExamp

2017-12-11 19:45:10 13622

转载 FileInputStream 与 BufferedInputStream 的区别和效率对比

BufferedInputStream是套在某个其他的InputStream外,起着缓存的功能,用来改善里面那个InputStream的性能(如果可能的话),它自己不能脱离里面那个单独存在。FileInputStream是读取一个文件来作InputStream。所以你可以把BufferedInputStream套在FileInputStream外,来改善FileInputStream的性能。

2017-12-07 16:13:02 2389

原创 java文件读写耗时比较

public class ImageSaveServiceImpl implements ImageSaveService { /** * 图片读取(一次性读取) * @param imgPath * @return */ @Override public String saveImage(String imgPath) {

2017-12-07 16:10:44 3153

原创 poi导出exce表实例

/** * 导出签到人员列表 * @param requestMsg */@Overridepublic String getMeetingVotedExport( MeetingSignDTO meetingSignDTO, RequestMsg requestMsg ) { if ( null == meetingSignDTO ) { throw new

2017-12-07 12:54:40 170

转载 Apache POI使用详解

1.POI结构与常用类(1)POI介绍     Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 Microsoft Office文档的功能。(2)POI结构说明 包名称说明HSSF提供读写Microsof

2017-12-07 12:02:58 214

转载 mybatis 的 like 查询

mybatis 自动生成的 like 查询,需要自己给参数添加 %,因为 mybatis 不会自动添加%号的,这是 mybatis 为了提供最大的灵活性决定的,因为 mybatis 并不知道我是要在哪一个位置添加 %。从此我们可以举一反三,凡是类似这类的问题,mybatis都不会自动的给我们添加我们期望的符号,因为它不知道该在哪里添加,这种添加反而变成了画蛇添足。 public Pa

2017-12-07 09:29:15 296

转载 SpringBoot+Redis+Nginx实现负载均衡以及Session缓存共享

1.环境信息nginx-1.11.10redis-latest包(redis windows版本)springboot1.5.1.RELEASE2.新建一个SpringBoot项目,参考如下链接:https://segmentfault.com/a/11...3.nginx和redis解压缩即可,并正常启动4.springboot集成Redis以及spr

2017-12-06 22:11:05 5564

转载 Mybatis generator 自动生成代码时 ,insert返回主键值

mvn mybatis-generator:generate如果要让generator自动添加该功能,可以如下配置:                       enableCountByExample="false" enableUpdateByExample="false"               enableDeleteByExample="false

2017-12-06 10:00:42 10775

转载 Java 实现系统权限控制思路

首先介绍下思路:1、用户表 user;2、角色表 role;3、菜单 menu;4、角色菜单权限表 role_menu;5、用户菜单权限表 user_menu;如图:根据用户角色取出该角色所有权限,并对用户进行权限分配;注意菜单的按钮(新增、删除、修改)权限是放在中间表(user_menu)中的;1、新增用户时,是要根据用户角色进行分配权

2017-12-04 13:44:30 1623

转载 MyBatis的Mapper接口以及Example的实例函数及详解

一、mapper接口中的方法解析mapper接口中的函数及方法方法功能说明int countByExample(UserExample example) thorws SQLException按条件计数int deleteByPrimaryKey(Integer id) thorws SQLException按主键删除in

2017-12-04 10:34:19 212

转载 mybatis 联合查询2

在这篇文章里面主要讲解如何在mybatis里面使用一对一、一对多、多表联合查询(类似视图)操作的例子。  注:阅读本文前请先大概看一下之前两篇文章。  一、表结构  班级表class,学生表student,班级学生关系表ClassStudent。  这里一个学生只会在一个班级里面,也就是一对一的关系;一个班级有多个学生,也就是一对多的关系。  结构如下:CREATE

2017-11-19 11:53:17 168

转载 mybatis 联合查询

mybatis 是通过什么来实现多表联合查询的。首先看一下表关系,如图:这里,我已经搭好了开发的环境,用到的是 SpringMVC + Spring + MyBatis,当然,为了简单期间,你可以不用搭前端的框架,只使用 Spring + MyBatis 就可以,外加 junit 测试即可。环境我就不带大家搭了,这里只说涉及到联合查询的操作。设计好表之后

2017-11-19 11:17:39 298

转载 作为大型网站架构必须考虑的十大问题

这里的大型网站架构只包括高互动性高交互性的数据型大型网站,基于大家众所周知的原因,我们就不谈新闻类和一些依靠HTML静态化就可以实现的架构了,我们以高负载高数据交换高数据流动性的网站为例比如海内,开心网等类似的web2.0系列架构。我们这里不讨论是PHP还是JSP或者.NET环境,我们从架构的方面去看问题,实现语言方面并不是问题,语言的优势在于实现而不是好坏,不论你选择任何语言,架构都是必

2017-08-11 13:06:20 227

转载 ActiveMQ的几种消息持久化机制

为了避免意外宕机以后丢失信息,需要做到重启后可以恢复消息队列,消息系统一般都会采用持久化机制。ActiveMQ的消息持久化机制有JDBC,AMQ,KahaDB和LevelDB,无论使用哪种持久化方式,消息的存储逻辑都是一致的。就是在发送者将消息发送出去后,消息中心首先将消息存储到本地数据文件、内存数据库或者远程数据库等,然后试图将消息发送给接收者,发送成功则将消息从存储中删除,失败则继续尝

2017-08-10 17:49:40 487

转载 ConcurrentHashMap原理分析

集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程需要同时访问一个中间临界区(Queue),比如常会用缓存作为外部文件的副本(HashMap)。这篇文章主要分析jdk1.5的3种并发集合类型(concurrent,copyonright,queue)中的ConcurrentHashMap,让我们从原理上细致的了解它们,能够让我们在深度项目开发中获益非浅

2017-08-07 11:12:42 172

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除