小编Jas*_*per的帖子

如何将多个Mockito匹配器与逻辑"和"/"或"结合起来?

我想使用Mockito验证字符串参数是否满足两个条件:

verify(mockClass).doSomething(Matchers.startsWith("prefix"));
verify(mockClass).doSomething(Matchers.endsWith("suffix"));
Run Code Online (Sandbox Code Playgroud)

如何将这两者合并为一个陈述?

mockito

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

创建HashMaps的不同方法

我最近一直在学习HashMaps,但我有一个问题似乎无法得到明确的答案.主要区别 -

HashMap hash1 = new HashMap();
Run Code Online (Sandbox Code Playgroud)

VS

HashMap<,>hash1 = new HashMap <,> (); //Filled in with whatever Key and Value you want. 
Run Code Online (Sandbox Code Playgroud)

我想当你定义一个HashMap时,它需要Key和Value.任何帮助将非常感激.谢谢.

java hashmap

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

PHP:包含使用eval的等价物

如果代码相同,则之间似乎存在差异:

include 'external.php';

eval('?>' . file_get_contents('external.php') . '<?php');

有什么不同?有人知道吗?


我知道这两个是不同的,因为include工作正常,并eval给出一个错误.当我最初问这个问题时,我不确定它是否在所有代码上或者仅在我的代码上发生错误(并且由于代码被eval编辑,因此很难找出错误的含义).但是,在研究了答案之后,事实证明,无论你是否得到错误都不依赖于代码external.php,但确实取决于你的php设置(short_open_tag确切地说).

php eval include

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

Android ListView不会被Filter刷新

在我的应用程序中,我有三个片段ViewPager.其中一个片段我很简单Arraylist,ListView从手机联系人列表,我正在尝试过滤后输入edittext.但是直到softkeyboard可见才刷新,我必须通过过滤的字符串隐藏键盘以刷新列表视图.

例如:

过滤列表视图"a":

adapter.getFilter().filter("a");
Run Code Online (Sandbox Code Playgroud)

我的适配器:

public class AdapterContacts extends BaseAdapter implements Filterable {

    private LayoutInflater inflater;
    private Context context;
    private List<ContactLists> categoryArrayList;
    private final ArrayList<ContactLists> originalList = new ArrayList<ContactLists>();
    private NameFilter filter;

    public AdapterContacts(ArrayList<ContactLists> array) {
        categoryArrayList = array;
    }

    public AdapterContacts(Context context, List<ContactLists> array) {
        this.context = context;
        inflater = LayoutInflater.from(this.context);
        categoryArrayList = array;
        originalList.addAll(array);
    }

    @Override
    public int getCount() {
        return categoryArrayList.size();
    }

    @Override
    public ContactLists getItem(int position) …
Run Code Online (Sandbox Code Playgroud)

android android-listview

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

TypeScript是ES6的超集吗?

换句话说,TypeScript是否涵盖了所有ES6语法?

我的问题有何不同之处:

  • "TypeScript真的是JavaScript的超集吗?"
    ES6当前版本的Javascript不是(或者未经考虑过,如果你在未来中读过这篇文章)
  • 打字稿!= ES6?
    这是不同的,我知道,不是我要问的.

typescript ecmascript-6

13
推荐指数
2
解决办法
2781
查看次数

web.xml中的安全性约束,用于没有角色成员身份的已认证用户

我非常绝望,因为我认为必须有一个简单的解决方案来解决我的问题,但我正在寻找 - 无济于事.

我在Glassfish 3.1.1中使用自定义域.此自定义领域(实现AppservPasswordLoginModuleInterface)从HTTPS请求中获取安全令牌,验证安全令牌,然后将用户返回到Glassfish.

问题是安全令牌不包含任何组,这意味着方法public String [] getGroupsList()或自定义域返回一个空列表(正确,因为安全令牌中没有角色).

也就是说,我希望有一个安全约束,只有经过验证的用户才能登录.我知道我可以在web.xml中使用以下约束:

<security-constraint>
  <web-resource-collection>
    <web-resource-name>mywebapp</web-resource-name>
    <url-pattern>/*</url-pattern>
  </web-resource-collection>
  <auth-constraint>
    <role-name>Users</role-name>
  </auth-constraint>
</security-constraint>
Run Code Online (Sandbox Code Playgroud)

但是因为我没有任何组,所以我无法将任何组映射到角色,因此我不能将auth-constraint与role-name一起使用.

在web.xml中是否有一种方法可以定义只允许经过身份验证的用户,忽略它们所处的角色并忽略它们是否处于任何角色.

有几个我无法实现的解决方案:

  • 我无法将底层LDAP更改为包含角色,因为LDAP模式以及LDAP用户映射到安全性的方式会使我们超出范围.
  • 我必须使用当前的自定义域处理程序,我不能用我自己的一个只替换默认组替换它.我曾经尝试过这次,但它确实奏效了.但是我无法用自己的自定义域替换现有的自​​定义域,因为自定义域应该是通用的.

但我真的认为web.xml中应该有一种方法可以说:忽略所有组和角色,我只想要一个经过身份验证的用户?

任何帮助,将不胜感激.

java web.xml glassfish jaas

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

新的参考文献没有给出警告

在整个网络[1] [2] [3],它说,因为PHP 5.0.0"通过引用分配新的返回值"给出一个E_DEPRECATEDE_STRICT取决于你的PHP版本(E_DEPRECATED直到5.3才存在,所以它就是E_STRICT在这之前).

因此,我的理解是这段代码应该发出这样的警告:

error_reporting(E_ALL | E_STRICT);

class A
{
}

$a =& new A();
Run Code Online (Sandbox Code Playgroud)

但是,我在两个完全不同的服务器上试过这个(一个运行PHP 5.3,一个运行PHP 5.2)并且实际上都没有给出任何消息!这是怎么回事?我的理解是不正确的还是在这两台服务器上发生了什么奇怪的事情?

(我也觉得很奇怪,这是不赞成的,看到它$a = null; $b =& $a; $b = new A();不一样$a = null; $b =& $a; $b =& new A();,但如果我误解了被弃用的东西,这只是问题的一部分......)

php reference

11
推荐指数
1
解决办法
136
查看次数

调用API时在何处使用并发

在ac #project项目中,我正在调用一个web api,问题是我在一个方法的循环中做它们.通常没有那么多,但即使我正在考虑利用并行性.

到目前为止我正在尝试的是

public void DeployView(int itemId, string itemCode, int environmentTypeId)
{
    using (var client = new HttpClient())
    {
        client.BaseAddress = new Uri(ConfigurationManager.AppSettings["ApiUrl"]);
        client.DefaultRequestHeaders.Accept.Clear();
        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

        var agents = _agentRepository.GetAgentsByitemId(itemId);

        var tasks = agents.Select(async a =>
            {
                var viewPostRequest = new
                    {
                        AgentId = a.AgentId,
                        itemCode = itemCode,
                        EnvironmentId = environmentTypeId
                    };

                var response = await client.PostAsJsonAsync("api/postView", viewPostRequest);
            });

        Task.WhenAll(tasks);
    }
}
Run Code Online (Sandbox Code Playgroud)

但是想知道这是否是正确的路径,或者我应该尝试并行整个DeployView(即使在使用HttpClient之前)

现在我看到它发布了,我认为我不能只删除变量响应,只需执行等待而不将其设置为任何变量

谢谢

c# task-parallel-library async-await

11
推荐指数
2
解决办法
2116
查看次数

在命令行中使用空格的预期行为

我编写了一个程序,使用csc.exe编译我的.cs文件:

namespace myCompiler
{
    public partial class Form1 : Form
    {
        string compilerFolder;
        string outputFolder;
        string projectFile;
        string output = @" /out:";

        public Form1()
        {
            InitializeComponent();
        }

        private void startCompile_Click(object sender, EventArgs e)
        {
            Compile();
        }

        public void findCompile_Click(object sender, EventArgs e)
        {
            DialogResult result1 = folderBrowserDialog1.ShowDialog();
            compilerFolder = folderBrowserDialog1.SelectedPath;
            MessageBox.Show(compilerFolder);
            cscLabel.Text = compilerFolder;
        }

        private void outputCompile_Click(object sender, EventArgs e)
        {
            DialogResult result2 = folderBrowserDialog2.ShowDialog();
            outputFolder = folderBrowserDialog2.SelectedPath;
            outputLabel.Text = (outputFolder);
            MessageBox.Show(outputFolder);
        }

        private void findProject_Click(object sender, EventArgs e) …
Run Code Online (Sandbox Code Playgroud)

c# command-line

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

更改 Flyway 迁移文件名中的描述

我有一个名为 的飞路迁移脚本V1_7__a_and_c.sql,但我意识到它不是关于“a”和“c”,而是实际上关于“a”和“b”,所以该文件的正确名称实际上是V1_7__a_and_b.sql

我可以重命名该文件吗?或者是否会产生可能导致将来出现问题的后果?

flyway

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