小编kry*_*ger的帖子

Spring MVC @RequestParam - 多个关键名称?或另一种要求"一个或另一个"的方式

允许多个名称用于查询参数的最佳方法是什么?我有一个已更改参数名称的Web服务,但必须继续一段时间才能接受旧名称.

我不愿意创建2个RequestParams,两者都不是必需的,b/c我确实需要一个或另一个存在.像这样的东西会很甜蜜:

@RequestParam(value = "startTime|start", required = true ) String startTime,
Run Code Online (Sandbox Code Playgroud)

而不是

@RequestParam(value = "startTime", required = false ) String startTime,
@RequestParam(value = "start", required = false ) String start ){
if ( start != null || startTime != null ){ //  ... 
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?谢谢.

java spring spring-mvc

7
推荐指数
1
解决办法
1662
查看次数

Scala和Java在同一个项目中

我可以在同一个项目中使用Scala和Java吗?我是编程新手,所以这对我来说有点混乱.

从我的研究中我已经读到,获得一个好项目的最佳组合是Java/Spring或Scala/Lift的组合.为什么存在这些组合?是不是可以使用Scala with Spring或Java with Lift?

如果我使用Scala,我应该在Scala代码中拥有整个配置吗?或者我可以拥有外部资源,因此每次Scala代码都不应该修改.

java spring scala lift

7
推荐指数
2
解决办法
3600
查看次数

使用Spring Boot记录MongoDB查询

是否可以在Spring Boot应用程序中记录所有MongoDB查询?我试过这个:

logging.level.org.springframework.data.document.mongodb=INFO
log4j.category.org.springframework.data.document.mongodb=INFO
Run Code Online (Sandbox Code Playgroud)

但它没有用.

mongodb spring-boot

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

在浏览器中使用Q库

我需要在浏览器中使用Q库(http://documentup.com/kriskowal/q/).我想RequireJS用来加载这个库,但我不知道如何做到这一点.我知道如何加载我自己的模块,但我不能这样做Q.它有一些功能:

(function (definition) { 
  //some another code here***
  // RequireJS
} else if (typeof define === "function" && define.amd) {
  define(definition);
Run Code Online (Sandbox Code Playgroud)

如何加载Q然后在另一个模块中使用它?

javascript module requirejs q

6
推荐指数
2
解决办法
5068
查看次数

Hazelcast自动发现是如何工作的?

我想知道Hazelcast自动发现是如何工作的.节点如何在网络中找到其他节点?他们怎么知道一个节点什么时候死了?

java networking hazelcast

6
推荐指数
1
解决办法
2034
查看次数

与liquibase.change.core.RawSQLChange没有反转

问题在于:当播放命令maven时,似乎问题在https://liquibase.jira.com/browse/CORE-465中找到,但是在2009年,可以标记为"无法再现",我使用一个文件.xml类型liquibase有一个changeSet,但是很多createTable,addPrimaryKey,rollback,addForeignKeyConstraint,这个文件总是创建表和你各自的约束,但是我做了回滚这个错误发生了,我累了找到Internet,然后可以找不到问题的解决方案,你能解决这个问题吗?与社区分享!

插件和命令用于maven:

liquibase:rollback -Dliquibase.rollbackTag=payScript -PproductionPostgreSql
Run Code Online (Sandbox Code Playgroud)

这个插件

<plugin>
    <groupId>org.liquibase</groupId>
    <artifactId>liquibase-maven-plugin</artifactId>
    <version>3.4.1</version>
    <configuration>
        <changeLogFile>${basedir}/src/main/resources/changelogs/db.changelog-master.xml</changeLogFile>
        <driver>${driver}</driver>
        <url> ${host.db}</url>
        <username>${user.db}</username>
        <password>${password.db}</password>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>org.liquibase</groupId>
            <artifactId>liquibase-core</artifactId>
            <version>3.4.1</version>
        </dependency>
    </dependencies>
</plugin>
Run Code Online (Sandbox Code Playgroud)

这产生了下面的堆栈跟踪

[错误]无法执行目标org.liquibase:liquibase-maven-plugin:3.4.1:rollback(default-cli)on project generic:设置或运行Liquibase时出错:liquibase.exception.RollbackImpossibleException:与liquibase.change无反转.core.RawSQLChange created - > [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException:无法执行目标org.liquibase:liquibase-maven-plugin:3.4.1:rollback(default-cli)on project generic:Error设置或运行Liquibase:liquibase.exception.RollbackImpossibleException:与在org.apache.maven的org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)创建的liquibase.change.core.RawSQLChange无反转.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)位于org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)在org.apache.maven .lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)在org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)在org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:307)org.apache.maven.maven.DefaultMaven.doExecute(DefaultMaven.java:193)org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)atg.apache.maven.cli. mavenCli.execute(MavenCli.java:862)org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286)org.apache.maven.cli.MavenCli.main(MavenCli.java:197)在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)在java.lang.reflect中.Method.invoke(Method.java:497)org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java) :229)org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)引起:org. apache.maven.plugin.MojoExecutionException:设置或运行Liquibase时出错:liquibase.exception.RollbackImpossibleException:与liquibase.change.core无反转.RawSQLChange在org.liquibase.maven.plugins.AbstractLiquibaseMojo.execute(AbstractLiquibaseMojo.java:398)创建于org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)在org.apache.maven.lifecycle.internal .MojoExecutor.execute(MojoExecutor.java:208)... 20更多引起:liquibase.exception.RollbackFailedException:liquibase.exception.RollbackImpossibleException:与liquibase.changelog.ChangeSet.rollback中创建的liquibase.change.core.RawSQLChange无反向(ChangeSet.java:648)位于liquibase.Linquibase.roll上的liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:73)中的liquibase.changelog.visitor.RollbackVisitor.visit(RollbackVisitor.java:39)(Liquibase.java: 656)在org.liquibase.maven.plugins.LiquibaseRollback.liquibase.exception.RollbackImpossibleException:performLiquibaseTask(LiquibaseRollback.java:121)在org.liquibase.maven.plugins.AbstractLiquibaseMojo.execute(AbstractLiquibaseMojo.java:394)... 22多个没有造成逆liquibase.change.core. RawSQLChange在liquibase.lbstract.AbstractChange.generateRollbackStatements(AbstractChange.java:397)的liquibase.change.AbstractChange.generateRollbackStatements(AbstractChange.java:397)的liquibase.AbstractJdbcDatabase.executeRollbackStatements(AbstractJdbcDatabase.java:1269)的liquibase.change.AbstractChange.generateRollbackStatementsFromInverse(AbstractChange.java:424)中创建. changelog.ChangeSet.rollback(ChangeSet.java:634)... 27 more [ERROR] [ERROR] [ERROR]有关错误和可能的解决方案的更多信息,请阅读以下文章:[错误] [帮助1]121)at org.liquibase.maven.plugins.AbstractLiquibaseMojo.execute(AbstractLiquibaseMojo.java:394)... 22更多引起:liquibase.exception.RollbackImpossibleException:与liquibase.change创建的liquibase.change.core.RawSQLChange无反转.lbstractChange.generateRollbackStatementsFromInverse(AbstractChange.java:424)liquibase.change.AbstractChange.generateRollbackStatements(AbstractChange.java:397)at liquibase.database.AbstractJdbcDatabase.executeRollbackStatements(AbstractJdbcDatabase.java:1269)liquibase.changelog.ChangeSet.rollback( ChangeSet.java:634)..27 more [ERROR] [ERROR] [ERROR]有关错误和可能的解决方案的更多信息,请阅读以下文章:[错误] [帮助1]121)at org.liquibase.maven.plugins.AbstractLiquibaseMojo.execute(AbstractLiquibaseMojo.java:394)... 22更多引起:liquibase.exception.RollbackImpossibleException:与liquibase.change创建的liquibase.change.core.RawSQLChange无反转.lbstractChange.generateRollbackStatementsFromInverse(AbstractChange.java:424)liquibase.change.AbstractChange.generateRollbackStatements(AbstractChange.java:397)at liquibase.database.AbstractJdbcDatabase.executeRollbackStatements(AbstractJdbcDatabase.java:1269)liquibase.changelog.ChangeSet.rollback( ChangeSet.java:634)..27 more [ERROR] [ERROR] [ERROR]有关错误和可能的解决方案的更多信息,请阅读以下文章:[错误] [帮助1]execute(AbstractLiquibaseMojo.java:394)... 22更多引起:liquibase.exception.RollbackImpossibleException:与Liquibase.change.AbstractChange.generateRollbackStatementsFromInverse(AbstractChange.java:424)在liquibase上创建的liquibase.change.core.RawSQLChange没有反转在liquibase.change.ChangeSet.rollback(ChangeSet.java:634)的liquibase.database.AbstractJdbcDatabase.executeRollbackStatements(AbstractJdbcDatabase.java:1269)的.change.AbstractChange.generateRollbackStatements(AbstractChange.java:397)... 27更多[错误] ] [ERROR] …

java database eclipse liquibase maven

6
推荐指数
1
解决办法
7126
查看次数

Spring Boot应用程序日志级别

我想更改正在运行的Spring Boot应用程序的日志级别.

是否可以在运行时更改日志级别?现在我在我的jar中有记录器配置.

logback spring-boot

6
推荐指数
1
解决办法
8707
查看次数

弹簧自动装配和螺纹安全

我是Spring的新手,最近创建了一个测试RESTful Web服务应用程序.我遵循Spring @Autowiring注入bean的方式.以下是我的代码和问题:

@Service
public class HelloWorld {       

    @Autowired
    private HelloWorldDaoImpl helloWorldDao;

    public void serviceRequest() {
        helloWorldDao.testDbConnection();
    }

}

@RestController
public class HelloWorldController {

    @Autowired
    private HelloWorld helloWorld;

    @RequestMapping(value = "/test", method = RequestMethod.POST)
    public String test() {
        helloWorld.serviceRequest();
        return "Success";
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我的问题是,当我有两个请求完全同时进入并且它们都共享相同的Service类变量"helloWorld"时,那么我们如何确保为Request 1返回的值不会转到Request 2和反之亦然?

Spring使用时会自动处理这种多线程问题@Autowired吗?

spring thread-safety autowired

6
推荐指数
2
解决办法
3244
查看次数

Springboot 错误:创建带有名称的 bean 时出错

我正在使用 Spring Boot 2.0。

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'securityConfig': Unsatisfied dependency expressed through method 'setContentNegotationStrategy' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mvcContentNegotiationManager' defined in class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration$EnableWebMvcConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.web.accept.ContentNegotiationManager]: Factory method 'mvcContentNegotiationManager' threw exception; nested exception is java.lang.NoSuchMethodError: org.springframework.web.accept.ContentNegotiationManagerFactoryBean.build()Lorg/springframework/web/accept/ContentNegotiationManager;
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:668) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1344) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:502) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:312) ~[spring-beans-5.0.4.RELEASE.jar:5.0.4.RELEASE] …
Run Code Online (Sandbox Code Playgroud)

spring spring-security spring-data spring-boot

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

Ember transitionTo查询params不更新URL

我正在使用Ember 1.9.1并在转换到具有查询参数的路径时遇到问题.

queryParams不会出现在URL中.

我得到http:// localhost:8080/login而不是http:// localhost:8080/login?email = myemail&uuid = myuuid

App.MyRouteRoute = Ember.route.extend({ 

redirect: function (model, transition) {
    this.transitionTo('login', {
        queryParams: {
            uuid: model.get('uuid'),
            email: model.get('email')
        }
    }); 
}
Run Code Online (Sandbox Code Playgroud)

ember.js

5
推荐指数
1
解决办法
4400
查看次数