摘要: 一、简述 multipart格式的数据会将一个表单拆分为多个部分(part),每个部分对应一个输入域。在一般的表单输入域中,它所对应的部分中会放置文本型数据,但是如果上传文件的话,它所对应的部分可以是二进制。类似这样: 二、配置multipart解析器 尽管multipart请求看起来很复杂,但在S 阅读全文
posted @ 2018-01-03 13:25 JMCui 阅读(7856) 评论(0) 推荐(1)
摘要: 一、原理 Spring MVC基于模型-视图-控制器(Model-View-Controller,MVC)模式实现,它能够帮你构建像Spring框架那样灵活和松耦合的Web应用程序,将请求处理的逻辑和视图中的渲染实现解耦。 1、DispatcherServlet是Spring MVC的核心 。Spr 阅读全文
posted @ 2017-12-31 22:30 JMCui 阅读(990) 评论(0) 推荐(0)
摘要: 一、简介 Swagger的目标是为REST API定义一个与语言无关的标准接口,允许用户发现和理解计算机服务的功能,而无需访问源代码。当通过Swagger正确定义时,用户可以用最少量的实现逻辑理解远程服务并与之交互。类似于低级编程所做的接口。 二、实现步骤 1、添加 Maven 依赖 2、Swagg 阅读全文
posted @ 2017-12-24 16:01 JMCui 阅读(4817) 评论(0) 推荐(0)
摘要: 一、概念 1、理论 把横切关注点和业务逻辑相分离是面向切面编程所要解决的问题。如果要重用通用功能的话,最常见的面向对象技术是继承(inheritance)或 组成(delegation)。但是,如果在整个应用中都使用相同的基类,继承往往会导致一个脆弱的对象体系;而使用组成可能需要对委托对象进行复杂的 阅读全文
posted @ 2017-12-15 09:33 JMCui 阅读(2163) 评论(0) 推荐(0)
摘要: 一、概述 在开发过程中,线程池可以带来如下好处: New Thread的弊端如下: a、每次New Thread新建对象性能差。 b、线程缺乏统一的管理,可能无限制的新建线程,相互之间竞争,极可能占用过多的系统资源导致死机 或者 OOM。 c、缺乏更多功能,如定时执行、定期执行、线程中断。 Java 阅读全文
posted @ 2017-12-10 17:28 JMCui 阅读(18640) 评论(0) 推荐(2)
摘要: 一、概述 Spring框架是以 简化Java EE应用程序的开发 为目标而创建的。Spring可以实现很多功能,但是这些功能的底层都依赖于它的两个核心特性,也就是依赖注入和面向切面编程。几乎Spring所做的任何事情都可以追溯到下述的一条或多条策略: 基于POJO的轻量级和最小侵入性编程;通过依赖注 阅读全文
posted @ 2017-12-08 09:27 JMCui 阅读(1290) 评论(0) 推荐(1)
摘要: 一、前言 随着每天业务的增长,Tomcat 的catalina.out日志 变得越来越大,占用磁盘空间不说。要查看某个时候的日志的时候,庞大的日志让你顿时无从下手,所以日志的切割的变得刻不容缓。而且,切割后的日志,还可以定期清理掉久远的日志...... 二、Tomcat 日志分割 我们采用日期形式切 阅读全文
posted @ 2017-12-07 18:51 JMCui 阅读(10047) 评论(2) 推荐(6)
摘要: 一、背景 由于项目的业务是不断往前跑的,所以难免数据库的表的量会越来越庞大,不断的挤占硬盘空间。即使再大的空间也支撑不起业务的增长,所以定期删除不必要的数据是很有必要的。在我们项目中由于不清理数据,一个表占的空间竟然达到了4G之多。想想有多可怕... 这里介绍的是用MySQL 建立一个定时器Even 阅读全文
posted @ 2017-12-04 12:58 JMCui 阅读(982) 评论(0) 推荐(0)
摘要: 一、框架基本介绍 1、概念 支持普通SQL查询、存储过程和高级映射,简化和实现了Java 数据持久化层的的开源框架,主要流行的原因在于他的简单性和易使用性。 2、特点 持久层 、ORM(对象关系映射) 、轻量级、支持SQL语句。 3、工作原理 应用程序读取mybatis的配置文件,形成配置对象。 通 阅读全文
posted @ 2017-11-12 23:30 JMCui 阅读(1540) 评论(3) 推荐(0)
摘要: 一、什么是XRebel? 1、介绍 XRebel 是不间断运行在 web 应用的交互式分析器。可以看到网页上的每一个操作在前端以及服务端、数据库、网络传输都花费多少时间,当发现问题会在浏览器中显示警告信息。是调优程序、追踪性能问题的一大利器。 2、相关链接 XRebel官方简明教程:http://z 阅读全文
posted @ 2017-11-07 23:10 JMCui 阅读(9901) 评论(0) 推荐(3)
摘要: 一、前言 在工作中,难免遇到各种各样的问题,每个人似乎都有一套自己的解决方案。而我,又不想每次解决完问题就把东西扔了,捡了芝麻,丢了西瓜,什么时候才能进步勒?学习要靠积累,毕竟量变才能引起质变嘛。所以写了这篇博文,不定时更新自己项目中遇到的问题、踩过的那些坑...... 二、项目 1、文件流 jav 阅读全文
posted @ 2017-10-27 15:55 JMCui 阅读(823) 评论(0) 推荐(0)
摘要: 一、简介 阿里巴巴于10月14日在杭州云栖大会上,正式发布了《阿里巴巴Java开发规约》扫描插件!该插件基于《阿里巴巴Java开发规约》手册内容,在扫描代码后,将不符合规约的代码按Blocker/Critical/Major三个等级显示在下方,甚至在IDEA上,还基于Inspection机制提供了实 阅读全文
posted @ 2017-10-18 09:40 JMCui 阅读(611) 评论(0) 推荐(0)
摘要: 一、什么是SVN? Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的 阅读全文
posted @ 2017-09-28 12:55 JMCui 阅读(976) 评论(0) 推荐(0)
摘要: 一、概念 定时计划任务功能在Java中主要使用的就是Timer对象,它在内部使用多线程的方式进行处理,所以它和多线程技术还是有非常大的关联的。在JDK中Timer类主要负责计划任务的功能,也就是在指定的时间开始执行某一个任务,但封装任务的类却是TimerTask类。 通过继承 TimerTask 类 阅读全文
posted @ 2017-09-14 14:50 JMCui 阅读(23162) 评论(0) 推荐(4)
摘要: 一、前言 本文要介绍使用Java5中 Lock 对象,同样也能实现同步的效果,而且在使用上更加方便、灵活,主要包括 ReentrantLock 类的使用和ReentrantReadWriteLock 类的使用。 lock 与 synchronized 关键字的区别? synchronized 是ja 阅读全文
posted @ 2017-09-13 16:07 JMCui 阅读(714) 评论(0) 推荐(0)