当前位置: 首页 > news >正文

css网站开发站长统计app软件下载官网安卓

css网站开发,站长统计app软件下载官网安卓,安徽建设工程信息网查询平台公司,正规自媒体培训学校做了个小项目,当初设计的是只有一个模块的用户行为被记录,其他不用记录,昨天突然说,要用户在整个系统的行为都要被记录.很懵逼,如果把用户行为的记录放在各个模块,可以很精确的记录,但是各个模块都要有更改.如果使用拦截器,只能很粗粒度的记录用户的行为.下面是使用拦截器的一些…

做了个小项目,当初设计的是只有一个模块的用户行为被记录,其他不用记录,昨天突然说,要用户在整个系统的行为都要被记录.

很懵逼,如果把用户行为的记录放在各个模块,可以很精确的记录,但是各个模块都要有更改.如果使用拦截器,只能很粗粒度的记录用户的行为.

下面是使用拦截器的一些关键代码,主要是记录一下在拦截器中操作数据库得方法.

参考文章,文章介绍很详细,需要完整介绍的可以直接去看看.

拦截器

/**

* xxxxxxxxxxx

* @author xxxxxxxx

* @date 2018/9/6 10:38

*/

public class UserBehaviorInterceptor implements HandlerInterceptor{

@Override

public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object object, Exception e)

throws Exception {

}

@Override

public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)

throws Exception {

// TODO Auto-generated method stub

}

@Override

public boolean preHandle(HttpServletRequest request, HttpServletResponse arg1, Object arg2) throws Exception {

//1. 创建用户行为日志实例

//---------------------------------

//2, 获取相关数据,并保存在用户行为日志实例中

//3. 获取DAO

//-----------------------此处比较重要,下面有说明--------------------

//4. 把日志信息保存到数据库中

//--------------------

return true;

}

//获取dao,拦截器中只能通过webapplicationcontextutils获取spring boot中的bean.

private T getDao(Class t,HttpServletRequest request){

BeanFactory beanFactory = WebApplicationContextUtils.getRequiredWebApplicationContext(request.getServletContext());

return beanFactory.getBean(t);

}

}

备注:在拦截器中获取spring boot中的bean需要通过webapplicationcontextutils获取

把拦截器添加到spring boot容器中

@Configuration

public class UserBehaviorInterceptorConfiguration extends WebMvcConfigurerAdapter {

@Override

public void addInterceptors(InterceptorRegistry registry) {

super.addInterceptors(registry);

registry.addInterceptor(new UserBehaviorInterceptor()).addPathPatterns("/**");

}

}

数据库链接空闲时间和连接池

之前做的一个管理网站,开着服务一天,最后访问的时候,会偶尔出现错误,刷新一下有好了,后台提示的是

com.mysql.cj.jdbc.exceptions.CommunicationsException: The last packet successfully received from the server was 31,998,324 milliseconds ago. The last packet sent successfully to the server was 31,998,324 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.

at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:590) ~[mysql-connector-java-6.0.6.jar:6.0.6]

.....

网上说,是由于数据库在超出wait_timeout后,会收回链接,单数数据库连接池还持有者链接引用,这样就会造成,从数据库中去链接后,出现上面的异常.别人建议是:

如果不是系统性能出现问题,尽量不使用连接池

使用连接池,最好更改数据库的链接空闲时间(wait_timeout),具体更改方法百度一下,你就知道.

http://www.wooajung.com/news/34988.html

相关文章:

  • 哈尔滨专业优化网站个人南通百度网站快速优化
  • 福建泉州网站建设公司互联网营销师怎么考
  • 网站logo衔接西安高端网站建设公司
  • 网站建设公司推广方案百度推广多少钱一天
  • 后台网站如何建设南宁seo推广服务
  • 郑州专业做淘宝直播网站济南竞价托管
  • 东莞建网站的公司app开发公司
  • 门户网站制作seo网站技术培训
  • 免费网站模版下载本地推广平台
  • 重庆专业网站推广时间交换链接的作用
  • 百度搜索站长平台搜索引擎营销的特征
  • 网站建设推广保举火13星百度引流平台
  • 中国建设银行网站打不开网站交换链接的常见形式
  • 新乐市建设银行网站千锋教育课程
  • 专业做网站团队网站页面优化方法
  • 特产网站开发的好处中国企业网
  • 淄博专业网站建设公司店铺推广渠道有哪些
  • wordpress 更新缓存seo公司是什么意思
  • 做快照网站和推广 哪个效果好广州企业网站建设
  • 淘宝店铺转让平台哪个靠谱舟山百度seo
  • 网站 图片防盗链怎么申请网站空间
  • seo是什么意思啊电商优化生育政策
  • 网站空间大小怎么查看怎么联系百度客服
  • 做banner拉伸网站会糊免费刷网站百度关键词
  • 中国石化工程建设公司网站百度云搜索引擎入口官方
  • 网站跨省备案seochan是什么意思
  • 义乌建设局网站青岛网站设计
  • 做暧暧网站西安seo服务公司
  • 保定网站制作公司沈阳seo博客
  • 世界足球排名前100名杭州seo工作室