SpringMVC(二)--注解开发
发布日期:2021-04-30 21:02:11 浏览次数:156 分类:精选文章

本文共 4202 字,大约阅读时间需要 14 分钟。

SpringMVC注解开发

1.1 创建项目

1.2 完善项目

1.3 导入依赖

1.4 配置web.xml

1.5 配置SpringMVC配置文件

1.6 创建控制器

@Controller注解

@Controller表示我们编写的类是一个处理请求的控制器类

@Controller只能作用在Java类上,用于标记该类为控制器

@Controller与Spring中的@Service和@Repository类似,用于标记应用程序的不同层次

数据访问层:@Repository

业务访问层:@Service

Web层【控制层】:@Controller

@RequestMapping注解

@RequestMapping用于设置控制器类或请求处理方法的访问路径

@RequestMapping可以作用在Java类上,表示该类的访问路径

@RequestMapping也可以作用在请求处理方法上,表示该方法的访问路径

@RequestMapping的常用属性

value:设置访问路径,可以省略

例如:@RequestMapping("/test1.do")

或:@RequestMapping(value="/test1.do")

使用通配符

?:匹配任何单字符

*:匹配任意数量的字符

**:匹配多个路径

方法限制

method:限制请求的访问方式,如GET、POST等

例如:@RequestMapping(value="/login.do", method=RequestMethod.POST)

请求处理方法接收请求参数值

1.@PathVariable获取URL路径上的参数

例如:

package com.wangxing.springmvc.controller.test1;

import org.springframework.web.bind.annotation.PathVariable;

@Controller

public class TestController {

@RequestMapping("/testPathVariable/{username}/{password}/{age}/{address}.do")

public void testPathVariable(@PathVariable("username") String name,

@PathVariable("password") String pass,

@PathVariable("age") String age,

@PathVariable("address") String address) {

System.out.println("name=="+name);

System.out.println("pass=="+pass);

System.out.println("age=="+age);

System.out.println("address=="+address);

}

2.@RequestParam获取请求参数

例如:

package com.wangxing.springmvc.controller.test2;

import org.springframework.web.bind.annotation.RequestParam;

@Controller

public class controller2 {

@RequestMapping("/testRequestParam.do")

public void testRequestParam(@RequestParam("username") String name,

@RequestParam("password") String pass,

String age, String address) {

System.out.println("username=="+name);

System.out.println("password=="+pass);

System.out.println("age=="+age);

System.out.println("address=="+address);

}

3.通过HttpServletRequest获取参数

例如:

package com.wangxing.springmvc.controller.test5;

import javax.servlet.http.HttpServletRequest;

@Controller

public class DoxController {

@RequestMapping("/testHttpServletReq.do")

public void testHttpServletReq(HttpServletRequest request) {

System.out.println("username=="+request.getParameter("username"));

System.out.println("password=="+request.getParameter("password"));

System.out.println("myage=="+request.getParameter("myage"));

System.out.println("myaddress=="+request.getParameter("myaddress"));

}

4.通过Java对象封装请求参数

例如:

package com.wangxing.springmvc3.controller.test4.personbean;

import org.springframework.format.annotation.DateTimeFormat;

public class UserBean {

private String username;

private String password;

private int myage;

private String myaddress;

@DateTimeFormat(pattern="yyyy-MM-dd")

private Date day;

// setter和getter方法...

}

package com.wangxing.springmvc3.controller.test4.controller;

import com.wangxing.springmvc3.controller.test4.personbean.UserBean;

@Controller

public class controller2 {

@RequestMapping("/testUserBean.do")

public void getReqParam(UserBean userBean) {

System.out.println("username=="+userBean.getUsername());

System.out.println("password=="+userBean.getPassword());

System.out.println("myage=="+userBean.getMyage());

System.out.println("myaddress=="+userBean.getMyaddress());

System.out.println("day=="+userBean.getDay());

}

5.通过HttpServletRequest获取参数

例如:

package com.wangxing.springmvc3.controller.test5.controller;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;

@Controller

public class DoxController {

@RequestMapping("/testHttpServletReq.do")

public void testHttpServletReq(HttpServletRequest request) {

System.out.println("username=="+request.getParameter("username"));

System.out.println("password=="+request.getParameter("password"));

System.out.println("myage=="+request.getParameter("myage"));

System.out.println("myaddress=="+request.getParameter("myaddress"));

}

静态资源访问

方案一:激活Tomcat的defaultServlet

在web.xml中添加:

<servlet-mapping>

   <servlet-name>default</servlet-name>

   <url-pattern>*.jpg</url-pattern>

</servlet-mapping>

类似地配置js、css等文件

方案二:使用Spring的mvc:resources

在SpringMVC配置文件中添加:

<mvc:resources mapping="/images/**" location="/images/" />

<mvc:resources mapping="/js/**" location="/js/" />

<mvc:resources mapping="/css/**" location="/css/" />

上一篇:MyBatis(一)
下一篇:Java--遍历嵌套list的三种方法

发表评论

最新留言

不错!
[***.144.177.141]2026年06月13日 08时35分57秒