Shiro 教程,关于最近反应的相关异常问题,解决方法合集。

JSON 2016-08-26 00:13:57 25594

shiro demo下载

Shiro + SSM(框架) + Freemarker(jsp)讲解的权限控制Demo,还不赶快去下载?




前言:本教程适合有一定基础的 Java程序员使用,如果对 Shiro 有一定的了解,过程中会很快接受,建议在使用 Shiro教程Demo的时候,建议直接Maven,教程Demo中没有对Maven过多的依赖,只有一个依赖包的管理,如果对Maven不熟悉,你可以安装一个MyEclipse8.5,自带Maven环境,本站有 在线生成MyEclipse注册码。注意,开始不管你技术多牛,不管我的文档写的有多么不好,都建议你看完,这样大概心里有个数,Demo里有什么功能,哪些地方怎么实现的?都知道个大概。

Shiro教程地址:https://www.sojson.com/shiro  (含项目下载地址)。

本篇叙述的是问题集合,以及相关解决方案,如果你在使用本站提供的 SSM + Shiro + Redis + Freemarker 的Shiro教程 中遇到问题,以及解决方案,可以联系站长告知,我会第一时间更新到此篇博客之中。

一、Shiro 教程 Demo 环境准备。

环境在https://www.sojson.com/shiro 中说的很详细,我Ctrl + C 过来。

开发工具: Eclipse  MyEclipse  Idea  等等。

依赖第三方:Mysql 5.0 以上、 Redis  (v2.8左右)。

需要的配置:jdbc.properties 中配置 Mysql  的信息、spring-cache.xml 配置 Redis  配置,如果是默认配置,就不用换,Redis Windows 环境安装教程:https://www.sojson.com/blog/110.html

这里特别强调一下,开发工具的问题。

IDEA:很多同学用IDEA 的时候出现了问题,主要出现在2个地方,一个是 XML 打包不进去,还有一个是Maven 的问题,但是如果对IDEA 环境比较熟悉,那就没这个问题。

Eclipse:最新版本有问题,其实也是在打包和 Maven  上。不是最新版本,亲测好使没毛病。

Myecilpse8 ~ Myecilpse 10 :亲测好使,没毛病。

我开发的工具版本:

Eclipse:Eclipse IDE for Java Developers —— Version: Helios Service Release 2 ,后面由于家里环境是MyEclipse8.5,后面是采用MyEclipse8.5,开发完成的;

Mysql:版本是5.6 ,用的是阿里的RDS 服务,底层是Mysql5.6

Redis:版本是2.8.2400 / 64bit 

二、Redis(Cache)问题。

自查:有没有安装redis,有没有成功启动,如果有,请确认Redis是否IP和端口有改变,Shiro 教程Demo中配置如下:

<bean id="jedisPool" class="redis.clients.jedis.JedisPool">
	<constructor-arg index="0" ref="jedisPoolConfig"/>
	<constructor-arg index="2" value="6379"/><!--默认端口-->
	<constructor-arg index="3" value="5000"/><!--链接超时时效-->
	<constructor-arg index="1" value="127.0.0.1"/><!--默认本地ip地址-->
</bean>

这些都是默认的配置,请核对一遍。如果没问题,请把配置改成如下的配置:

<!-- redis 配置,也可以把配置挪到properties配置文件中,再读取 -->
<bean id="jedisPool" class="redis.clients.jedis.JedisPool">
	<constructor-arg index="0" ref="jedisPoolConfig" />
    <constructor-arg index="2" value="6379"  name="port" type="int"/>
    <constructor-arg index="3" value="5000"  name="timeout" type="int"/>
    <constructor-arg index="1" value="127.0.0.1" name="host" type="java.lang.String"/>
</bean>

这种 arguments 构造的方式,之前配置有缺点。

因为参数类型不一致,有时候jar 和环境的问题,导致参数根据index 对应,会处理问题,

理论上加另一个 name ,就可以解决,现在把name type 都加上,更保险。

那缓存到此基本没问题,还有问题,加群交流。

新版本 Shiro_SSM_0.2 会解决这个问题。

三、登录问题。

现有现象:

  1. 登录后提示 “登录成功” ,但是没跳转,也反应,或者404 了。

  2. 输入帐号密码后,点击登录,没有任何反应。
  3. 登录的时候,提示“登录成功”,跳转后,又回到登录页面了。

对应解决:

  1. 查看前后台是否报错,这时候应该是Redis有问题,要么后台其他报错了。
  2. 项目是否部署到 root ,也就是根目录,因为项目中没有basePath ,所以有问题,新版本会解决这个问题。

  3. 这个问题应该是写入Cookie 的问题,项目里有二个这个配置(spring-shiro.xml )。
<!-- 会话Cookie模板 -->
<bean id="sessionIdCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
	<!--cookie的name,我故意取名叫xxxxbaidu -->
    <constructor-arg value="v_v-s-baidu"/>
    <property name="httpOnly" value="true"/>
    <!--cookie的有效时间 -->
    <property name="maxAge" value="-1"/>
    <!-- 配置存储Session Cookie的domain为 一级域名 -->
    <property name="domain" value=".itboy.net"/>
</bean>
<!-- 用户信息记住我功能的相关配置 -->
<bean id="rememberMeCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
    <constructor-arg value="v_v-re-baidu"/>
    <property name="httpOnly" value="true"/>
    <!-- 配置存储rememberMe Cookie的domain为 一级域名 -->
    <property name="domain" value=".itboy.net"/>
    <property name="maxAge" value="2592000"/><!-- 30天时间,记住我30天 -->
</bean>

里面有下面配置,为 .itboy.net 项,删除即可。

<!-- 配置存储rememberMe Cookie的domain为 一级域名 -->
<property name="domain" value=".itboy.net"/>



有其他问题,或者解决了,请联系群主,我把过程及解决方案加上....


版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/164.html

转载时必须以链接形式注明原始出处及本声明。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

关于作者
一个低调而闷骚的男人。
相关文章
Shiro教程(四)Shiro + Redis配置
解决IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法解决后支持HTML5
MySQL数据库为用户设置密码,Mysql修改密码。Mysql忘记密码解决方法
Spring 3.x 升级到Spring 4.x 注意事项和步骤,错误解决方法
Shiro教程(八)Shiro Freemarker标签的使用。
Shiro教程(五)Shiro + Redis实现
Shiro 通过配置Cookie 解决多个二级域名的单点登录问题
Shiro 教程Shiro教程0.2 下载,Shiro功能修复与升级说明。
document.domain解决跨域问题,详细讲解。
Shiro 教程,Ajax请求拦截跳转页面方案
最新文章
C语言的变量和常量 30
PHP变量剖析 113
SQL全外连接剖析 279
SQL自然连接剖析 184
springboot启动原理 416
SQL右连接【RIGHT JOIN】详解及图解 467
SQL左链接【LEFT JOIN】详解及图解 396
SQL非等值连接剖析 285
SQL等链接剖析 291
SQL内连接详解及图解 417
最热文章
最新MyEclipse8.5注册码,有效期到2020年 (已经更新) 680244
苹果电脑Mac怎么恢复出厂系统?苹果系统怎么重装系统? 674611
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 599966
免费天气API,天气JSON API,不限次数获取十五天的天气预报 568894
Jackson 时间格式化,时间注解 @JsonFormat 用法、时差问题说明 552088
我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比 509262
Elasticsearch教程(四) elasticsearch head 插件安装和使用 479677
Jackson 美化输出JSON,优雅的输出JSON数据,格式化输出JSON数据... ... 263408
Java 信任所有SSL证书,HTTPS请求抛错,忽略证书请求完美解决 244147
Elasticsearch教程(一),全程直播(小白级别) 225254
支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

查看我的收藏

正在加载... ...