log4j的使用

tiantangmenren 2012-05-15 02:12:35
struts2+hibernate+spring 做架构 使用log4j做日志。
在记录错误日志时,应该怎么处理 不会每次执行 hql语句的时候都要 try catch 一下吧 这样做是不是太麻烦了
求高手赐教
...全文
132 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gradeyong 2012-05-16
  • 打赏
  • 举报
回复
需要spring-web jar文件

[Quote=引用 3 楼 的回复:]

既然是spring的,只要是使用了spring的事务管理,那就不需要自己try catch
2种方案
1.在xml文件中配置一个exceptionResolver,可以自定义扑捉哪种Exception,以及重定向的路径
[code=xml]
<bean id="exceptionResolver" class="org.springframework.web.servlet.handle……
[/Quote]
tiantangmenren 2012-05-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
既然是spring的,只要是使用了spring的事务管理,那就不需要自己try catch
2种方案
1.在xml文件中配置一个exceptionResolver,可以自定义扑捉哪种Exception,以及重定向的路径
[code=xml]
<bean id="exceptionResolver" class="org.springframework.web.servlet.handler……
[/Quote]

你说的是针对spring3.0以上版本的吗 AbstractHandlerExceptionResolver 这个类怎么也找不到
  • 打赏
  • 举报
回复
在action层 处理就是了。。业务和dao 层 的错误都抛到action上统一处理
beiouwolf 2012-05-15
  • 打赏
  • 举报
回复
既然是spring的,只要是使用了spring的事务管理,那就不需要自己try catch
2种方案
1.在xml文件中配置一个exceptionResolver,可以自定义扑捉哪种Exception,以及重定向的路径

<bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="defaultErrorView" value="failure" />
<property name="exceptionMappings">
<props>
<prop key="java.lang.RuntimeException">exception</prop>
</props>
</property>
</bean>


2.以注解方式的做法
实现一个继承AbstractHandlerExceptionResolver的类,并且将其纳入spring的bean管理
类似这样:

@Controller
public class ExceptionResolver extends AbstractHandlerExceptionResolver{

private Log log = LogFactory.getLog(ExceptionResolver.class);

@Override
protected ModelAndView doResolveException(
HttpServletRequest httpservletrequest,
HttpServletResponse httpservletresponse, Object obj,
Exception exception) {
ModelAndView mv = new ModelAndView("exception");
log.debug(exception.getMessage(),exception);

mv.addObject("exception", exception);

return mv;
}

}
dxqrr 2012-05-15
  • 打赏
  • 举报
回复
spring的AOP可以
jijihahalala 2012-05-15
  • 打赏
  • 举报
回复
冒似可以用spring的aop,弄个切面处理日志,然后在处理正常逻辑。

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧