本月博客排行
-
第1名
龙儿筝 -
第2名
lerf -
第3名
paulwong - fantaxy025025
- johnsmith9th
- xiangjie88
- zysnba
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- benladeng5225
- e_e
- gengyun12
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- xpenxpen
- kaizi1992
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- xiangjie88
- wangchen.ily
- Jameslyy
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- zxq_2017
- nychen2000
- lzyfn123
- forestqqqq
- wjianwei666
- 龙儿筝
- ajinn
- siemens800
- zhanjia
- Xeden
- hanbaohong
- java-007
- 喧嚣求静
- mwhgJava
开源软件专栏最新文章
Spring Boot(19)——使用Mybatis
使用Mybatis
Mybatis官方提供了整合Spring Boot的Starter,需要在Spring Boot应用中使用Mybatis,需要在pom.xml中添加如下依赖,当前最新的版本是1.3.2。
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<art ...
SpringMVC配置以Java类配置
SpringMVC配置以Java类配置
如果在使用SpringMVC时不希望采用XML的配置方式,而采用基于Java类的配置也是可以的。如果还希望在web.xml中配置DispatcherServlet,则需要通过init-param指定contextClass为AnnotationConfigWebApplicationContext,然后把context ConfigLocation指定为S ...
SpringMVC对Servlet3异步请求的支持
SpringMVC对Servlet3异步请求的支持
SpringMVC对Servlet3异步请求的支持有两种方式,分别是通过处理器方法返回Callable和DeferredResult。按照Servlet3的规范,支持异步请求时需要配置对应的Servlet和Filter支持异步请求,为了使SpringMVC支持异步请求的处理,需要在定义DispatcherServlet时配置其支持异步请求,在D ...
SpringMVC之直接指定路径对应的视图名称
直接指定路径对应的视图名称
在使用SpringMVC开发Web应用时会存在一些没有业务逻辑,只需要直接展示对应的页面的请求。对于这些请求我们可以不定义Controller处理方法,直接建立请求路径和视图的对应关系。在使用基于XML的SpringMVC配置时可以通过mvc namespace提供的view-controller来指定请求路径和视图的对应关系。下面的代码中就指定了当请求路径是/时将直 ...
SpringMVC之指定静态资源路径
指定静态资源路径
当SpringMVC的DispatcherServlet配置的映射路径是/时,所有的请求都将被SpringMVC拦截,如果我们想访问某个路径下的静态资源其实是不能直接访问的。基于这种情况,SpringMVC提供了<mvc:resources/>配置来告诉SpringMVC,哪些请求是针对静态资源的。它需要指定两个参数,location用来指定静态资源对应的实际路径, ...
通过程序定义DispatcherServlet
通过程序定义DispatcherServlet
以往我们在使用SpringMVC的时候都需要在web.xml中定义一个DispatcherServlet。基于Servlet3编程时我们也可以通过程序来注册DispatcherServlet,Servlet3的ServletContainerInitializer允许我们在容器启动的时候通过程序注册一些Servlet对象,Spring提供了一个实现 ...
SpringMVC之ResponseStatus
SpringMVC之ResponseStatus
ResponseStatus是由SpringMVC提供的一个注解,可以标注在异常处理方法上,也可以标注在异常类上,用来指定在SpringMVC处理请求的过程中抛出了指定的异常时将响应给客户端的状态码和错误信息。比如我们希望在抛出了IllegalArgumentException时响应给客户端的状态码是502,错误信息是Hello Error,我们 ...
SpringMVC之ControllerAdvice
SpringMVC之ControllerAdvice
SpringMVC从3.2版本开始提供了一个org.springframework.web.bind.annotation.ControllerAdvice注解,使用它标注的Class在启用了注解的支持时,在进 ...
SpringMVC异常处理之ResponseEntityExceptionHandler
SpringMVC异常处理之ResponseEntityExceptionHandler
ResponseEntityExceptionHandler中包装了各种SpringMVC在处理请求时可能抛出的异常的处理,处理结果都是封装成一个ResponseEntity对象。通过ResponseEntity我们可以指定需要响应的状态码、header和body等信息,响应的body会被HttpMessa ...
SPARROW-JS 从0开始写 0依赖,原生JS框架
SPARROW-JS 前端JS框架变幻莫测,但原生js 接口不会变,所以以不变应万变,需要对前端js的原生api熟练掌握。为减少学习成本,将sparrow js 开放,支持大部分网站开发常用组件,代码简洁,无冗余。
功能列表
STRING 方法
ARRAY 方法
AJAX
BROWSER 浏览器相关支持
VALIATE 前端验证框架
Toolip 提示
MENU菜单支持
JQU ...
Sparrow算法篇 从日期取交集到思维模式-2
接上一篇
Sparrow算法篇 从日期取交集到思维模式
这样的时间段有成百上千条该如何处理?
如果我们需要根据具有日期交集的时间段分组呢?
如果我们的业务不是日期,而是其他数据类型呢?如何抽象出计算模型?非日期型数据也可以进行分组?
上一篇分享日期取交集的核心逻辑。 但映射到具体业务上可能有更复杂的场景,比如第一个问题,两个日期取交集还好搞好,但日期段很多的情况下,如何按每一个时间段 ...
SpringMVC之RequestContextUtils工具类
RequestContextUtils类
RequestContextUtils类是Spring提供的用于从HttpServletRequest上下文中获取特殊对象的工具类。该工具类虽然是属于Spring的一部分,但是如果在应用中我们有需要直接获取相关信息的需求,我们也可以直接使用。
从request中获取WebApplicationContext。
RequestContextUtil ...
SpringMVC对theme选择的支持
theme选择
一组主题通常是一组CSS和图片的组合,比如网址导航网站常见的以颜色区分的主题。SpringMVC提供了对主题的支持,由org.springframework.ui.context.Theme表示。Theme由ThemeResource来根据theme名称来解析出来,它的定义如下。
public interface ThemeSource {
Theme getThe ...
SpringMVC传递参数到重定向后的页面
RedirectAttributes传递参数到重定向后的页面
Servlet容器在页面跳转时有两种方式,forward和redirect的,其中forward时应用的是在服务端的跳转,应用的是同一个request。而redirect是服务端通过响应301和对应的新地址告诉浏览器让浏览器重新请求新的地址。第一次请求和第二次请求使用的不是同一个request的。所以这种情况下,不能直接通过reque ...
Spring整合Shiro使用EL表达式
Shiro是一个轻量级的权限控制框架,应用非常广泛。本文的重点是介绍Spring整合Shiro,并通过扩展使用Spring的EL表达式,使@RequiresRoles等支持动态的参数。对Shiro的介绍则不在本文的讨论范围之内,读者如果有对shiro不是很了解的,可以通过其官方网站了解相应的信息。infoq上也有一篇文章对shiro介绍比较全面的,也是官方推荐的,其地址是https://www. ...
高性能轻量级markdown 解析器java 版sparrow-markdown
动机
markdown 已成为网络博客最主要的排版格式。但一般都是有现成的软件支持,比如有道云笔记。但要想将markdown 功能集成到自己的博客或者公司的oa 上,需要一款开源的轻量的markdown解析程序,从github 找了一些开源项目相对都比较重,二次开发成本较大,所以笔者在春节期间开发了一款轻量级的markdown解析程序,符合oop开发原则,最大化复用和解耦。方便二次开发集成。
...
Sparrow 算法篇 由日期取交集到思维模式
日期交集
早在13年左右的时侯,做过一个系统,功能很简单,做一个日程管理功能,这里边涉及到一个小知识点,就是日期取交集。今天跟大家分享的是从这个点展开的,时间段取交集的话题。
业务逻辑
逻辑很简单,就是一两个日期段取交集,可如果按正常思维去实现,其实日期交集的场景我们可以穷举出来,大概有4种情况
s1--------------e1
s2------------ ...
SpringMVC的DispatcherServlet的默认策略
SpringMVC的DispatcherServlet的默认策略
在使用SpringMVC的时候,我们知道需要HandlerMapping定义请求路径与处理器之间的映射,需要HandlerAdapter来调用处理器方法并返回一个ModelAndView对象,需要ViewResolver来解析视图。这些是SpringMVC中最基本的接口。通常我们都需要在SpringMVC的配置文件中定义好需要使用 ...
自己动手写mvc框架SPARROW MVC
SPARROW-MVC
SPARROW-MVC 是SPARROW框架其中的一员,模拟SPRING MVC功能实现。 目前实现功能列表
参数自动化注入
FLASH参数跨页面传递(包括中传页面和重定向页面)
RESTFUL风格支持
参数解析功能
返回结果解析
URL-METHOD映射
URL REWRITE功能(自动原生支持)
拦截器支持
国际化支持
JSON返回支持(原生支 ...
REDIS客户端封装实践2
接上一篇
[REDIS客户端封装意淫](https://www.jianshu.com/p/03132e0d50e2)
对现在有接口,进一步重构。
进一步对客户端友好封装,对数据类型的转换,封装进框架内。
增加CacheDataNotFound hook,并保留原有异常抛出接口,提供客户端灵活调用。
对key的business 部分提供灵活扩展接口,为特定业务的监控 ...
开源软件热门文章
博客专栏评论
线上demo已经上线http://www.sparrowzoo.net/examples/markdo ...
zh_harry 评论了 高性能轻量级markdown 解析器java 版spar ...
zh_harry 评论了 高性能轻量级markdown 解析器java 版spar ...