springmvc第三天REST和拦截器

天大地大妈咪最大 提交于 2019-12-25 11:02:38

使用Spring表单标签

<!-- 导入springmvc表单标签-->
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<form:form action="loginPost" method="post" modelAttribute="user">
    <table>
        <tr>
            <td>用户名:</td>
            <td><form:input path="username" /></td>
        </tr>
        <tr>
            <td>密码:</td>
            <td><form:password path="password" /></td>
        </tr>
        <tr>
            <td>性别:</td>
            <td>
                <form:radiobuttons path="gender" items="${genderList}"/>
            </td>
        </tr>
        <tr>
            <td>年龄</td>
            <td>
                <form:input path="age"/>
            </td>
        </tr>
        <tr>
            <td>角色:</td>
            <td>
                <!-- 这里items表示要绑定的集合属性,如果是字符串集合,不需要指定itemValue和itemLabel,如果是自定义的集合对象,则必须指定 -->
                <form:radiobuttons path="role" itemValue="roleId" itemLabel="roleName" items="${roleList}"/>
            </td>
        </tr>
        <tr>
            <td></td>
            <td><input type="submit" value="登录" /></td>
        </tr>
    </table>
</form:form>

2.REST:
用URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作
用HTTP协议里的动词来实现资源的添加,修改,删除等操作。即通过HTTP动词来实现资源的状态扭转

  • GET 获取资源/POST 新建资源/PUT 更新资源/DELETE 删除资源

3.springmvc异常处理
在这里插入图片描述

1.创建自定义异常类
在这里插入图片描述
2.自定义异常处理器 实现HandlerExceptionResolver接口
在这里插入图片描述
3.将自定义处理器类交给spring容器在类上加@Componet注解即可


4.拦截器(HandlerInterceptor)
  • 过滤器是 servlet 规范中的一部分,任何 java web 工程都可以使用。
  • 拦截器是 SpringMVC框架自己的,只有使用了 SpringMVC 框架的工程才能用。
  • 过滤器在 url-pattern中配置了/*之后,可以对所有要访问的资源拦截。
  • 拦截器它是只会拦截访问的控制器方法,如果访问的是 jsp,html,css,image 或者 js 是不会进行拦 截的。 它也是 AOP 思想的具体应用。
  • 我们要想自定义拦截器,要求必须实现:HandlerInterceptor 接口

1.自定义拦截器
在这里插入图片描述
2.配置拦截器

<mvc:iterceptors>
	<mvc:iterceptor>
		<!-- 配置拦截的具体方法-->
		<mvc:mapping path="/user/*"/>
		<!-- 配置不拦截的方法-->
            <!-- <mvc:exclude-mapping path=""/>-->
             <!-- 配置要拦截器的对象-->
            <bean class="com.itcast.interceptor.MyInterceptor"></bean>
	</mvc:iterceptor>
</mvc:iterceptors>
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!