标签: annotations

Spring中的@ Component,@ Repository和@Service注释有什么区别?

@Component,@Repository@Service注释互换在Spring中,还是他们提供任何特殊的功能,除了作为一个符号设备?

换句话说,如果我有一个Service类并且我将注释更改@Service@Component,它仍然会以相同的方式运行吗?

或者注释是否也会影响类的行为和功能?

java spring annotations spring-mvc

1969
推荐指数
26
解决办法
86万
查看次数

我应该使用哪个@NotNull Java注释?

我希望使我的代码更具可读性,并使用IDE代码检查和/或静态代码分析(FindBugs和Sonar)等工具来避免NullPointerExceptions.许多工具似乎与彼此的@NotNull/ @NonNull/ @Nonnull注释不兼容,并列出我的代码中的所有这些工具都很难阅读.有什么建议是"最好的"吗?这是我发现的等效注释列表:

  • javax.validation.constraints.NotNull
    创建用于运行时验证,而不是静态分析.
    文件

  • edu.umd.cs.findbugs.annotations.NonNull
    Findbugs静态分析使用,因此Sonar(现为Sonarqube)
    文档

  • javax.annotation.Nonnull
    这可能也适用于Findbugs,但JSR-305处于非活动状态.(另请参阅:JSR 305的状态是什么?) 来源

  • org.jetbrains.annotations.NotNull
    由IntelliJ IDEA IDE用于静态分析.
    文件

  • lombok.NonNull
    用于控制Project Lombok中的代码生成.
    占位符注释,因为没有标准.
    来源, 文档

  • android.support.annotation.NonNull
    Android中提供的标记注释,由support-annotations包
    文档提供

  • org.eclipse.jdt.annotation.NonNull
    Eclipse用于静态代码分析
    文档

java ide null annotations nullpointerexception

918
推荐指数
20
解决办法
27万
查看次数

<context:annotation-config>与<context:component-scan>之间的区别

我正在学习春天3,我似乎没有把握背后的功能<context:annotation-config><context:component-scan>.

根据我的阅读,他们似乎处理不同的注释(@ Required,@ Autowired etc vs @Component,@ Repository,@ Service等),但也从我读过的内容中注册了相同的bean后处理器类.

为了让我更加困惑,有一个@Required属性@Autowired.

有人可以对这些标签有所了解吗?什么是相似的,什么是不同的,一个被另一个取代,它们相互完成,我需要其中一个,两者都有吗?

java configuration spring annotations spring-3

672
推荐指数
10
解决办法
32万
查看次数

@Transactional注释在哪里?

你应该把它@Transactional放在DAO类和/或它们的方法中,还是更好地注释使用DAO对象调用的Service类?或者注释两个"层​​"是否有意义?

java spring annotations dao transactions

504
推荐指数
16
解决办法
23万
查看次数

你什么时候使用Java的@Override注释?为什么?

使用Java @Override注释的最佳实践是什么?为什么?

使用@Override注释标记每个重写方法似乎有点过分.是否有某些编程情况需要使用@Override和其他不应该使用的@Override

java annotations

498
推荐指数
17
解决办法
88万
查看次数

JsonMappingException:找不到类型[simple type,class]的合适构造函数:无法从JSON对象实例化

我在尝试获取JSON请求并处理它时收到以下错误:

org.codehaus.jackson.map.JsonMappingException:找不到类型[simple type,class com.myweb.ApplesDO]的合适构造函数:无法从JSON对象实例化(需要添加/启用类型信息?)

这是我要发送的JSON:

{
  "applesDO" : [
    {
      "apple" : "Green Apple"
    },
    {
      "apple" : "Red Apple"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

在Controller中,我有以下方法签名:

@RequestMapping("showApples.do")
public String getApples(@RequestBody final AllApplesDO applesRequest){
    // Method Code
}
Run Code Online (Sandbox Code Playgroud)

AllApplesDO是ApplesDO的包装器:

public class AllApplesDO {

    private List<ApplesDO> applesDO;

    public List<ApplesDO> getApplesDO() {
        return applesDO;
    }

    public void setApplesDO(List<ApplesDO> applesDO) {
        this.applesDO = applesDO;
    }
}
Run Code Online (Sandbox Code Playgroud)

ApplesDO:

public class ApplesDO {

    private String apple;

    public String getApple() {
        return apple;
    }

    public void setApple(String appl) { …
Run Code Online (Sandbox Code Playgroud)

java spring json annotations jackson

422
推荐指数
11
解决办法
40万
查看次数

我们应该@Override接口的方法实现吗?

是否应该使用实现接口方法的方法进行注释@Override

注释javadocOverride说:

指示方法声明旨在覆盖超类中的方法声明.如果使用此批注类型注释方法但不覆盖超类方法,则编译器需要生成错误消息.

我不认为接口在技术上是超类.或者是吗?

Question Elaboration

java oop annotations interface

414
推荐指数
7
解决办法
15万
查看次数

@ Before,@ BeforeClass,@ BeforeEach和@BeforeAll之间的区别

两者之间的主要区别是什么

  • @Before@BeforeClass
    • 在JUnit 5 @BeforeEach@BeforeAll
  • @After@AfterClass

根据JUnit Api @Before用于以下情况:

编写测试时,通常会发现多个测试需要在运行之前创建类似的对象.

@BeforeClass可用于建立数据库连接.但不能@Before做同样的事情?

java junit annotations junit4 junit5

404
推荐指数
4
解决办法
25万
查看次数

Spring:@Component与@Bean

我知道@Component在Spring 2.5中引入了注释,以便通过使用类路径扫描来消除xml bean的定义.

@Bean是在3.0版本中引入的,可以用来@Configuration完全摆脱xml文件并使用java配置.

是否可以重复使用@Component注释而不是引入@Bean注释?我的理解是,最终目标是在两种情况下都创建bean.

java spring annotations autowired

387
推荐指数
14
解决办法
21万
查看次数

什么 - >在Python函数定义中意味着什么?

在查看Python 3.3语法规范时,我最近发现了一些有趣的东西:

funcdef: 'def' NAME parameters ['->' test] ':' suite
Run Code Online (Sandbox Code Playgroud)

Python 2中没有可选的"箭头"块,我在Python 3中找不到任何有关其含义的信息.事实证明这是正确的Python并且它被解释器接受:

def f(x) -> 123:
    return x
Run Code Online (Sandbox Code Playgroud)

我认为这可能是某种先决条件语法,但是:

  • 我不能x在这里测试,它仍未定义,
  • 无论我在箭头之后放置什么(例如2 < 1),它都不会影响功能行为.

任何习惯这种语法的人都可以解释一下吗?

python annotations python-3.x function-definition

383
推荐指数
9
解决办法
14万
查看次数