基于注解的SpringMVC程序-2

83 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第20天,点击查看活动详情

6)开发页面,发出请求。

<a href="${pageContext.request.contextPath}/zar/hello.action">访问action</a>

其中:

  /zar  是类上的注解路径

  /hello 是方法上的注解路径

7)在webapp目录上新添目录/admin。

8)在/admin目录下新建main.jsp页面。用来进行服务器处理完毕后数据的回显。

9)开发HelloSpringMvc.java-->控制器(相当于以前的servlet)。这是一个普通的类,不用继承和实现接口。类中的每个方法就是一个具体的action控制器。

类中的方法定义有规范:

A. 访问权限是public。

B. 方法名自定义。

C. 方法的参数可以有多个,任意类型,用来接收客户端提交上来的数据。

D. 方法的返回值任意。以返回String居多。

@Controller\
@RequestMapping("/zar")\
public class HelloSpringMvc {\
@RequestMapping("/hello")\
public String one(){\
return "main";\
}\
}

@Controller:表示当前类为处理器,交给Spring容器去创建对象。

@RequestMapping:表示路径映射。该注解可以加在类上相当于包名,还可以加在方法上相当于action的名称,都是来指定映射路径的。

1)完成springmvc.xml文件的配置。在工程的类路径即resources目录下创建 SpringMVC 的配置文件 springmvc.xml。该文件名可以任意命名。推荐使用springmvc.xml.

<context:component-scan base-package="com.bjpowernode.controller"></context:component-scan>\
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">\
<property name="prefix" value="/WEB-INF/jsp/"></property>\
<property name="suffix" value=".jsp"></property>\
</bean>

SpringMVC框架为了避免对于请求资源路径与扩展名上的冗余,在视图解析器

InternalResouceViewResolver 中引入了请求的前辍与后辍。而action中只需给出要跳转页面的文件名即可,对于具体的文件路径与文件扩展名,视图解析器会自动完成拼接。

context:component-scan:用来进行包扫描,这里用于指定@Controller注解所在的包路径。