zoukankan      html  css  js  c++  java
  • spring ,springmvc的常用标签注解

    一:spring常用的注解:

    @Configuration把一个类作为一个IoC容器,它的某个方法头上如果注册了@Bean,就会作为这个Spring容器中的Bean。
    @Scope注解 作用域
    @Lazy(true) 表示延迟初始化
    @Service用于标注业务层组件、 
    @Controller用于标注控制层组件(如struts中的action)
    @Repository用于标注数据访问组件,即DAO组件。
    @Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
    @Scope用于指定scope作用域的(用在类上)
    @PostConstruct用于指定初始化方法(用在方法上)
    @PreDestory用于指定销毁方法(用在方法上)
    @DependsOn:定义Bean初始化及销毁时的顺序
    @Primary:自动装配时当出现多个Bean候选者时,被注解为@Primary的Bean将作为首选者,否则将抛出异常
    @Autowired 默认按类型装配,如果我们想使用按名称装配,可以结合@Qualifier注解一起使用。如下:
    @Autowired @Qualifier("personDaoBean") 存在多个实例配合使用
    @Resource默认按名称装配,当找不到与名称匹配的bean才会按类型装配。
    @PostConstruct 初始化注解
    @PreDestroy 摧毁注解 默认 单例  启动就加载
    @Async异步方法调用

    二:springmvc常用注解

    1)、springMVC中的注解@RequestParam与@PathVariable的区别(摘自https://www.cnblogs.com/zlw-xf/p/8035215.html)

    1、 @PathVariable绑定URI模板变量值(表示后面的参数是url中传入带过来的参数)

    2、@PathVariable是用来获得请求url中的动态参数的

    3、@PathVariable用于将请求URL中的模板变量映射到功能处理方法的参数上。//配置url和方法的一个关系@RequestMapping("item/{itemId}")

     @RequestMapping 来映射请求,也就是通过它来指定控制器可以处理哪些URL请求,类似于struts的action请求
    * @responsebody表示该方法的返回结果直接写入HTTP response body中
    *一般在异步获取数据时使用,在使用@RequestMapping后,返回值通常解析为跳转路径,加上@responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP response *body中。*比如异步获取json数据,加上@responsebody后,会直接返回json数据。*
    *@Pathvariable注解绑定它传过来的值到方法的参数上,*用于将请求URL中的模板变量映射到功能处理方法的参数上,即取出uri模板中的变量作为参数
    给出代码事例

    @RestController
    public class HelloSpringBoot {/**
         * url传参,访问的路径类似这样:localhost:8080/getParamDemo1/1
         * 方法体中的参数要在前面加注释,@PathVariable,代表url中的参数
         */
        @RequestMapping(path = {"/getParamDemo1/{id}"})
        public String getParamDemo1 (@PathVariable("id") int userId){
            System.out.println("get param " + userId);
            return "success get param";
        }
        /**
         * 当然,你也可以通过这种传参方式:localhost:8080/getParamDemo?param1=1或者直接表单提交参数
         * 当然,同时方法中参数声明的注释也要变成@RequestParam,代表请求参数,required属性说明了参数是否是必须的
         */
        @RequestMapping(path = {"/getParamDemo2"})
        public String getParamDemo2 (@RequestParam(value="param1",required = false) int param){
            System.out.println("get param " + param);
            return "success get param";
        }
    }
     
  • 相关阅读:
    第一节,Django+Xadmin打造上线标准的在线教育平台—创建用户app,在models.py文件生成3张表,用户表、验证码表、轮播图表
    Tensorflow 错误:Unknown command line flag 'f'
    Python 多线程总结
    Git 强制拉取覆盖本地所有文件
    Hive常用函数 傻瓜学习笔记 附完整示例
    Linux 删除指定大小(范围)的文件
    Python 操作 HBase —— Trift Trift2 Happybase 安装使用
    梯度消失 梯度爆炸 梯度偏置 梯度饱和 梯度死亡 文献收藏
    Embedding 文献收藏
    深度学习在CTR预估中的应用 文献收藏
  • 原文地址:https://www.cnblogs.com/takemyjavalisfe/p/10072090.html
Copyright © 2011-2022 走看看