小编Pab*_*jim的帖子

如何使用Spring安全性有条件地向登录用户显示jsp内容

我想向任何登录的用户显示内容,如果他们没有登录则要隐藏.我正在使用jsp和spring安全性.

显然,一个成熟的解决方案很容易完成.但实现这一目标的最简洁的标准方法是什么?

Spring安全标签似乎没有很好的方法可以在将来添加新角色.

java spring jsp spring-security

43
推荐指数
4
解决办法
7万
查看次数

如何从maven存储库中找到最新版本的工件

作为自动部署的一部分,我需要一个脚本从我们的内部存储库下载最新版本的工件.

理想情况下,此脚本将使用ant或unix shell脚本.

例如:

我有myArtifact.war,它有版本1.0,1.1和2.0 - 我需要给出正确的组ID和工件ID的脚本从我们的maven存储库中检索版本2.0(目前使用的是artifactory).

有没有简单的方法来做到这一点?

ant shell maven-2 artifactory

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

如何避免使用域驱动设计的非常大的对象

我们正在关注领域驱动设计以实现大型网站.

但是,通过将行为放在域对象上,我们最终得到了一些非常大的类.

例如,在我们的WebsiteUser对象上,我们有许多方法 - 例如处理密码,订单历史记录,退款,客户细分.所有这些方法都与用户直接相关.其中许多方法内部委托给其他子对象,但这
仍然导致一些非常大的类.

我很想避免暴露很多子对象,例如user.getOrderHistory().getLatestOrder().

可以使用哪些其他策略来避免这些问题?

.net java oop design-patterns domain-driven-design

28
推荐指数
4
解决办法
3054
查看次数

适用于多个Java Web应用程序的自动部署解决方案

我正在寻找可以管理多个相互依赖的Java Web应用程序部署的解决方案,最好是开源.

该解决方案需要能够创建和存储包含多个项目的发布规范,以用于每个应用程序的发布特定版本以及相关的其他工件(数据库配置,apache配置等).

然后需要解析规范,然后需要在目标环境中部署/执行每个项目.目标环境是基于linux的.Web应用程序是在j2ee标准应用程序服务器上运行的香草战争.

有很多问题要问?

目前,我认为所有的位都很到位-二进制文物与发布的Maven插件发布,因此可从我们的Maven回购进行部署,该数据库的版本与dbdeployApache的配置在版本SVN.但是我不知道任何可以将所有这些步骤放在多个应用程序上的工具.

我目前首选的方法是使用hudson的参数化构建形式来创建规范.然后是第二个参数化构建,以选择预先创建的规范并在选定的环境中部署/执行它.

然而,这似乎是很多工作和不太理想的自定义解决方案.

任何人都知道任何预建的更好的想法吗?或建议如何处理这个 - 也许工作流引擎会比哈德森更好?也许是自定义网络应用程序

笔记:

目标环境预先构建了所有需求 - 例如安装了Java和app服务器,运行数据库等.这不是环境配置问题,而是更多的部署问题.

自动部署单个应用程序是许多解决方案的问题,例如货物,蚂蚁部署脚本等.但是我需要能够包装多个部署的东西.例如,在多个应用程序的特定版本及其要求下启动货物.

java deployment configuration maven-2 web-applications

26
推荐指数
5
解决办法
2万
查看次数

如何检查Pandas数据帧的索引是否已排序

我有一个带有索引的香草熊猫数据框.我需要检查索引是否已排序.优选地,不再进行分类.

例如,我可以通过index.is_unique()来测试索引以查看它是否是唯一的.是否有类似的方法来测试排序?

python pandas

26
推荐指数
2
解决办法
8717
查看次数

如何阻止Maven/Artifactory保留带有时间戳的快照

由于磁盘空间的考虑,我只希望在我的存储库中保留一个版本的任何快照.而不是保留带有时间戳后缀的多个版本

例如ecommerce-2.3-20090806.145007-1.ear

我怎么设置它?这是构建设置或存储库(Artifactory)设置

谢谢!

java maven-2 artifactory maven

20
推荐指数
2
解决办法
4万
查看次数

在java中评估字符串上的xpath并返回结果字符串的简单方法是什么

一个简单问题需要一个简单的答案.

例如:

String xml = "<car><manufacturer>toyota</manufacturer></car>";
String xpath = "/car/manufacturer";
assertEquals("toyota",evaluate(xml, xpath));
Run Code Online (Sandbox Code Playgroud)

如何以简单易读的方式编写evaluate方法,该方法适用于任何给定的格式良好的xml和xpath.

显然,有很多方法可以实现,但大多数人似乎非常冗长.

我缺少的任何简单方法/库可以实现这一目标吗?

对于返回多个节点的情况,我只想要字符串表示.

java xml xpath

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

比较两个列表以进行更新,删除和添加

简单的问题.

我有一个新列表和一个旧列表.在Java中是否有标准的方法/库,允许我比较这两个列表并确定哪些项目已更新/删除或是全新的?例如,我应该最终得到三个列表 - 已删除的项目(旧的但不是新的项目),更新的项目(两者中的项目),新项目(新项目(不是旧项目).

我自己可以写这个,但想知道是否有标准的方法来做到这一点.

列表中的对象实现正确等于.

java collections

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

使用Crossfilter,是否可以在分组时跟踪最大/最小值?

使用Crossfilter(https://github.com/square/crossfilter)时,我指定在添加和删除组中的数据时要使用的函数.跟踪运行平均值(使用CoffeeScript)非常简单:

reduceAdd = (p, v) ->
  ++p.count;
  p.sum += v.digit;
  p

reduceRemove = (p, v) ->
  --p.count;
  p.sum -= v.digit;
  p

reduceInitial = ->
  {
    count: 0
    sum: 0
    average: ->
      return 0 if this.count == 0
      return this.sum / this.count
  }
Run Code Online (Sandbox Code Playgroud)

是否可以跟踪每组的最大值和最小值?我无法弄清楚如何将所有元素保存在一个巨大的数组中并执行d3.min/d3.max.似乎添加/删除数据效率极低.

我还想方设法告诉Crossfilter从头开始完全重建组,而不是从现有组中删除项目.如果应用过滤器,则重置并重建该组.什么都不明显.

javascript crossfilter

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

是否总是使用get和set方法来访问类自己的成员字段?

在Java类中,使用getter和setter访问成员字段是不是很好或者不好?

比如哪个更好:

public Order {
    private Agreement agreement;

    public Agreement getAgreement() {
    return agreement;
    } 

    public void process() {
       //should I use:
       getAgreement().doSomething();
       //Or:
       agreement.doSomething();
    }
}
Run Code Online (Sandbox Code Playgroud)

一般来说,我认为直接访问该字段最好是由于KISS原则,并且有人可能会在以后使用不可预测的结果覆盖get方法.

然而,我的同事认为保留一层抽象更好.对此有何共识?

java anti-patterns

8
推荐指数
3
解决办法
2164
查看次数