小编Mit*_*tja的帖子

使构造函数抛出异常是一种好习惯吗?

使构造函数抛出异常是一个好习惯吗?例如,我有一个类Person,我有age它的唯一属性.现在我提供课程为

class Person{
  int age;
  Person(int age) throws Exception{
   if (age<0)
       throw new Exception("invalid age");
   this.age = age;
  }

  public void setAge(int age) throws Exception{
  if (age<0)
       throw new Exception("invalid age");
   this.age = age;
  }
}
Run Code Online (Sandbox Code Playgroud)

java constructor exception

155
推荐指数
8
解决办法
13万
查看次数

单元测试和Log4net

我在我的控制器中测试一个动作的单元测试,动作写入log4net.

当我运行我的动作时效果很好 - 写入log4net.

但是,当我运行单元测试时 - 该操作不会写入log4net但不会抛出任何异常.

有没有人有办法解决吗?

asp.net unit-testing asp.net-mvc-3

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

在 QSettings 的 ini 文件中具有分层组

我正在使用 QSettings 在我的 GUI 中进行更改。目前我已经了解如何将 QSetting 用于基本的键=值对。

[button]
  enable = 1
Run Code Online (Sandbox Code Playgroud)

但我想要有等级组。像下面这样

[user1]
  [button1]
     enable = 1
  [button2]
    enable = 0
[user2]
  [button1]
    enable = 1
  [button2]
    enable = 0
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?

谢谢你 :)

ini qt

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

如何排除log4js类别不被记录到默认的appender

我正在使用node-log4js.(这是log4JS,而不是log4J!)我认为记录器的"类别"就像你把Log4中的字符串放入记录器的构造函数中一样(通常你把你的fqn类名放在那里),这样log4j可以把记录的东西放进去到正确的位置.

我得到了以下配置:

{
    "appenders": [
        {
            "type": "console",
        },
        {
            "type": "file",
            "absolute": true,
            "filename": "/tmp/app.log",
            "maxLogSize": 20480,
            "backups": 10     
        },
        {
            "type": "console",
            "category": "app.access"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

期望的行为是所有"app.access"内容只会转到最后一个appender(现在也是控制台,但是将来可能会改变).目前,具有"app.access"类别的所有记录将被记录两次到控制台,一次记录到文件.

有没有办法给那些其他两个appender一个"除app.access"以外的所有类别?怎么样?

非常感谢你提前

javascript logging node.js log4js-node

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