问题列表 - 第38382页

如何使用groovy的XML Slurper更新XML?

我阅读了Groovy Codehaus关于使用XmlSlurper更新XML的文章,这引出了以下问题.考虑我们有一个输入XML结构为即将到来的:

<customer>
  <address>
    <street />
    <city />
    <postalcode />
  </address>
</customer>
Run Code Online (Sandbox Code Playgroud)

是否可以在不知道其具体结构的情况下更改XML?具体:我们有一个address节点的参考,想要在不知道任何细节的情况下将它乘以3次?

address.multiply(3)
Run Code Online (Sandbox Code Playgroud)

输出应如下所示:

<customer>
  <address>
    <street />
    <city />
    <postalcode />
  </address>
  <address>
    <street />
    <city />
    <postalcode />
  </address>
  <address>
    <street />
    <city />
    <postalcode />
  </address>
</customer>
Run Code Online (Sandbox Code Playgroud)

这可能是可能的,appendNode但我缺少groovy中节点的克隆方法.有没有解决方案来实现这一目标?

xml groovy

4
推荐指数
1
解决办法
7582
查看次数

扫描太多类和方法缓存的方面填充内存

在我们的应用程序中,我们有几个(实际上很多,大约30个)Web服务.每个Web服务都驻留在自己的WAR文件中,并且具有自己的Spring上下文,该上下文在应用程序启动时初始化.

我们还有许多应用于Web服务类的注释驱动的方面类.在开始时,poincut表达式看起来像这样:

@Pointcut("execution(public * my.package.service.business.*BusinessServiceImpl.*(..))")
  public void methodsToBeLogged() {
  }
Run Code Online (Sandbox Code Playgroud)

并且通过配置输入启用了AOP服务.

但是当网络服务的数量增加时,我们开始OutOfMemoryException在服务器上体验s.在进行一些分析和分析之后,看起来内存是由AspectJExpressionPointcut类的实例保存的缓存占用的.

每个实例的缓存大约是5 MB.由于我们有3个方面和30个服务,因此共有90个实例共存储了450MB的数据.

在检查了缓存的内容后,我们意识到它包含了WAR中存在的所有类的Java反射方法实例,即使是那些不属于my.package.service.business包的类.修改了切点表达式后还有附加within条款:

@Pointcut("execution(public * my.package.service.business.*BusinessServiceImpl.*(..)) && 
within(my.package.service.business..*)")
  public void methodsToBeLogged() {
  }
Run Code Online (Sandbox Code Playgroud)

内存使用量再次降至正常水平.并且所有AspectJExpressionPointcut实例总共花费不到1MB.

有人可以解释为什么会这样吗?为什么第一点切割表达还不够?为什么AspectJExpressionPointcut不共享缓存?

aop expression aspectj spring-aop pointcut

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

T-SQL是更新限制Atomic的子查询吗?

我在MS Sql Server 2008 R2中有一个简单的队列实现.这是队列的本质:

CREATE TABLE ToBeProcessed 
(
    Id BIGINT IDENTITY(1,1) PRIMARY KEY NOT NULL,
    [Priority] INT DEFAULT(100) NOT NULL,
    IsBeingProcessed BIT default (0) NOT NULL,
    SomeData nvarchar(MAX) NOT null
)
Run Code Online (Sandbox Code Playgroud)

我想原子地选择按优先级排序的前n行和IsBeingProcessed为false的id,并更新这些行以表示它们正在被处理.我以为我会使用Update,Top,Output和Order By的组合,但不幸的是你不能在Update语句中使用top和order by.

所以我创建了一个in子句来限制更新,并且子查询按顺序执行(见下文).我的问题是,这整个语句是原子的,还是我需要将它包装在一个事务中?

DECLARE @numberToProcess INT = 2

CREATE TABLE #IdsToProcess
(
    Id BIGINT NOT null
)

UPDATE 
    ToBeProcessed
SET
    ToBeProcessed.IsBeingProcessed = 1
OUTPUT 
    INSERTED.Id 
INTO
    #IdsToProcess   
WHERE
    ToBeProcessed.Id IN 
    (
        SELECT TOP(@numberToProcess) 
            ToBeProcessed.Id 
        FROM 
            ToBeProcessed 
        WHERE
            ToBeProcessed.IsBeingProcessed = 0
        ORDER BY 
            ToBeProcessed.Id, 
            ToBeProcessed.Priority DESC)

SELECT 
    * …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server sql-server-2008-r2

7
推荐指数
1
解决办法
3006
查看次数

仅从DateTime对象获取日期或时间

我有一个DateTime具有日期和时间的实例.如何仅提取日期或仅提取时间?

.net c# datetime

73
推荐指数
5
解决办法
10万
查看次数

从python中的配置文件中读取数组

我有个问题.我的程序使用配置文件来设置选项,其中一个选项是元组.这就是我的意思:

[common]
logfile=log.txt
db_host=localhost
db_user=root
db_pass=password
folder[1]=/home/scorpil
folder[2]=/media/sda5/
folder[3]=/media/sdb5/
Run Code Online (Sandbox Code Playgroud)

etc ...我可以使用Python中的ConfigParser模块将其解析为元组吗?有一些简单的方法来做到这一点?

python tuples configuration-files

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

如何使用uBLAS转置矩阵?

我是C++ Boost uBLAS库的新手,所以我有一个noob问题 - 如何使用这个库转置矩阵?我在这里找不到问题:

http://www.boost.org/doc/libs/1_44_0/libs/numeric/ublas/doc/html/index.html

c++ boost transpose matrix ublas

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

为什么我得到"建议尚未应用"的警告?

为什么以下代码:

 pointcut callsToList() : call(* List.*(..));

 before(List l) : callsToList() && target(l) {
  System.out.println("cool");
 }
Run Code Online (Sandbox Code Playgroud)

生成以下警告:

在org.eclipse.ajdt.examples.ListAdvice中定义的建议尚未应用[Xlint:adviceDidNotMatch]

我在Eclipse中工作.我安装了eclipse aspectj插件,当然我的项目是一个aspectj项目.

编辑:此外,我从ajdt插件提供的一个工作示例开始:

pointcut callsToBeginTask() : call(void IProgressMonitor.beginTask(..)); 
before() : callsToBeginTask() {
     System.out.println("cool");
};
Run Code Online (Sandbox Code Playgroud)

除了这个例子在没有警告的情况下工作的事实,我看不出任何区别......

java aop aspectj ajdt

6
推荐指数
1
解决办法
5203
查看次数

Hibernate标准api'选择'

是否可以使用hibernate critiria api创建"select in"查询?

示例:我在1:n关系,公司和部门中有两个表

select * from company c where c.id in (select company_id from department d 
where d.departmentname = 'HR' and d.location = 'xyz')
Run Code Online (Sandbox Code Playgroud)

hibernate subquery hibernate-criteria

7
推荐指数
1
解决办法
7254
查看次数

如何手动启动Visual Studio转换向导

我想将当前在.NET Framework 3.5 SP 1中的.NET网站转换为4.0.现在,当您在VS 2010中打开VS 2008解决方案时,您将获得转换向导.该向导将解决方案转换为2010,同时可以将项目转换为.NET 4.0.我已经将我的解决方案转换为VS 2010,但当时没有转换为.NET 4.0.有谁知道如何手动启动VS转换向导?根据这篇文章,它应该在你打开解决方案时开始,但对我来说并非如此.

谢谢你的帮助!

visual-studio-2010 conversion-wizard

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

枚举类型:限制项目数量?

Delphi中对枚举类型中的项目数有限制吗?我需要创建一个可能有几百个项目的枚举类型,并且要确保例如255个项目没有限制.

type 
  TMyType = (mtOne, mtTwo, mtThree, ..., mtThreeHundred);
Run Code Online (Sandbox Code Playgroud)

delphi

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