关于Action&View一点代码

 Controller Code

Array.aspx Code

 

Index.aspx Code

 

ScriptOut.aspx Code

TypeIndex.aspx Code

注:版本asp.net mvc2.0 参考:ASP.NET MVC框架开发系列课程

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,请给我一点时间来回答您的问题。 以下是实现SpringMVC工程建立一个拦截器,用户名后缀为r的才允许访问/sec/**下的所有action的具体代码和相关配置代码: 首先,我们需要在SpringMVC的配置文件中配置拦截器。以下是一个示例的配置文件,其中包括一个名为“myInterceptor”的拦截器: ``` <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd"> <mvc:annotation-driven/> <context:component-scan base-package="com.example"/> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/> </bean> <mvc:resources mapping="/resources/**" location="/resources/"/> <!-- 配置拦截器 --> <mvc:interceptors> <bean class="com.example.MyInterceptor" /> </mvc:interceptors> </beans> ``` 如上所示,我们创建了一个名为“myInterceptor”的拦截器,并将其配置到<mvc:interceptors>元素中。 接下来,我们需要创建MyInterceptor类和相关逻辑。以下是一个示例的MyInterceptor类: ``` package com.example; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class MyInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { String username = request.getParameter("username"); if (username != null && username.endsWith("r") && request.getRequestURI().startsWith("/sec/")) { return true; } else { response.sendRedirect(request.getContextPath() + "/login"); return false; } } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { // Do nothing } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { // Do nothing } } ``` 如上所示,我们创建了一个名为“MyInterceptor”的拦截器类,它实现了Spring MVC框架中的“HandlerInterceptor”接口。 在prehandle()方法中,我们首先获取请求的用户名,并检查其是否以“r”结尾。如果满足这个条件并且请求的URL以“/sec/”开头,我们就返回true,表示该请求可以通过拦截器。否则,我们将用户重定向到登录页面并返回false。 在MyInterceptor类中,我们还实现了postHandle()和afterCompletion()方法,但是它们在此示例中并没有被使用,因此我们只需将它们保留为空方法即可。 最后,在我们的Spring MVC配置文件中,我们需要配置请求映射,使我们的拦截器适用于/sec/***下的所有操作。例如,以下是将所有请求映射到SpringMVC DispatcherServlet的示例web.xml文件: ``` <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0"> <display-name>SpringMVC Example</display-name> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app> ``` 如上所示,在配置文件中,我们将所有请求都映射到名为“dispatcher”的SpringMVC DispatcherServlet。需要注意的是,这个Servlet的初始化参数是“contextConfigLocation”,它指定了Spring MVC资源配置文件的位置。我们可以在这个文件中配置拦截器和其他Spring MVC相关配置项。 希望这些代码和相关配置可以帮助您成功实现建立一个拦截器,用户名后缀为r的才允许访问/sec/**下的所有action的功能。如果您还有其他问题,欢迎再次与我交流!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值