小编win*_*ama的帖子

JAAS,Spring Security或Apache Shiro

关于java中安全框架的一个简单问题.

到目前为止,JAAS一直是我的框架.是的人抱怨它很难设置,它需要挂钩你的底层系统,但它确实有它的工作,并有额外的作为规范的奖励.

这就是说我最近一直在研究Java中的其他安全框架,这两个似乎最受网络关注的是:

1 - Spring Security

Spring Security似乎非常受欢迎,但我发现它有点令人费解.

2 - Apache Shiro

Apache Shiro似乎比Spring Security更直接,但似乎缺少一些文档.

所以我的问题是,在上面提到的框架中,人们认为我应该花时间学习Spring Security或Apache Shiro吗?

(或者我应该坚持使用JAAS?)

spring-security jaas shiro

9
推荐指数
1
解决办法
8437
查看次数

得墨忒耳定律 - 为什么我需要使用吸气剂?

我有一个关于Demeter法与Java中其他对象中包含的列表相关的问题.我有以下课程.

public class Conversation
{
    Person person;
    List<Message> conversationList;

    public List<Message> getConversationList()
    {
        return conversationList;
    }
}
Run Code Online (Sandbox Code Playgroud)

要向此类中的conversationList添加新的Message对象,我通常会执行以下操作.

Conversationc = new Conversation();
c.getConversationList().add(new Message());
Run Code Online (Sandbox Code Playgroud)

经过一段时间的阅读后,这似乎违反了得墨忒耳定律,并且如下所述为Converstaion添加了一种方法,这将是"更好"的方法.

public List<Message> addMessageToList(Message msg)
{
    conversationList.add(msg);
}
Run Code Online (Sandbox Code Playgroud)

然而,这对我来说似乎完全矫枉过正.在这种情况下,最佳做法是什么?

java list law-of-demeter

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

Spring如何在运行时实现依赖注入?

有谁知道spring在运行时使用什么技术来实现依赖注入?它只是简单地使用方面(AOP)还是更复杂的东西?

java aop spring dependency-injection

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

如何从String中删除尾随空字符?

我遇到从UTF-8编码字符串中删除尾随空字符的问题:

在此输入图像描述

如何从一个删除这些字符String

这是我用来创建String一个代码的代码Vec:

let mut data: Vec<u8> = vec![0; 512];
// populate data
let res = String::from_utf8(data).expect("Found invalid UTF-8");
Run Code Online (Sandbox Code Playgroud)

rust

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

您是否需要明确关闭Java KeyStore输入流?

当使用FileInputStream在KeyStore中读取如下时,是否需要显式关闭input-steam以停止浪费系统资源?

FileInputStream fin = new FileInputStream("keystore.jks");
KeyStore keystore = KeyStore.getInstance("JKS");
keystore.load(fin, password);

//  Is this line needed ??
fin.close();
Run Code Online (Sandbox Code Playgroud)

此FileInputStream是由load()方法自动关闭还是需要显式手动干预?

java keystore jks

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

如何使用Java在MongoDB 3.3中通过_id删除文档

我有一个问题,想知道如何通过MongoDB中的_id删除文档.我可以通过其他属性删除没问题但我似乎缺少正确的语法删除_id.

我的文档格式如下:

{ "_id" : { "$oid" : "57a49c6c33b10927ff09623e" }, "name" : "Brad" }
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的Java代码:

// Boiler plate
MongoClient client = new MongoClient( "localhost" , 27017 );
MongoDatabase db = client.getDatabase("my-database");
MongoCollection<Document> collection = db.getCollection("my-collection")

// This works
collection.deleteOne(new Document("name", "Brad"));

// This does not work
collection.deleteOne(new Document("_id", "57a49c6c33b10927ff09623e"));
Run Code Online (Sandbox Code Playgroud)

任何人都知道我哪里出错了?

java mongodb nosql

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

方面是否在自己的线程中执行?

关于AspectJ,我有一个非常简短的问题.

方面是从单独的线程执行还是在现有线程上执行(即主方法执行的线程)?

java aspectj

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