SpringMVC系列之基本配置使用(一)


一、首先创建一个maven工程

在pom.xml中要下载一些依赖
依赖包的下载 http://mvnrepository.com/

需要的依赖包
1.spring-core
2.spring-webmvc
3.spring-jdbc
4.spring-aspects
5.jstl



二、创建SpringMVC需要的配置文件


根据maven的配置规范创建项目目录
创建controller和xxx-servelet.xml
这里写图片描述

实体类

public class Student {

    private String name;
    private Integer age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

controller

@Controller
public class MainController {


    //页面调度:哪个方法对应哪个jsp文件
    //localhost:8080/aa
    @RequestMapping(value = "/aa")
    public String frontPage(){
        return "index";
    }

    @RequestMapping(value = "/a")
    public String find1(){
        return "1";
    }
    @RequestMapping(value = "/b")
    public String find2(){
        return "2";
    }
    @RequestMapping(value = "/c")
    public String find3(){
        return "3";
    }



    //带参数的请求
    //1.直接在地址上拼接参数(URI)
    //localhost/user/www/22

    @RequestMapping(value = "/user/{username}/{age}")
    public String varPage(@PathVariable("username") String name, @PathVariable("age") int age){
        System.out.println(name);
        System.out.println(age);
        //jsp文件的文件名
        return "userinfo";
    }

    // localhost/stu/name=zhangsan&age=2
    // 2. 获取参数列表
    // >1. 一个一个获取,格式:@RequestParam("key)参数类型 参数名
    // >2. 直接全部获取,格式:@RequestParam Map<key, value> 参数名
    // >3. 靠bean获取, 场景:参数列表的key和bean的属性名必须一致
//    @RequestMapping(value = "/stu")
//    public String stuinfo(@RequestParam Map<String, String>params){
//        System.out.println(params);
//        return "stuinfo";
//    }

    @RequestMapping(value = "/stu")
    public String stuinfo(Student student){
        System.out.println(student);
        return "stuinfo";
    }
    /*
    SpringMVC项目建立的步骤(Maven)
    1.使用Maven建立工程,添加POM文件的依赖列表
    2.在resource文件夹下 创建xxx-servlet.xml
    3.配置web.xml
    4.创建controller和jsp文件
    SpringMVC的基本原理
    1. 用户向服务器发送请求,比如:请求: localhost:8080/user
    2. DispatcherServlet接收到请求,开始处理
    3. 在DispatcherServlet内部,通过HandlerMapping检查这个url有没有对应的controller处理方法
    4. 如果有,直接调用这个方法
    5. 如果返回字符串,viewResolver会把字符串和配置文件中的前后缀组成页面的资源路径
    6. dispatcherServlet会把这个资源转为html,发给用户的浏览器
     */
}
@Controller
public class SecondController {

    //从后台向前端发送数据
    @RequestMapping(value = "/teacher")
    public String teacherPage(ModelMap map){

        //第一种: Map<String, Object>map
        //第二种: Model model
        //第三种: ModelMap modelMap
        //第四种: ModelAndView

        map.addAttribute("teacher", "可以的");
        return "teacher";
    }

    //在方法上添加注解,会把当前方法的返回值转为json格式,发给前端
    //不在去拼接jsp路径
    @RequestMapping(value = "/json")
    @ResponseBody
    public Student jsonTest(){
        Student student = new Student();
        student.setAge(22);
        student.setName("妲己");
        return student;
    }




}

web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>

  //预防乱码
  <filter>
    <filter-name>SpringEncoding</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
  </filter>

  <filter-mapping>
    <filter-name>SpringEncoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>


  <servlet>
    <servlet-name>MVCServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:SpringMVC-servlet.xml</param-value>
    </init-param>
  </servlet>

  <servlet-mapping>
    <servlet-name>MVCServlet</servlet-name>
    <!--localhost/.../xxx.action-->
    <!--<url-pattern>*.action</url-pattern>-->
    <url-pattern>/</url-pattern>
  </servlet-mapping>
</web-app>

这样一个简易的springMVC就配置完了
这里写图片描述

猜你喜欢

转载自blog.csdn.net/dapyandxpy/article/details/77413048