java web中异常的处理

2025-12-29 02:42:08

1、@Controller

使用注解声明控制器@RequestMapping("demo")

请求的地址在该url之下才有该控制器相应public class DemoController {

请求地址是此方法时才请求 @RequestMapping("login.do") 

java web中异常的处理

java web中异常的处理

2、public String login(){

返回视图名称,该视图名称会根据springmvc配置中的

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />        <property name="prefix" value="/WEB-INF/jsp/" />        <property name="suffix" value=".jsp" />     </bean> 

配置调用viewresolver视图解析处理器返回jsp页面

 return "demo"; } 

java web中异常的处理

java web中异常的处理

3、简单测试一下:从前端获取数据如果为空,返回异常

@RequestMapping("loginAction.do") @ResponseBody public String loginAction(String name) throws NameException{  if(name==null||name==""){   throw new NameException();  }  return "demo1"; }

java web中异常的处理

4、在控制器中直接写此注解

 @ExceptionHandler(NameException.class) public String nameException(HttpServletRequest request,NameException ne){  HttpSession session = request.getSession();  session.setAttribute("message", ne.getMessage());  System.out.println(ne.getMessage());  return "demoException"; }}

java web中异常的处理

5、异常只重写了getMessage方法

public class NameException extends Exception { @Override public String getMessage() {  // TODO Auto-generated method stub  return "无法获取姓名"; }}

java web中异常的处理

6、<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body><h1>${message }</h1></body></html>

java web中异常的处理

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢