小编Mur*_*nik的帖子

MS-Access - 您尝试执行不包含指定聚合函数的查询

SELECT SUM(orders.quantity) AS num, fName, surname
FROM author
INNER JOIN book ON author.aID = book.authorID;
Run Code Online (Sandbox Code Playgroud)

我不断收到错误消息:"您试图执行不包含指定表达式"fName"的查询作为聚合函数的一部分.我该怎么办?

sql ms-access

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

Mockito NotaMockException

我正面临着Mockito junit测试的问题.我是新手,我对我面临的问题感到困惑.任何有关这方面的帮助将不胜感激.

class Activity{

    public void firstMethod(){

      String str = secondMethod();
   }

    public String secondMethod(){
      String str = null;

      /*  some Code */

      return str;
   }
}
Run Code Online (Sandbox Code Playgroud)

获得例外:

*org.mockito.exceptions.misusing.NotAMockException: 
 Argument passed to when() is not a mock!*
Run Code Online (Sandbox Code Playgroud)

在下面的代码中

class ActivityTest(){

  Activity act;

  @Before
  public void setup(){
     act = new Activity();
  }

  @Test
  public void testFirstMethod(){

      Mockito.doReturn(Mockito.anyString()).when(act).secondMethod();
      act.firstMethod();
      verify(act).secondMethod();
  }
} 
Run Code Online (Sandbox Code Playgroud)

我知道活动不是模拟,但我不确定如何解决这个问题,因为secondMethod()同一个类中的方法.我需要编写规则,secondMethod()因为我已经完成了单元测试.组合的定义secondMethod()具有外部依赖性.我应该嘲笑存在的外部依赖关系secondMethod()并为它们编写规则而不是规则secondMethod()吗?

我发现这篇文章: Mockito Spy'ing对被单元测试的对象 然而将secondMethod()分成另一个类是没有意义的.我的方法与这个类有关.创建一个不同的测试类对我来说似乎不对.即使使用spy()模拟实际类也不是最正确的方法,正如帖子中已经解释过的那样.

我不认为我应该创建一个Activity类的模拟,因为那是我正在测试的类.我非常感谢对此的帮助和见解.

java junit unit-testing mockito

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

Java - 如何只创建具有有效属性的对象?

我正在做一个基本的Java课程,我遇到了一个问题:如果我已经将有效参数传递给构造函数,我该如何创建一个对象?

在实现验证后,我应该创建一个替代类并从那里调用构造函数吗?

或者我应该/可以在类中使用静态方法进行验证吗?

在这种情况下,最佳做法是什么?

java validation constructor object

17
推荐指数
3
解决办法
9187
查看次数

Mesos的"主"和"从"节点可以部署在同一台机器上吗?

Apache Mesos的"主"节点是否可以与Mesos的"从属"节点共存于同一台机器上?同样(对于高可用性(HA)部署),Mesos"master"选中使用的Apache Zookeeper节点是否可以部署在与Mesos"slave"节点相同的机器上?

Mesos建议将3个"主人"用于HA部署,Zookeeper建议将5个节点用于其仲裁选举系统.将这些服务与Mesos的"奴隶"流程一起运行,而不是将8台机器提交给有效的"非生产性"任务,这将是一件好事.

如果这样的设置是可行的,这种设置的优点/缺点是什么?

谢谢!

mesos mesosphere apache-zookeeper

16
推荐指数
1
解决办法
5080
查看次数

实例化Java抽象类?

相对较新的Java程序员和我已经被教导过你不能创建一个抽象类的实例.我也做了一些研究,我了解到在大多数情况下,当它出现一个抽象类时,它实际上是一个匿名的子类.但这是我遇到的问题:

Java的URL类有一个openConnection返回的方法URLConnection.URLConnection是一个抽象类,Java文档也将其所有子类列为抽象类......所以我真的迷失了.什么回来了?

java urlconnection instantiation abstract

16
推荐指数
5
解决办法
1321
查看次数

从ArrayList中删除字符

我在循环中面对这种不需要charint转换.说我有这个字符列表,我想删除其中一个:

List<Character> chars = new ArrayList<>();
chars.add('a');
chars.add('b');
chars.add('c');
chars.remove('a');  // or chars.remove('a'-'0');
Run Code Online (Sandbox Code Playgroud)

所以'a'被解释为它的int价值,我得到了一个IndexOutOfBoundsException例外.这有什么简单的解决方法吗?

java list arraylist char

16
推荐指数
3
解决办法
7503
查看次数

克隆单分支后克隆另一个分支

我使用以下命令来克隆一个分支:

git clone user@git-server:project_name.git -b branch_name --single-branch /your/folder
Run Code Online (Sandbox Code Playgroud)

现在我想检查服务器上的另一个分支。我尝试了下面的命令,但它不起作用

git checkout another_branch
Run Code Online (Sandbox Code Playgroud)

克隆单个分支后,如何克隆/签出/拉取/获取另一个分支?

git branch git-clone git-checkout

16
推荐指数
2
解决办法
3582
查看次数

使用equals()比较包装类和基元会产生奇怪的行为

考虑下面的代码捕捉.我们equals()用来比较对象是否有意义?这两个值都有意义相等,但为什么会longWrapper.equals(0)返回false?当我将两个值与==运算符进行比较时,它返回true.

    Long longWrapper = 0L;
    long longPrimitive = 0;

    System.out.println(longWrapper == 0L); // true
    System.out.println(longWrapper == 0); //true
    System.out.println(longWrapper == longPrimitive); //true


    System.out.println(longWrapper.equals(0L)); //true
    System.out.println(longWrapper.equals(0));  //false
    System.out.println(longWrapper.equals(longPrimitive)); //true
Run Code Online (Sandbox Code Playgroud)

java equals wrapper

15
推荐指数
1
解决办法
7120
查看次数

从临时表插入表

我有下表:

示例:

create table test
(
 col1 varchar(10),
 col2 varchar(20),
 col3 varchar(30)
);
Run Code Online (Sandbox Code Playgroud)

现在我想按变量插入两个值,最后一个用#temp表插入.

#Temp:

create table #temp
(
  col3 varchar(30)
);
Run Code Online (Sandbox Code Playgroud)

#Temp:包含

col3
-----
A1
A2
A3
Run Code Online (Sandbox Code Playgroud)

插入测试表:

Declare @col1 varchar(10) = 'A'
Declare @col1 varchar(20) = 'B'
Declare @sql varchar(max)

SET @SQL = N'insert into test values('+@col1+','+@col2+',........); 
EXEC(@SQL)
/* How to insert `@col3` from #temp to test table*/
Run Code Online (Sandbox Code Playgroud)

预期成果:

col1   col2   col3
------------------
A      B      A1
A      B      A2
A      B      A3
Run Code Online (Sandbox Code Playgroud)

注意:变量值必须重复,直到#temp值插入到表测试中.

sql sql-server sql-server-2008-r2 sql-insert

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

为什么 ('1'+'1') 在 Java 中输出 98?

我有以下代码:

class Example{
    public static void main(String args[]){

        System.out.println('1'+'1');

    }
}
Run Code Online (Sandbox Code Playgroud)

为什么会输出98

java custom-data-type system.out

14
推荐指数
2
解决办法
987
查看次数