小编Om.*_*Om.的帖子

Spring REST WS:jersey vs resteasy vs restlet vs apache cxf vs Spring WS

我计划使用spring 4和java 7为复杂的高性能导向应用程序构建一个ResT完整Web服务.经过研究,我发现了以下选项.

  1. Spring REST WS(使用Jackson).
  2. 春季+泽西岛.
  3. 春天+ Resteasy.
  4. Spring + Apache CFX.
  5. Spring + Restlet.

我的选择是Spring WS,但Spring MVC REST不符合JAX-RS(如果我没有错).源 - Spring MVC REST不符合JAX-RS.有关系吗?

题:

  • 使用它作为非JAX-RS兼容吗?
  • 我是否需要采取额外步骤才能使其符合JAX-RS标准?
  • 安全的观点我需要注意哪些步骤?
  • 任何最好的prectices?

java rest spring spring-ws jax-rs

19
推荐指数
1
解决办法
3万
查看次数

@RestControllerAdvice vs @ControllerAdvice

  • @RestControllerAdvice和@ControllerAdvice之间的主要区别是什么?
  • 是不是我们应该总是使用@RestControllerAdvice来提供休息服务和@ControllerAdvice MVC?

spring

10
推荐指数
4
解决办法
1万
查看次数

为什么我们不能在Java 8流中抛出异常?

例如:

Person result = persons.stream()
                  .filter(x -> {
                    if ("test".equals(x.getName() ) ) {
                      throw new IOException("not possible inside stream y ?"); //any checked exception
                    }
                    //code here
                  })
Run Code Online (Sandbox Code Playgroud)

M寻找不被允许的理由?即使声明代码的方法也抛出IOException

java-8 java-stream

4
推荐指数
2
解决办法
4546
查看次数

Mybatis:选择注释中的"小于"问题

我使用的是java7,spring 3和mybatis

的pom.xml

<org.mybatis-version>3.2.8</org.mybatis-version>
<org.mybatis-spring-version>1.2.2</org.mybatis-spring-version>

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>${org.mybatis-version}</version>
</dependency>
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>${org.mybatis-spring-version}</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

虽然使用基于注释的Select我遇到了一个奇怪的问题,其中下面提到的代码由于使用<(Less then)而抛出异常而while(大于)按预期工作.

<script>
SELECT * FROM STUDENT
WHERE DEPARTMENT_ID = #{depId}
<if test='joiningDate != null'> AND STUDENT_ID <= #{joiningDate} </if>
</script>
Run Code Online (Sandbox Code Playgroud)

谷歌搜索了一段时间后,我发现下面报告的这个问题.

https://code.google.com/p/mybatis/issues/detail?id=787

上面的问题可以通过替换<(less then)来解决&lt;,如下所示.

<script>
SELECT * FROM STUDENT
WHERE DEPARTMENT_ID = #{depId}
<if test='joiningDate != null'> AND STUDENT_ID &lt;= #{joiningDate} </if>
</script>
Run Code Online (Sandbox Code Playgroud)

我也遇到了在我所未尝试过的受尊重场景中使用CDATA或^的建议.

题:

  • 我的问题是Mybatis团队不应该解决这个问题(对于经常使用的查询标签至少是xml特定的转换),或者这种行为是预期的,因为我们使用<script>标签?
  • 有没有我错过的替代解决方案?

java spring mybatis

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

spring ×3

java ×2

java-8 ×1

java-stream ×1

jax-rs ×1

mybatis ×1

rest ×1

spring-ws ×1