IntelliJ IDEA Live Template收集

IntelliJIDEA的Live Template是一套非常强大的代码自动生成系统,合理使用会大大提升编码速度。这里记录一下我平时使用到的Live Template。

阅读全文

Spring学习-ContextLoaderListener启动流程

我们在配置Spring WEB项目的时候,通常会有这样的配置:

1
2
3
4
5
6
7
8
9
10
<listener>
<listenerclass>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:config/applicationContext.xml</param-value>
</context-param>

在部署描述符中指定ContextLoaderListener,通过这个Listener来读取xml配置,达到启动Spring应用上下文的目的。今天我们来看看ContextLoaderListener是如何启动Spring容器的。

阅读全文

Spring笔记-文件上传

Servlet3笔记-文件上传 | 木杉的博客中提到过,Servlet3.0以前,处理上传文件是非常麻烦的。而SpringMVC包装了这个复杂性,我们可以很方便的在任何Servlet版本上方便的处理上传文件。

阅读全文

Servlet3笔记-文件上传

在Servlet3.0以前,处理文件上传是非常痛苦的,网上查资料可以看到处理上传文件需要一百多行代码,而且是在依赖了第三方库的情况下。Servlet3.0添加了文件上传的原生支持,可以很简单的处理文件上传。

阅读全文

Spring笔记-@EnableWebMvc与WebMvcConfigurationSupport的区别

参考资料

阅读全文

Spring笔记-Spring Security学习

问题:

  • Spring Security是干嘛的?
  • Spring Security如何配置?
  • Spring Security如何设置需要被保护的URL?
  • Spring Security如何设置获取用户角色信息的策略?
  • Spring Security如何自定义登录页面?
  • Spring Security如何自定义退出页面?
  • Spring Security如何设置权限验证失败后的处理?

阅读全文

Spring笔记-Spring配置

对于spring的配置,分为两块,我把它们称之为:

  • 启动配置:Spring是集成到我们的应用中使用的,所以不同的应用有不同的方式来启动spring。最常见的场景是web应用,启动的配置在web.xml部署描述符中。对于其他的Java程序,可能通过代码调用的方式直接启动Spring,那么就没有启动配置了。
  • 容器配置:Spring容器的配置,一般的名字是applicationContext.xml,指挥Spring如何搜索,装配Bean。

阅读全文

傻逼有道词典划词功能触发Ctrl+C

平台Windows。最近发现Ctrl+CCtrl+V进行复制粘贴老是有奇奇怪怪的问题。明明复制多次了,但是粘贴的东西不对。简直要把我搞得神经质了,代码质量直线下滑。

一开始觉得是不是因为在AHK中设置了一些奇奇怪怪的快捷键(为了和MAC的保持一致)导致的。但是关了好像依然存在。。。

阅读全文

Spring笔记-Spring如何实现零配置启动

看到一些Spring的项目,其web.xml是空的,但是Spring环境依然正确启动了,颇感好奇。原来这是在Servlet3推出后,Spring就跟进的功能。

阅读全文

Servlet3笔记-metadata-complete

metadata-complete是一个在Servlet2.5就存在的一个属性。Servlet2.5搭了Java5的顺风车,支持注解,这就涉及到需要扫描类的问题了。在类的数目比较多的情况下,扫描类可能会带来启动时间的延长。所以为了可以控制这个过程,web.xmlweb-app标签添加了一个属性:metadata-complete,如果为true,表示web.xml中包含了全部的配置信息了,不需要再扫描代码。而如果为false,则表示web.xml中没有包含全部信息,还需要扫描类。

阅读全文