前面说了一下使用xml配置springmvc,下面再说说注解配置。项目如下:

  

  业务很简单,主页和输入用户名和密码进行登陆的页面。

  看一下springmvc的配置文件:

<?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:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd"> <!-- 对web包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能 -->
<context:component-scan base-package="com.sxt"/> <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/> <!--对模型视图名称的解析,即在模型视图名称添加前后缀 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:suffix=".jsp"/>
</beans>

  设置了一下处理器适配器和视图解析器,在高版本的springmvc中不需要设置处理器适配器和处理器映射器,只需要加一句

<mvc:annotation-driven />

  关于这句话做了什么,可以参看下面的文章:

  spring mvc拦截器和<mvc:annotation-driven />的详解

  这就是一个最简单的springmvc配置文件的内容了,下面来看一下controller的内容:

import javax.annotation.Resource;

import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestMapping; import com.sxt.po.User;
import com.sxt.service.UserService; @Component
@RequestMapping("/user.do")
public class UserController { @Resource
private UserService userService; @RequestMapping(params="method=reg")
public String reg(String uname){
System.out.println("UserController.reg()");
System.out.println(uname);
userService.add(uname);
return "index";
} @RequestMapping(params="method=reg2")
public String reg2(User user){
System.out.println("UserController.reg2()");
System.out.println(user.getUname());
return "index";
} public UserService getUserService() {
return userService;
} public void setUserService(UserService userService) {
this.userService = userService;
} }

  相关spring的配置就不贴出来了,使用了注解,@Component(类似的还有@Controller,@Service, @Repository),@Resource(类似的还有@Autowired),@RequestMapping,@RequestParam,@PathVariable等等,具体可以参看下面的文章:

  springmvc常用注解标签详解

  还要补充一个东西就是Model和ModelAndView,可以看下面的文章:

  SPRING框架中ModelAndView、Model、ModelMap区别【转】

  另外在配置文件中常用的设置还有处理静态资源的一个:

<mvc:resources>

  关于它的使用可以参看下面的文章:

  spring-mvc里的 <mvc:resources> 及静态资源访问

  它的写法如:

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

  说到这,再补充一个关于路径中*和**的区别的知识:

  配置扫描路径详细说明 * ** ?的含义

  大致就是这么多内容,现在可以自己使用注解配置springmvc项目了,完整配置使用的例子网上很多,springmvc本身也很简单,很容易就可以学会,大家可以自己找些资料来学习。下一篇文章开始学习springmvc高级一点的东西,拦截器和文件上传。

  

springMVC学习记录2-使用注解配置的更多相关文章

  1. SpringMVC学习记录二——非注解和注解的处理器映射器和适配器

    3      非注解的处理器映射器和适配器 3.1      非注解的处理器映射器 处理器映射器: org.springframework.web.servlet.handler.BeanNameUr ...

  2. springMVC学习记录1-使用XML进行配置

    SpringMVC是整个spring中的一个很小的组成,准确的说他是spring WEB这个模块的下一个子模块,Spring WEB中除了有springMVC还有struts2,webWork等MVC ...

  3. SpringMVC学习记录4

    主题 SpringMVC有很多很多的注解.其中有2个注解@SessionAttributes @ModelAttribute我平时一般不用,因为实在是太灵活了.但是又有一定限制,用不好容易错.. 最近 ...

  4. SpringMVC学习笔记一:采用注解式搭建简单springMVC环境

    搭建的环境使用的是maven项目 项目目录树: 搭建环境使用的jar包,pom.xml文件 <project xmlns="http://maven.apache.org/POM/4. ...

  5. Spring学习记录(十一)---使用注解和自动装配

    Spring支持用注解配置Bean,更简便. 上面的组件,是根据实际情况配的.比如写的一个类,是做业务处理的,那就用注解@Service表示服务层组件,以此类推.将整体分成不同部分. 要在xml加入c ...

  6. SpringMVC学习记录5

    Springmvc流程中的扩展点有很多,可以在很多地方插入自己的代码逻辑达到控制流程的目的. 如果要对Controller的handler方法做统一的处理.我想应该会有很多选择,比如:@ModelAt ...

  7. SpringMVC学习记录

    1E)Spring MVC框架 ①Jar包结构: docs+libs+schema. 版本区别:核心包,源码包. SpringMVC文档学习: 学习三步骤: 1)是什么? 开源框架 2)做什么? IO ...

  8. SpringMVC整合mybatis基于纯注解配置

    Mybatis整合Spring配置 第一部分:配置Spring框架 配置SpringMVC的步骤 配置流程图 导入包(哪些包,基本包5个,1日志依赖包,2webmvc支持包)SpringMVC配置 & ...

  9. SpringMVC学习记录3

    这次的主题 最近一直在学习SpringMVC..(这句话我已经至少写了3,4遍了....).这次的研究主要是RequestMappingHandlerAdapter中的各种ArgumentsResol ...

随机推荐

  1. 启用Win8/10(中文版/核心版/家庭版)中被阉割的远程桌面服务端

    Windows 8/8.1/10 标准版(中文版/核心版/家庭版)中取消了远程桌面服务端,想通过远程连接到自己的电脑就很麻烦了,第三方远程桌面速度又不理想(如TeamViewer).通过以下方法可让系 ...

  2. centos6 ext4修复

    输入root密码后: fsck -y /dev/mapper/vg_logserv-lv_root 修复完后重启 reboot 若忘记了root密码,可用系统ISO盘引导进入Rescue救援模式 在这 ...

  3. win10下ASP.NET Core 2.0部署环境搭建(转)

    此文用于记录在win10环境下,新建的Asp.net Core 2.0 Web应用项目如何运行在IIS上 一.运行环境 操作系统: Window10 家庭中文版 版本 10.0.15063 版本 15 ...

  4. struts中指定编码(使用Filter后仍然乱码)

    https://www.cnblogs.com/oldinaction/p/5167481.html 概述: Tomcat默认是 ISO编码,不支持中文.尝试过自己写 Filter,在web.xml中 ...

  5. Input输入控制

    1.Input只能输入正整数 <html> <head> <title>只能输入正整数</title> </head> <body&g ...

  6. Hadoop专业解决方案-第1章 大数据和Hadoop生态圈

    一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop生态圈小组已经翻译完成,在此 ...

  7. spring boot学习(3) SpringBoot 之MVC 支持

    第一节:@RequestMapping 配置url 映射   第二节:@Controller 处理http 请求 转发到一个页面,以前是转发到jsp页面,现在使用freemarker: 在pom.xm ...

  8. [转]MSSQL 判断临时表是否存在

    原文来自:http://www.cnblogs.com/szfhquan/p/4229150.html 方法一: 1 if exists (select * from tempdb.dbo.sysob ...

  9. python selenium-4自动化测试模型

    1.线性测试 特点:每一个脚本都是完整且独立的,可以单独执行. 缺点:用例的开发与维护成本很高 2.模块化驱动测试 特点:把重复的操作独立成公共模块,提高测试用例的可维护性 示例:将搜索封装到func ...

  10. Windows10右键添加“在此处打开命令窗口"

    今天跑代码时用到了Powershell,有一个环境变量死活都找不到,无奈只好重新回到cmd命令行测试,结果立马就跑通了.-_-||  由于现在Win10默认右键只有Powershell,所以为了以后方 ...