1. login.jsp中的表单增加验证码image.jsp
2. 编写新的登录管理规则类DefaultFormAuthenticationFilter继承FormAuthenticationFilter类,覆写其中的onAccessDenied()方法
4. 修改spring-shiro.xml文件,修改内置的登录过滤器为自己编写的DefaultFormAuthenticationFilter,并增加验证码的属性
<!-- 内置的自定义的登录控制过滤器 -->
<bean id="formAuthenticationFilter" class="cn.mldn.shiro.realm.filter.DefaultFormAuthenticationFilter">
<property name="usernameParam" value="mid"/>
<property name="passwordParam" value="password"/>
<property name="rememberMeParam" value="rememberme"/>
<property name="randname" value="rand"/>
<property name="randparam" value="code"/>
<property name="loginUrl" value="/login.jsp"/>
<property name="failureKeyAttribute" value="error"/>
</bean>