SpringMVC注解入门(一)

  最近刚刚开始学习SpringMVC,本人不善于长编大论,只是简要的说明下一些常用的几个简单的注解,自己也算总结一下下,大牛绕道。

首先我们要搭建Spring开发环境,从开始配置web.xml文件,相关配置:


简单的配置好web.xml后就开始我们的注解学习了

<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:*.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>


<!-- Map all requests to the DispatcherServlet for handling -->
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

建立自己的Controllerl类(为普通的JAVA类就行)例如:cn.com.controller.UserController类

@Controller
@RequestMapping("/user")
public class UserController {

@RequestMapping(value="/start/{name}",method=RequestMethod.GET)
public String start(@PathVariable("name") String name){
System.out.println(name);
String result = "index";
return result;
}
@RequestMapping("/test")
public String test(){
return "test";
}
@RequestMapping(value="/start",method=RequestMethod.POST)
public String login(@ModelAttribute User user){
String result = "login_succ";
System.out.println(user.getUserName()+";"+user.getPassword()+"post");
return result;
}
}

当你写好注释之后千万不要忘记在你的Spring配置文件中,配置一下:

<!--扫描指定的注解包,将会扫描该包下所有class中的注解-->
<context:component-scan base-package="cn.com.dhcc.controller"></context:component-scan>

<!--配置视图解析类,指定class中返回String的前缀和后缀-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/page/"></property>
<property name="suffix" value=".jsp"></property>
</bean>


接下来,来了解释下UserController中的注释吧:


@Controller
告诉Spring框架指定该类为一个Controller


@RequestMapping 可以用来修饰类和方法
指定该方法或者类的请求的URL,例如以上事例我要访问test(),则访问的URL必须是···/user/test,返回我指定路径/WEB-INF/page/下的test.jsp文件
上面看到了其中有两个属性:value 和 method 
显而易见,value是指定其访问的url;而method则为访问该url的请求方式(即看是Get请求、Post请求或者其他),指定请求方式后就只能在指定的请求方式下访问


@PathVariable 用来指定请求的URL路径里面的变量,从而获取值
eg:当我用GET方式访问start方法时,···/user/start/zhangsan.do则我在start中获得参数name的值为“zhangsan”
注意:我们知道java编译有两种方式 debug和realse 主要区别大家可以百度下,我这就不详细讲解,重要的是当我们用
@PathVariable时如果不使用@PathVariable("指定变量")  则在realse编译后讲无法匹配方法参数变量和URL传过来的变量


@ModelAttribute 大家可以看看这边文章http://blog.csdn.net/li_xiao_ming/article/details/8349115,我自认不会总结的这么详细


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值