# shiro-struts2 **Repository Path**: yanglong.com/shiro-struts2 ## Basic Information - **Project Name**: shiro-struts2 - **Description**: 简单整合struts2的shiro项目,只有简单的功能展示,更多功能需要自行扩展 技术选型:spring4;struts2;mybatis; ORM框架可以更换为hibernate - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 9 - **Forks**: 3 - **Created**: 2014-10-29 - **Last Updated**: 2021-07-09 ## Categories & Tags **Categories**: authority-management **Tags**: None ## README #shiro-struts2 简单整合,更强及自身业务需要自己实现扩展 shiro本身是插件式的,所以ORM层框架可更换,web层框架可更换, 使用shiro最简单的是使用shiro本身提供的已有的类,自己只需扩展一个自定义的realm即可。 使用shiro应该注意的一些问题: 比较多的问题,为什么什么都正确就是不跳转成功后的链接,首先shiro是你访问受保护的链接,认证授权通过后直接跳转之前你访问的链接, 其次,你直接使用登录链接访问,因为有的浏览器会请求网站的标志,你没有将他放入匿名访问的规则里,导致认证后不跳转你设置的成功链接,报404,所以要添加 /favicon.ico=anon。 如果想在已有项目中整合进去,首先保证项目是可运行的。 其次,先另起新的一个项目使用shiro,将登录退出方法改造,将相关service层和dao等去掉, 在realm中使用固定信息获取方式等整合时再注入实际使用逻辑类。 意思就是只是用web层框架与shiro框架,以减少不必要的麻烦。 shiro的整合思路:自定义realm的编写,自定义credentialsMatcher的编写, cache的实现(如有必要,shiro默认的cache是基于内存的。一般转接到公用cache统一spring管理。但使用nosql时需另外考虑) SQL地址: 数据库默认帐号密码都是root http://dr-yanglong.iteye.com/blog/1989484