JAVA记录-@Controller和RequestMapping注解代码介绍
1.spring-mvc.xml加入配置
<!-- 自动扫描该包,使SpringMVC认为包下用了@controller注解的类是控制器 -->
<context:component-scan base-package="com.net.xinfang.controller" />
2.@controller/@RequestMapping/@RequestParam写法
@Controller
@RequestMapping(value = "/cte") ---代表第一层url
public class CntoEnController { @RequestMapping(value="/getcte", method = {RequestMethod.GET}) ---代码第二次url
public String test(HttpServletRequest request,Model model,
@RequestParam(value="langType", defaultValue="zh") String langType){ ---请求的值传给langType
return "cte";
}
} 完整请求路径为:http://ip地址:端口号/项目名/cte/getcte?langType=zh
3.@RequestMaping写法
@RequestMapping(value="",method={"",""},headers={},params={"",""})
参数:
value:设置访问地址
method:设置访问方式,常用的method=RequestMethod.POST,和method=RequestMethod.GET
headers:头域,可以设置浏览器支持的格式
params:访问参数设置
注解作用:
用来定义访问的url。可以是方法级别的,也可以是类级别的。两者可以协同工作,缩小选择范围。也可以隐藏代码的真实路径,更加具有安全性和可读性。
@Autowired
注解作用:
可以对成员变量、方法和构造函数进行标注,来完成自动装配工作。可以消除get,set方法。
可以使用@Autowired注解来减少代码量。首先,在applicationContext中加入:
<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>
然后,在变量上添加@Autowired注解,并去掉相应的getter和setter方法:
public class ClasServiceImpl implements ClasService{
@Autowired
private ClasDAO clasDAO;
...
}
并且在applicationContext中将相应的<property></property>标签去掉:
<bean id="clasService" class="com.school.service.ClasServiceImpl">
</bean>
Spring启动时,AutowiredAnnotationBeanPostProcessor会扫描所有的Bean,当发现其中有@Autowired注解时,就会找相应类型的Bean,并且实现注入。
@ResponseBody
注解作用:
直接放在方法上,表示返回类型将会直接作为Http响应字节流输出,可以用于Ajax。
@RequestParam(required=,value="",defaultValue="")
参数:
required:参数是否必须,boolean类型,默认为true
value:传递的参数名称,String类型,可选项,有值则对应方法的参数
defaultValue:参数没有传递时为参数默认指定的值
@Override
伪代码,表示重写(当然不写也可以),不过也有好处:
1、可以当注释用,方便阅读;
JAVA记录-@Controller和RequestMapping注解代码介绍的更多相关文章
- 0054 Spring MVC的@Controller和@RequestMapping注解
@Controller注解 该注解用来指示一个类是一个控制器,在Spring的配置xml文件中开启注解扫描 <context:conponent-scan base-package=" ...
- RequestMapping 注解的解析、匹配、注册
RequestMapping 注解的解析.匹配.注册 1)创建 RequestMappingHandlerMapping 实例时会触发 afterPropertiesSet 调用. 2)读取容器中所有 ...
- SpringBoot 中常用注解@Controller/@RestController/@RequestMapping介绍
原文 SpringBoot 中常用注解 @Controller/@RestController/@RequestMapping介绍 @Controller 处理http请求 @Controller / ...
- SpringMVC中@Controller和@RequestMapping用法和其他常用注解
一.简介 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Mo ...
- SpringMVC中@Controller和@RequestMapping用法和其他常用注解(转)
一.简介 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Mo ...
- Java基础笔记 – Annotation注解的介绍和使用 自定义注解
Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 | 被围观 25,969 views+ 1.Anno ...
- SpringBoot中常用注解@Controller/@RestController/@RequestMapping的区别
@Controller 处理http请求 @Controller //@ResponseBody public class HelloController { @RequestMapping(valu ...
- SpringBoot 中常用注解@Controller/@RestController/@RequestMapping的区别
SpringBoot中常用注解@Controller/@RestController/@RequestMapping的区别 @Controller 处理http请求 @Controller //@Re ...
- springmvc注解@Controller和@RequestMapping
Spring从2.5版本引入注解,从而让开发者的工作变得非常的轻松 springmvc注解Controller org.springframework.stereotype.Controller注解类 ...
随机推荐
- Prism6下的MEF:基于微软企业库的Cache
通常,应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能.基于微软的企业库,我们的快速创建一个缓存的实现. 新建PrismSample.Infrastru ...
- logback基本入门
1. logback的定义 Logback是由log4j创始人设计的另一个开源日志组件,官方网站: http://logback.qos.ch.它当前分为下面下个模块: logback-core:其它 ...
- Eclipse布局问题小记
当Eclipse的Debug,Console(简称工具条)页面被误操作到占据整行时,通过点击工具条的非选项卡部分,然后向代码区域拖动,即可得恢复非单独行模式.
- apache2.4.29安装脚本
#!/bin/bash . /etc/init.d/functions yum install -y expat-devel gcc gcc-c++ zlib-devel openssl-devel ...
- 如何停止处于stopping状态的windows服务
工作中有时需要启动和停止windows service,有时候会出现服务处于stopping或者starting的状态,但是,在services界面中,start service/stop servi ...
- ceph S3客户端操作--s3cmd
S3 client 访问ceph rgw 安装: yum install s3cmd 验证安装是否成功: $s3cmd --version s3cmd version 1.5.2 #表示安装成功 在c ...
- jQuery添加和删除元素
添加新的 HTML 内容 我们将学习用于添加新内容的四个 jQuery 方法: append() - 在被选元素的结尾插入内容 prepend() - 在被选元素的开头插入内容 after() - 在 ...
- Ambiguous handler methods mapped for HTTP
前端访问的 controller 地址没有加方法名导致找不到. Servlet.service() for servlet [spring] in context with path [/ssmDem ...
- 【Gym - 101124A】The Baguette Master (数学,几何)
BUPT2017 wintertraining(15) #4F Gym - 101124A 题意 给定画框宽度,画的四边和一个对角线长度,求画框外沿周长. 题解 过顶点做画框的垂线,每个角都得到两个全 ...
- Android 屏幕操作
1 全屏显示Activity 代码 : 方法一:编程实现 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, Window ...