spring中的注解都必须在配置文件中进行如下的配置:

<context:component-scan base-package="com.shanjin.oxm.service.impl,com.shanjin.oxm,com.shanjin.interceptorh,com.shanjin.oxm.service" />

1、@Component

@Component
是所有受Spring 管理组件的通用形式,@Component注解可以放在类的头上,@Component不推荐使用。

2、@Controller

@Controller对应表现层的Bean,也就是Action,例如:

3、@ Service

@Service对应的是业务层Bean,例如:

@Service("elasticsearchService")注解是告诉Spring,当Spring要创建elasticsearchServiceImpl的的实例时,bean的名字必须叫做"elasticsearchService",这样当Action需要使用elasticsearchServiceImpl的的实例时,就可以由Spring创建好的"elasticsearchService",然后注入给Action:在Action只需要声明一个名字叫“elasticsearchService”的变量来接收由Spring注入的"elasticsearchServicee"即可

4、@ Repository

@Repository对应数据访问层Bean

/**
 * @author 何婷婷
 *
 */
@Repository("requireDao")
public interface RequireDao {
    /**
     * 获取索引文档的信息
     * @return
     */
public List<Require> getAllNeed();
/**
 * 获取附近的订单用户
 * @return
 */
public List<UserEntity> getAllUser();
}

@Repository(value="requireDao")注解是告诉Spring,让Spring创建一个名字叫“requireDao”的requireDaoImpl实例。 当Service需要使用Spring创建的名字叫“requireDao”的requireDaoImpl实例时,就可以使用@Resource(name = "requireDao")注解告诉Spring,Spring把创建好的requireDao注入给Service即可

5. Spring中为了减少xml中配置,可以生命一个配置类(例如SpringConfig)来对bean进行配置。

//@Configuration
public class Connection {
    
//      此种通过spring方法容易出现链接异常,抛出read time out 错误,而找不到任何的错误
//    public @Bean HttpClientConfig httpClientConfig() {  
//
//        String connectionUrl = "http://192.168.1.60:9200";  
//        String username="shanjin";
//        String passwd="shanjin";
////        try {
////            Properties prop = PropertiesLoaderUtils.loadAllProperties("elasticsearch.properties");
//////            connectionUrl = StringUtil.null2Str(prop.get("elasticsearch.address"));
////            if (connectionUrl==""){
////                connectionUrl="http://192.168.1.60:9200";
////            }
////            username = StringUtil.null2Str(prop.get("username"));
////            passwd = StringUtil.null2Str(prop.get("password"));
////
////        } catch (Exception e) {
////            System.out.println(e.getMessage());
////        }        
//        HttpClientConfig httpClientConfig = new HttpClientConfig.Builder(connectionUrl).defaultCredentials(username, passwd)
//                .connTimeout(Integer.MAX_VALUE)
//                .readTimeout(Integer.MAX_VALUE).multiThreaded(true).build();  
//        return httpClientConfig;  
//    }

spring 常见的注解的更多相关文章

  1. (转)Spring常见注解总结

    传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文 ...

  2. Spring MVC常用注解

    cp by http://www.cnblogs.com/leskang/p/5445698.html 1.@Controller 在SpringMVC 中,控制器Controller 负责处理由Di ...

  3. 利用spring AOP 和注解实现方法中查cache-我们到底能走多远系列(46)

    主题:这份代码是开发中常见的代码,查询数据库某个主表的数据,为了提高性能,做一次缓存,每次调用时先拿缓存数据,有则直接返回,没有才向数据库查数据,降低数据库压力. public Merchant lo ...

  4. spring mvc 基于注解的使用总结

    本文转自http://blog.csdn.net/lufeng20/article/details/7598801 概述 继 Spring 2.0 对 Spring MVC 进行重大升级后,Sprin ...

  5. 朱晔和你聊Spring系列S1E9:聊聊Spring的那些注解

    本文我们来梳理一下Spring的那些注解,如下图所示,大概从几方面列出了Spring的一些注解: 如果此图看不清楚也没事,请运行下面的代码输出所有的结果. Spring目前的趋势是使用注解结合Java ...

  6. Spring是如何处理注解的

    如果你看到了注解,那么一定有什么代码在什么地方处理了它. Alan Hohn 我教Java课程时强调的一点是注解是惰性的.换句话说,它们只是标记,可能具有某些属性,但没有自己的行为.因此,每当你在一段 ...

  7. spring : springmvc常用注解标签详解(转)

    新的项目,新的学习,好久没用这些注解了,同时在学习使用shiro ,lucene 等等.在网上找了些博文,感谢作者的总结和分享. 欢迎交流,言归正传: 1.@Controller 在SpringMVC ...

  8. Java面试题集(七)--Spring常见面试问题【重要】

    以下为spring常见面试问题: 1.什么是Spring框架?Spring框架有哪些主要模块? Spring框架是一个为Java应用程序的开发提供了综合.广泛的基础性支持的Java平台. Spring ...

  9. Java中常见的注解

    Java中常见的注解 1.JDK自带的注解@Override  @Deprecated  @Suppvisewarnings 常见第三方注解 Spring:@Autowired  @Service  ...

随机推荐

  1. codeforces 665E E. Beautiful Subarrays(trie树)

    题目链接: E. Beautiful Subarrays time limit per test 3 seconds memory limit per test 512 megabytes input ...

  2. ios 图片拉伸方法

     前提:要注意图片的size和展示的图片view的size的大小. 假如图片高度50,展示图片view的高度30,拉伸会变成剪切. 如果图片尺寸不对,可以用mac自带的图片编辑器修改大小: 双击打开图 ...

  3. CoderForces343D:Water Tree(dfs序+线段树&&特殊处理)

    Mad scientist Mike has constructed a rooted tree, which consists of n vertices. Each vertex is a res ...

  4. CQOI2013 新数独

    传送门 这道题也是很暴力的搜索啊…… 因为数独一开始全是空的,只有许许多多的大小限制条件,那也没必要纠结从哪开始搜索了,直接暴力搜索之后判断一下是否合法. 这题最恶心的是读入.现学了一招判断点在哪个块 ...

  5. C++ set和map的简单使用

    C++中的STL模板库的功能可谓相当强大.今天我们来简单说一下set和map的使用方法. 1.pair 我们先来说一下pair.pair定义在头文件<utility>中,其本身相当于一个已 ...

  6. CoreGpaphics

    CoreGpaphics基本应用 CGAffineTransformMake开头的函数 是基于最初始的位置来变化的 带有CGAffineTransform参数是基于CGAffineTransform的 ...

  7. Coursera Algorithms Programming Assignment 3: Pattern Recognition (100分)

    题目原文详见http://coursera.cs.princeton.edu/algs4/assignments/collinear.html 程序的主要目的是寻找n个points中的line seg ...

  8. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时11

    课时11 神经网络训练细节part1(下) 2010年,Glorot等人写的论文,我们称之为Xavier初始化,他们关注了神经元的方差表达式.他们推荐一种初始化方式,那就是对每个神经元的输入进行开根号 ...

  9. J20170426-hm

    ジェネリクス Generics 泛型 バルーン balloon 气球 アングルブラケット Angle bracket 尖括号 プレースホルダ Placeholder 占位符

  10. 【原创】《从0开始学Elasticsearch》—document的单/批量crud

    内容目录 1.新建文档2.查询文档3.修改文档4.删除文档 1.新建文档 1). 语法1,手动指定document 的id: PUT /index_name/type_name/id{    &quo ...