{"id":21974193,"url":"https://github.com/javaobjects/day01_springmvc01_annotation","last_synced_at":"2026-04-28T23:05:12.847Z","repository":{"id":105561777,"uuid":"215225096","full_name":"javaobjects/day01_springMVC01_annotation","owner":"javaobjects","description":"springMVC环境搭建(注解方式)","archived":false,"fork":false,"pushed_at":"2019-10-15T11:01:09.000Z","size":8381,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-28T03:17:18.787Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/javaobjects.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-15T06:37:19.000Z","updated_at":"2019-10-16T02:26:40.000Z","dependencies_parsed_at":null,"dependency_job_id":"94feca6e-81ce-4ad4-9f9e-181dc1a42fa9","html_url":"https://github.com/javaobjects/day01_springMVC01_annotation","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javaobjects%2Fday01_springMVC01_annotation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javaobjects%2Fday01_springMVC01_annotation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javaobjects%2Fday01_springMVC01_annotation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javaobjects%2Fday01_springMVC01_annotation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/javaobjects","download_url":"https://codeload.github.com/javaobjects/day01_springMVC01_annotation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245033907,"owners_count":20550357,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-29T15:39:30.469Z","updated_at":"2026-04-28T23:05:07.808Z","avatar_url":"https://github.com/javaobjects.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# springMVC注解方式环境搭建\n\n#### 1. jar包导入\n\n![](WebContent/Images/6.png)\n\n#### 2. spring-mvc.xml web.xml配置\n\n```xml\n\n\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003cbeans xmlns=\"http://www.springframework.org/schema/beans\"\n\t   xmlns:context=\"http://www.springframework.org/schema/context\"\n\t   xmlns:aop=\"http://www.springframework.org/schema/aop\"\n\t   xmlns:mvc=\"http://www.springframework.org/schema/mvc\"\n\t   xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n\t   xsi:schemaLocation=\"http://www.springframework.org/schema/beans \n\t                       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd\n\t                       http://www.springframework.org/schema/context\n\t                       http://www.springframework.org/schema/context/spring-context-4.1.xsd\n\t                       http://www.springframework.org/schema/aop\n\t                       http://www.springframework.org/schema/aop/spring-aop-4.1.xsd\n\t                       http://www.springframework.org/schema/mvc\n\t                       http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd\"\u003e\n\n\n\u003c!--【非注解】start  --\u003e\n\t\t\u003c!-- \n\t\t\t2. 【非注解】处理映射器:负责根据请求的url查找指定的处理器\n\t\t\t--\u003e\n\t\t\u003c!-- 方式一:BeanNameUrlHandlerMapping根据用户请求的url匹配bean的name属性值 --\u003e\n\t\u003c!-- \t\u003cbean class=\"org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping\"\u003e\u003c/bean\u003e --\u003e\n\t\t\n\t\t\u003c!-- 方式二: SimpleUrlHandlerMapping 根据用户请求的url匹配bean的id属性值,属于方式一的增强版，与方式一共存 --\u003e\n\u003c!-- \t\t\u003cbean class=\"org.springframework.web.servlet.handler.SimpleUrlHandlerMapping\"\u003e\n\t\t\t\u003cproperty name=\"mappings\"\u003e\n\t\t\t\t\u003cprops\u003e\n\t\t\t\t\t\u003cprop key=\"/hello2.action\"\u003ehelloController\u003c/prop\u003e\n\t\t\t\t\t\u003cprop key=\"/hello66.action\"\u003ehelloController2\u003c/prop\u003e\n\t\t\t\t\u003c/props\u003e\n\t\t\t\u003c/property\u003e\n\t\t\u003c/bean\u003e --\u003e\n\t\t\n\t\t\n\t\t\n\t\n\t\t\u003c!-- \n\t\t\t4. 【非注解】处理适配器：负责适配执行处理器 \n\t\t\t--\u003e\n\t\t\u003c!-- 方式一:SimpleControllerHandlerAdapter,适配执行所有实现了org.springframework.web.servlet.mvc.Controller接口类 --\u003e\n\u003c!-- \t\t\u003cbean class=\"org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter\"\u003e\u003c/bean\u003e --\u003e\n\t\t\u003c!-- 方式二:HttpRequestHandlerAdapter适配执行所有实现了org.springframework.web.servlet.mvc.\n\t\tHttpRequestHandlerAdapter接口类 ,可以与方式一共存--\u003e\n\t\t\u003c!-- \u003cbean class=\"org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter\"\u003e\u003c/bean\u003e --\u003e\n\t\t\n\t\t\t\u003c!-- 3. 处理器 --\u003e\n\t\u003c!-- \t\u003cbean id=\"helloController\" name=\"/hello.action\" class=\"com.tencent.controller.HelloController\"\u003e\u003c/bean\u003e\n\t\t\u003cbean id=\"helloController2\"  class=\"com.tencent.controller.HelloController2\"\u003e\u003c/bean\u003e --\u003e\n\t\t\n\t\t\u003c!-- 5. 视图解析器 --\u003e\n\t\u003c!-- \t\u003cbean class=\"org.springframework.web.servlet.view.InternalResourceViewResolver\"\u003e\u003c/bean\u003e --\u003e\n\t\t\t\t\t\t\t\u003c!-- 【非注解】end --\u003e\n\t\t\t\t\t\t\t\u003c!-- 【注解】start --\u003e\n\n\n\n\t\u003c!-- \n\t\t\t2. 【注解】处理映射器:负责根据请求的url查找指定的处理器\n\t\t\t--\u003e\n  \t\t\u003c!-- \u003cbean class=\"org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping\"\u003e\u003c/bean\u003e --\u003e\n\n\t\u003c!-- 4. 【注解】处理器适配器：负责适配执行处理器 --\u003e\n\t\t\u003c!-- \u003cbean class=\"org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter\"\u003e\u003c/bean\u003e --\u003e \n\t\t\t\t\t\t\t\u003c!-- 【注解】end --\u003e\n\n\t\t\u003c!-- 用于替换步骤2、4的标签，同时开启注解方式的映射器与适配器 --\u003e\n\t\t\u003cmvc:annotation-driven\u003e\u003c/mvc:annotation-driven\u003e\n\t\t\t\u003c!-- 3. 处理器 --\u003e\n\t\t\u003c!-- \u003cbean id=\"helloController\"  class=\"com.tencent.controller.HelloController\"\u003e\u003c/bean\u003e --\u003e\n\t\t\n\t\t\u003c!-- 用于替换步骤3中对controller的管理 --\u003e\n\t\t\u003ccontext:component-scan base-package=\"com.tencent.controller\"\u003e\u003c/context:component-scan\u003e\n\t\t\n\t\t\u003c!-- 5. 视图解析器 --\u003e\n\t\t\u003cbean class=\"org.springframework.web.servlet.view.InternalResourceViewResolver\"\u003e\u003c/bean\u003e\n\u003c/beans\u003e\n```\n\n```xml\n\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003cweb-app xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"http://java.sun.com/xml/ns/javaee\" xsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd\" version=\"3.0\"\u003e\n  \u003cdisplay-name\u003eday01_springMVC00_noannotation\u003c/display-name\u003e\n  \n  \u003c!-- 1. 前端控制器:负责接收请求与响应结果 --\u003e\n  \u003cservlet\u003e\n  \t\t\u003cservlet-name\u003espringMVC\u003c/servlet-name\u003e\n  \t\t\u003cservlet-class\u003eorg.springframework.web.servlet.DispatcherServlet\u003c/servlet-class\u003e\n  \t\t\n  \t\t\u003c!-- 配置springMVC的核心配置文件路径spring-mvc.xml --\u003e\n  \t\t\u003cinit-param\u003e\n  \t\t\t\u003cparam-name\u003econtextConfigLocation\u003c/param-name\u003e\n  \t\t\t\u003cparam-value\u003eclasspath:spring-mvc.xml\u003c/param-value\u003e\n  \t\t\u003c/init-param\u003e\n  \u003c/servlet\u003e\n  \n  \u003cservlet-mapping\u003e\n  \t\t\u003cservlet-name\u003espringMVC\u003c/servlet-name\u003e\n  \t\t\u003curl-pattern\u003e*.action\u003c/url-pattern\u003e\n  \u003c/servlet-mapping\u003e\n  \n  \n  \u003c!-- 欢迎首页 --\u003e\n  \u003cwelcome-file-list\u003e\n    \u003cwelcome-file\u003eindex.html\u003c/welcome-file\u003e\n    \u003cwelcome-file\u003eindex.htm\u003c/welcome-file\u003e\n    \u003cwelcome-file\u003eindex.jsp\u003c/welcome-file\u003e\n    \u003cwelcome-file\u003edefault.html\u003c/welcome-file\u003e\n    \u003cwelcome-file\u003edefault.htm\u003c/welcome-file\u003e\n    \u003cwelcome-file\u003edefault.jsp\u003c/welcome-file\u003e\n  \u003c/welcome-file-list\u003e\n\u003c/web-app\u003e\n```\n#### 3. Java和前端代码\n\n```Java\npackage com.tencent.controller;\n\nimport org.springframework.stereotype.Controller;\nimport org.springframework.web.bind.annotation.RequestMapping;\nimport org.springframework.web.servlet.ModelAndView;\n\n/**\n * \n* \u003cp\u003eTitle: HelloController\u003c/p\u003e  \n* \u003cp\u003e\n*\tDescription: \n*   \t处理器\n* \u003c/p\u003e \n* @author xianxian \n* @date 2019年10月15日\n */\n@Controller\npublic class HelloController{\n\n\t@RequestMapping(\"/hello.action\")//定访问路径\n\tpublic ModelAndView hello() {\n\n\t\tModelAndView mav = new ModelAndView();\n\t\t\n\t\t//1. 保存数据，相当于request.setAttribute(\"message\",\"\"恭喜你，成功访问第一个springMVC环境........\"\");\n\t\tmav.addObject(\"message\",\"恭喜你，成功访问第一个springMVC环境........\");\n\t\t\n\t\t//2. 跳转页面,相当于request.getRequestDispather(\"/main.jsp\").forward(request.response);\n\t\tmav.setViewName(\"/main.jsp\");\n\t\t\n\t\t\n\t\treturn mav;\n\t}\n\n}\n```\n\n```\tJsp\n\u003c%@ page language=\"java\" contentType=\"text/html; charset=UTF-8\"\n    pageEncoding=\"UTF-8\"%\u003e\n\u003c!DOCTYPE html\u003e\n\u003chtml\u003e\n\u003chead\u003e\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003ctitle\u003eInsert title here\u003c/title\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n\t\u003ca href=\"hello.action\"\u003e测试springMVC【注解】环境搭建\u003c/a\u003e\u003cbr/\u003e\u003cbr/\u003e\n\t\n\u003c/body\u003e\n\u003c/html\u003e\n```\n```Jsp\n\u003c%@ page language=\"java\" contentType=\"text/html; charset=UTF-8\"\n    pageEncoding=\"UTF-8\"%\u003e\n\u003c!DOCTYPE html\u003e\n\u003chtml\u003e\n\u003chead\u003e\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003ctitle\u003eInsert title here\u003c/title\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n\t${message}\n\u003c/body\u003e\n\u003c/html\u003e\n```\n\n#### 4. 测试\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavaobjects%2Fday01_springmvc01_annotation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjavaobjects%2Fday01_springmvc01_annotation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavaobjects%2Fday01_springmvc01_annotation/lists"}