小编dea*_*mon的帖子

如何用Python 3安装pip?

我想安装pip.它应该支持Python 3,但它需要setuptools,它只适用于Python 2.

如何用Python 3安装pip?

python pip setuptools package python-3.x

510
推荐指数
12
解决办法
122万
查看次数

构造函数中的可覆盖方法调用有什么问题?

我有一个Wicket页面类,它根据抽象方法的结果设置页面标题.

public abstract class BasicPage extends WebPage {

    public BasicPage() {
        add(new Label("title", getTitle()));
    }

    protected abstract String getTitle();

}
Run Code Online (Sandbox Code Playgroud)

NetBeans通过消息"构造函数中的可覆盖方法调用"警告我,但它应该有什么问题呢?我能想象的唯一选择是将其他抽象方法的结果传递给子类中的超级构造函数.但是很多参数很难读懂.

java oop inheritance constructor overriding

366
推荐指数
4
解决办法
12万
查看次数

为什么JPA有@Transient注释?

Java有transient关键字.为什么JPA @Transient不是简单地使用已经存在的java关键字?

java annotations jpa transient java-ee

269
推荐指数
7
解决办法
29万
查看次数

Servlet 3.0 API的Maven依赖?

如何告诉Maven 2加载Servlet 3.0 API?

我试过了:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>3.0</version>
    <scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我使用http://repository.jboss.com/maven2/但是哪个存储库是正确的?

附录:

它适用于整个Java EE 6 API的依赖项和以下设置:

<repository>
    <id>java.net</id>
    <url>http://download.java.net/maven/2</url>
</repository>

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>6.0</version>
    <scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我更愿意只将Servlet API添加为依赖项,但"Brabster"可能是正确的,Java EE 6配置文件已替换了单独的依赖项.是否有来源证实了这一假设?

java maven-2 servlets java-ee

227
推荐指数
7
解决办法
25万
查看次数

Java 8 Streams:多个过滤器与复杂条件

有时您想要Stream使用多个条件过滤a :

myList.stream().filter(x -> x.size() > 10).filter(x -> x.isCool()) ...
Run Code Online (Sandbox Code Playgroud)

或者你可以用复杂的条件和单一的方式 做同样的事情filter:

myList.stream().filter(x -> x.size() > 10 && x -> x.isCool()) ...
Run Code Online (Sandbox Code Playgroud)

我的猜测是第二种方法具有更好的性能特征,但我不知道.

第一种方法在可读性方面取胜,但性能更好?

java lambda filter java-8 java-stream

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

使用CAS或OAuth进行SSO?

我想知道是否应该使用CAS协议或OAuth +某些身份验证提供程序进行单点登录.

示例场景:

  1. 用户尝试访问受保护资源,但未经过身份验证.
  2. 应用程序将用户重定向到SSO服务器.
  3. 如果通过身份验证,则用户从SSO服务器获取令牌.
  4. SSO重定向到原始应用程序.
  5. 原始应用程序根据SSO服务器检查令牌.
  6. 如果令牌没问题,将允许访问,并且应用程序知道用户ID.
  7. 用户执行注销并同时从所有连接的应用程序注销(单点注销).

据我所知,这正是CAS发明的.CAS客户端必须实现CAS协议才能使用身份验证服务.现在我想知道在客户(消费者)网站上使用CAS或OAuth.OAuth是CAS的那部分的替代品吗?OAuth作为新的事实上的标准应该优先考虑吗?是否有一个易于使用的(不是Sun的OpenSSO!)更换为CAS支持不同的方法,如用户名/密码,OpenID的,TLS certifactes认证部...?

语境:

  • 不同的应用程序应该依赖于SSO服务器的身份验证,并且应该使用类似会话的东西.
  • 应用程序可以是GUI Web应用程序或(REST)服务.
  • SSO服务器必须提供用户标识,这是从中央用户信息存储获取有关用户的更多信息(如角色,电子邮件等)所必需的.
  • 单签出应该是可能的.
  • 大多数客户端都是用Java或PHP编写的.

我刚刚发现WRAP,它可能成为OAuth的继任者.这是微软,谷歌和雅虎指定的新协议.

附录

我了解到OAuth不是为验证而设计的,即使它可用于实现SSO,但只能与OpenID等SSO服务一起使用.

OpenID在我看来是"新CAS".CAS具有OpenID未命中的一些功能(如单点注销),但在特定场景中添加缺失部分并不困难.我认为OpenID已被广泛接受,最好将OpenID集成到应用程序或应用程序服务器中.我知道CAS也支持OpenID,但我认为CAS对OpenID来说是可有可无的.

security cas oauth single-sign-on

177
推荐指数
5
解决办法
7万
查看次数

URL矩阵参数与请求参数

我想知道是否在我的URL中使用矩阵或查询参数.我发现对该主题的旧讨论并不令人满意.

例子

乍一看,矩阵参数似乎只有优势:

  • 更具可读性
  • 不需要在XML文档中编码和解码"&"
  • 带"?"的网址 在很多情况下都没有缓存; 具有矩阵参数的URL被缓存
  • 矩阵参数可以出现在路径中的任何位置,并且不限于其末尾
  • 矩阵参数可以有多个值: paramA=val1,val2

但也有缺点:

  • 只有少数像JAX-RS这样的框架支持矩阵参数
  • 当浏览器通过GET提交表单时,params成为查询参数.因此它最终会出现两种相同任务的参数.为了不混淆REST服务的用户并限制服务开发人员的工作量,在这个领域中使用始终查询参数会更容易.

由于服务的开发人员可以选择支持矩阵参数的框架,因此唯一的缺点是浏览器默认创建查询参数.

还有其他缺点吗?你会怎么做?

parameters rest url http jax-rs

170
推荐指数
3
解决办法
6万
查看次数

Python 3的图像库

什么是python-3使用而不是PIL来操作图像?

python image python-imaging-library python-3.x

155
推荐指数
6
解决办法
17万
查看次数

如何命名工厂的方法?

我想大多数类似工厂的方法都是从这开始的create.但为什么他们被称为" 创造 "?为什么不" 制造 "," 生产 "," 建立 "," 生成 "或其他什么?这只是品味问题吗?会议?或者"创造"中有特殊含义吗?

createURI(...) 
makeURI(...)
produceURI(...)
buildURI(...)
generateURI(...)
Run Code Online (Sandbox Code Playgroud)

你会选择哪一个?为什么?

methods factory coding-style naming-conventions

130
推荐指数
6
解决办法
4万
查看次数

功能界面,什么都不带,什么都不返回

JDK中是否有标准的功能接口,什么都不带,什么都不返回?我找不到一个.类似于以下内容:

@FunctionalInterface
interface Action {
  void execute();
}
Run Code Online (Sandbox Code Playgroud)

java function java-8

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