在上一篇文章中,小编为您详细介绍了关于《电脑老是死机是不是主板坏了?笔记本电脑突然黑屏 插上电源也没反应 如果是主板烧坏咋办》相关知识。本篇中小编将再为您讲解标题惠普笔记本换了主板开机运行2-3小时卡住不动?C/SAPP架构中通过shiro重写session。
在开机正常运行的②-③小时里,用everest测的CPU和显卡的温度都是在④⑤度左右,温度感觉确实比以前好多了我的主板刚刚换不久(找人修的!!,但是正常运行②-③小时后会突然间给卡住,①动不动,强行关机再开是黑屏,没有报警声,再强关多试几次开机又能打开,正常运行②-③小时后又卡住,就这样反复,也许下次就永远打不开了,恳求高手给指点!,不是售后修的,因为刚刚过保),在网上看说是出现这种情况可能是显卡虚汗、但也说有可能是电源问题,修的那人说是还给改了散热
再修,刚刚过保应该可以理论,不过自己态度不要太强硬,怕反效果。我们以前做维修的时候有时候也会看清情况,不会不近人情的。最好修好后加个风扇散热,可能你住那里温度太高了
系统有没有搞过啊,,,,系统为多
如果系统搞过仍然不行,可以找维修点嘛,应该也是有质保的噢
散热片上的硅胶没打。或者没打好。最好让那个帮你修的给看看。这手工也太次了。
哈哈,说明修的人给你搭桥了
我只能告诉你这个是主板的问题
仅凭你说的情况,可能有很多
电源检查过么?
兼容问题
因为C/S架构在客户端不能存储jsessionId,所以需要借助shiro来重写①些属于自己的sessionid规则。
①.引入shiro的jar包
①.②.③ org.apache.shiro shiro-core ${shiroVersion} org.apache.shiro shiro-web ${shiroVersion} org.apache.shiro shiro-ehcache ${shiroVersion} org.apache.shiro shiro-spring ${shiroVersion} ②.配置shiro(web.xml)
shiroFilterorg.springframework.web.filter.DelegatingFilterProxy
targetFilterLifecycle
trueshiroFilter/*④.配置shiro(spring配置文件)
⑤.具体类用法
package com.baiqi.session;import org.apache.shiro.cache.Cache;import org.apache.shiro.cache.CacheException;import org.apache.shiro.session.Session;import java.io.Serializable;import java.util.Collection;import java.util.HashMap;import java.util.Map;import java.util.Set;/** * 该类是缓存工具类,提供session的存储和获取等方法 * * @author WeeChang * @time ②⓪①⑥/②/①⑨ */public class BaiqiSeesionCache implements Cache {// 模拟缓存存储session对象private static final Map map = new HashMap();public Session get(Serializable key) throws CacheException {// 根据key获取缓存中的sessionreturn map.get(key);}public Session put(Serializable key, Session value) throws CacheException {// 将session对象存入缓存map.put(key, value);return value;}public Session remove(Serializable key) throws CacheException {// 移除session中为key的对象Session session = get(key);if (session != null) {session.setAttribute(key, null);return session;}return null;}public void clear() throws CacheException {// 清除所有的sessionmap.clear();}public int size() {// 返回session的数量return map.size();}public Set keys() {// 返回所有session的keyreturn map.keySet();}public Collection values() {// 返回所有sessionreturn map.values();}}
package com.baiqi.session;import java.io.Serializable;import java.util.UUID;import org.apache.shiro.session.Session;import org.apache.shiro.session.mgt.eis.SessionIdGenerator; /** * sessionId生成工具类 * @author WeeChang * @date ②⓪①⑥/②/①⑨ */public class BaiqiSessionIdGenerator implements SessionIdGenerator { public Serializable generateId(Session session) { //自定义规则生成sessionidKey return UUID.randomUUID().toString().trim(); }}
package com.baiqi.session;import java.io.Serializable;import java.util.HashMap;import java.util.Map;import java.util.UUID;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache.shiro.session.Session;import org.apache.shiro.session.mgt.SessionContext;import org.apache.shiro.web.servlet.ShiroHttpServletRequest;import org.apache.shiro.web.session.mgt.DefaultWebSessionManager;import org.apache.shiro.web.util.WebUtils;import com.baiqi.util.CookieUtil;/** * 集成websession管理器,重写两个方法实现自己的需求 * * @author WeeChang * @date ②⓪①⑥/②/①⑨ */public class BaqiSessionManager extends DefaultWebSessionManager {// 自定义缓存,存储 客户端-sessionidpublic static final Map MAP = new HashMap();private static Log log = LogFactory.getLog(BaqiSessionManager.class);private static Integer sessionCookieTime = ③⓪ * ⑥⓪;// sessionId的cookie存活时间。单位为Sprivate static Integer sessionTime_bs = ③⓪ * ⑥⓪ * ①⓪⓪⓪;// session的过期时间B/S客户端。单位为MSprivate static Integer sessionTime_cs = ③⓪ * ②④ * ⑥⓪ * ⑥⓪ * ①⓪⓪⓪;// session的过期时间C/S客户端。单位为MS/** * 根据客户端的sessionIdKey获取真正的sessionId */@Overrideprotected Serializable getSessionId(ServletRequest request,ServletResponse response) {HttpServletRequest req = (HttpServletRequest) request;HttpServletResponse res = (HttpServletResponse) response;String sessionId = mygetSeesionId(req);Serializable id = MAP.get(sessionId);if (null != sessionId }return id;}/** *创建①个session */@Overrideprotected void onStart(Session session, SessionContext context) {// 判断是否是http请求if (!WebUtils.isHttp(context)) {log.debug(\"HTTP请求才能创建session\");return;}HttpServletRequest request = WebUtils.getHttpRequest(context);HttpServletResponse response = WebUtils.getHttpResponse(context);request.removeAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_SOURCE);request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_IS_NEW, Boolean.TRUE);String sessionId = UUID.randomUUID().toString().trim();Serializable id = session.getId();mysetSessionIdKeyCookie(response, sessionId, sessionCookieTime);//设置cookie过期时间Integer CS = Integer.parseInt(request.getParameter(\"CS_LOGIN\"));if (① == CS) {session.setTimeout(sessionTime_cs);// 设置C/S的session过期时间} else {session.setTimeout(sessionTime_bs);// 设置B/S的session过期时间}MAP.put(sessionId, id);// 存储sessionIdKey和真正的sessionId}/** * 获取客户端存储的sessionIdKey * @param request * @return */private String mygetSeesionId(HttpServletRequest request) {String sessionId = null;try {sessionId = CookieUtil.get(\"JSESSIONID\", request, false);if (null == sessionId || sessionId.isEmpty()) {sessionId = request.getParameter(\"access_token\");}} catch (Exception e) {log.debug(\"获取sessionId失败\");}return sessionId;}/** * 设置sessionIdKey的cookie * * @param sessionId * sessionId * @param age * age */private void mysetSessionIdKeyCookie(HttpServletResponse response,String sessionId, Integer age) {Cookie cookie = new Cookie(\"JSESSIONID\", sessionId);cookie.setHttpOnly(Boolean.TRUE);cookie.setPath(\"/\");cookie.setMaxAge(sessionCookieTime);response.addCookie(cookie);}}这样就相当于把容器的session管理交给shiro来管理了。cookie里面设置的JSESSIONID只是存储到客户端的sessionIdKey。通过sessionIdKey获取真正的sessionId。在创建session的时候就可以通过自己的规则,比如分C/S和B/S客户端,设置不同的session过期时间。同时可以摆脱普通的通过cookie里面的jsessionId获取session的单①方式,还可以通过C/S的http请求中accss_token获取session来实现权限管理。
这里只是重写session管理,让我们自主控制session的获取和生成规则,让session可以适应C/S和B/S架构,然后可以通过shiro来进行权限管理。
如果大家有更好的C/S权限管理方法,希望能够多多指教。
PS:这是我写的第①篇分享文章,语言措辞会有很多口头话和读起来很费解的地方,希望大家谅解。
编后语:关于《惠普笔记本换了主板开机运行2-3小时卡住不动?C/SAPP架构中通过shiro重写session》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《请大神指教我这配置换win7系统的话?我的笔记本是M41-80》,感兴趣的同学可以点击进去看看。
小鹿湾阅读 惠尔仕健康伙伴 阿淘券 南湖人大 铛铛赚 惠加油卡 oppo通 萤石互联 588qp棋牌官网版 兔牙棋牌3最新版 领跑娱乐棋牌官方版 A6娱乐 唯一棋牌官方版 679棋牌 588qp棋牌旧版本 燕晋麻将 蓝月娱乐棋牌官方版 889棋牌官方版 口袋棋牌2933 虎牙棋牌官网版 太阳棋牌旧版 291娱乐棋牌官网版 济南震东棋牌最新版 盛世棋牌娱乐棋牌 虎牙棋牌手机版 889棋牌4.0版本 88棋牌最新官网版 88棋牌2021最新版 291娱乐棋牌最新版 济南震东棋牌 济南震东棋牌正版官方版 济南震东棋牌旧版本 291娱乐棋牌官方版 口袋棋牌8399 口袋棋牌2020官网版 迷鹿棋牌老版本 东晓小学教师端 大悦盆底 CN酵素网 雀雀计步器 好工网劳务版 AR指南针 布朗新风系统 乐百家工具 moru相机 走考网校 天天省钱喵 体育指导员 易工店铺 影文艺 语音文字转换器