我们在属性文件中有一些数据.这些数据用于许多类.因此,我们在每个类中创建一个Properties类对象,然后使用getProperty()方法读取数据.这导致代码重复.
有人可以建议一些最佳做法来避免这种情况吗?
我想到的一件事是:
创建一个类
为此类的属性文件中的每个属性设置一个公共变量
有一个方法为每个属性分配值
在需要属性值的类中,为此创建一个对象类和访问公共变量
但是,我不喜欢这种方法的是公共变量,如果在属性文件中添加了新属性,我需要添加代码来读取类中的该属性.
任何帮助表示赞赏.
谢谢!
我在运行时获得了一个数据库表名(让我们假设来自用户).我需要查询表并返回几个字段(我知道).这该怎么做?
"FOR FOR EACH"不会接受变量名称.所以,我无法使用它.
我经历了动态查询,尤其是SET-BUFFERS()方法.即便如此,我还需要知道表名.
我需要这样的东西:
DEF VAR tablename AS CHAR.
tablename = somename.
FOR EACH tablename WHERE ....:
...
...
END.
Run Code Online (Sandbox Code Playgroud)
有人可以指点我正确的方向吗?
我注意到 Powershell 中有一个奇怪的行为。有两个 .ps1 文件:
主.ps1:
echo "running exit.ps1"
$myexitcode = & ".\exit.ps1" "hello" | select -Last 1
echo "Return code is $myexitcode"
echo "Exit code is $?"
echo "after running exit.ps1"
Run Code Online (Sandbox Code Playgroud)
退出.ps1:
echo "processing args " $args
$script:_serverExitStatus = 9
#this is causing the program to exit completely
[System.Environment]::exit(3)
#BUT this is NOT causing the program to exit completely
#[System.Environment]::exit
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,进程将完全退出,并且输出不包含“运行 exit.ps1 后”。但是,如果我注释[System.Environment]::exit(3)并取消注释[System.Environment]::exit,输出将包含“运行 exit.ps1 后”
我觉得退出一定要彻底退出。但是,情况并非如此[System.Environment]::exit
这两件事有什么区别,哪一个是正确的?
版本:
$PSVersionTable.PSVersion
Major Minor Build Revision
----- …Run Code Online (Sandbox Code Playgroud)