小编wrs*_*der的帖子

设置/拆除CI构建的Oracle模式,而不会破坏目录

我希望有一个CI构建(例如,Hudson)设置并拆除Oracle 11g架构,作为一个相当普通的JSF/JPA应用程序的每晚构建/测试周期的一部分.

最明显的方法是删除并重新创建所有表.虽然这感觉相当标准(至少,这就是Hibernate/JPA工具会为您自动完成的),但我已经让Oracle DBA警告我,在重复的对象创建/删除周期后,Oracle目录将会碎片化.最终这会导致性能问题,因为SYSTEM表空间无法进行碎片整理/合并.

我的问题是:

  • 碎片是一个真正的问题,或者在典型的webapp开发环境中你不需要担心什么?
  • 如果碎片真的是一个问题,是否有更好的方法来拆除和重建Oracle中的模式而不是DROP TABLE/CREATE TABLE?

谢谢!

oracle continuous-integration hibernate jpa

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

有趣的Oracle分析查询挑战

我对Oracle分析功能非常熟悉,但这个让我很难过.如果有一个明显的解决方案,我会踢自己:)

我有一个表,JOURNAL,它在另一个表上记录插入,更新和删除.

它是日记的表是BOND_PAYMENTS,它代表PAYMENTS和BONDS之间的链接; 它存储从特定付款(由PAYMENT_ID标识)分配给特定债券(由BOND_NUMBER标识)的金额(AMOUNT).此外,它还记录了分配给(BOP_DOMAIN)的债券的哪个方面,可能是"BON","PET"或其他一些代码.BOND_PAYMENTS表具有代理键(BOP_ID).

因此,对于每个BOP_ID,我的日志表通常会有一个或多个记录 - 首先是INSert,后面可能是一些UPD,后面可能是一个DELete.

这是JOURNAL表:

CREATE TABLE JOURNAL
( JN_DATE_TIME  DATE         NOT NULL,
  JN_OPERATION  VARCHAR2(3)  NOT NULL,
  BOP_ID        NUMBER(9)    NOT NULL,
  PAYMENT_ID    NUMBER(9)    NOT NULL,
  BOND_NUMBER   VARCHAR2(20) NOT NULL,
  BOP_DOMAIN    VARCHAR2(10) NOT NULL,
  AMOUNT        NUMBER(14,2) NOT NULL
);
Run Code Online (Sandbox Code Playgroud)

以下是一些示例数据:

INSERT INTO JOURNAL VALUES (TO_DATE('01/01/2010','DD/MM/YYYY'),'INS',1242043,1003700,'9995/10','BON',1800);
INSERT INTO JOURNAL VALUES (TO_DATE('03/01/2010','DD/MM/YYYY'),'INS',1242046,1003700,'9998/10','BON',1700);
INSERT INTO JOURNAL VALUES (TO_DATE('04/01/2010','DD/MM/YYYY'),'INS',1242048,1003700,'9999/10','BON',1800);
INSERT INTO JOURNAL VALUES (TO_DATE('05/01/2010','DD/MM/YYYY'),'INS',1242052,1003700,'10003/10','BON',1600);
INSERT INTO JOURNAL VALUES (TO_DATE('08/01/2010','DD/MM/YYYY'),'INS',1242058,1003700,'9998/10','BON',100);
INSERT INTO JOURNAL VALUES (TO_DATE('09/01/2010','DD/MM/YYYY'),'UPD',1242058,1003700,'9998/10','PET',100);
INSERT INTO JOURNAL VALUES (TO_DATE('01/01/2010','DD/MM/YYYY'),'INS',2242043,1003701,'8995/10','BON',1800);
INSERT INTO JOURNAL …
Run Code Online (Sandbox Code Playgroud)

oracle analytic-functions oracle11gr2

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

@RequestScoped将CDI注入@MessageDriven bean

如果我有一个@MessageDriven使用JMS 注入EJB 的请求作用域CDI bean ,如下所示,我可以假设任何给定的Foo实例一次只能由一次onMessage调用使用吗?

换句话说,在下面的例子中,我可以安全地在Foo对象中使用成员变量来跨子例程存储状态,类似于JSF @RequestScoped托管bean吗?

请注意,如果同一个Foo对象从一个onMessage调用顺序循环到下一个调用,则可以,只要每个MessageDrivenBean实例都有自己的Foo实例,这样就可以隔离两个并发处理请求.

 @MessageDriven
 public class MessageDrivenBean implements MessageListener {
    @Inject 
    private Foo foo;

    public void onMessage(Message m) {
      foo.doSomething();
    }
 }

 @Named
 @RequestScoped
 public class Foo {
   private String property;
     public void doSomething() {
       property = ...;
     }
 }
Run Code Online (Sandbox Code Playgroud)

jms java-ee message-driven-bean cdi java-ee-6

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

Java定宽文件格式读/写库

我正在寻找一个很好的 Java 库,它可以轻松地允许读/写固定宽度的文件。需要维护遗留系统,即需要文件才能使用 COBOL。

任何建议都非常感谢!

谢谢。

java file fixed-length-record

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

IE9中的F12开发人员工具不适用于某些站点

我可以在IE9中启动F12开发人员工具,但对于某些网站,他们什么都不做.窗口打开但在HTML选项卡中显示"正在加载..."一词,并且没有任何控件有效.

知道什么可能是错的吗?

更新我使用Chrome检查了网络标签,但没有看到任何挂起请求.此外,页面本身在IE中是响应的.

internet-explorer-9

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

使用Spring MVC保留<form:input type ="file">的值

我有一个带有两个输入的表单:一个字符串,一个文件.

<form:form ...>
  <form:input type="text" ....>
  <form:input type="file" ....>
</form:form>
Run Code Online (Sandbox Code Playgroud)

如果字符串输入的验证失败,则控制器将路由回同一视图.发生这种情况时,将保留字符串字段,但选定的文件将丢失.

有没有办法保留重新呈现视图时选择的文件?

认为答案是否定的 - 它是HTML文件输入的固有内容,而不是服务器端框架.询问是否有我遗漏的东西.

html spring file-upload spring-mvc

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

SAML and back-end REST service authentication

I have an application workflow like this

(A) User-Agent (browser) <-----> (B) App Server <------> (C) REST service

Suppose the app server (B) is a SAML service provider and user@domain authenticates from the browser (A) to the app server (B) using the Web Browser SSO profile.

How can an application running on (B) authenticate to a REST service (C) as user@domain.com? (Assuming B and C are both SAML SP's on the same IdP.)

If the browser were just making …

rest saml

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

Sonar - 先决条件与长条件块的保护子句

Sonar 中是否有一项检查可以确定何时可以使用保护子句检查先决条件,而不是将方法的整个主体包装在块中if

换句话说,我希望 Sonar 帮助我找到机会重构这样的东西

 void method(args) {
   if (precondition(args)) {
     // do rest of method
   }
   // no other code after conditional
 }
Run Code Online (Sandbox Code Playgroud)

进入这个:

void method(args) {
    if (!precondition(args)) {
      return;
    }
    // do rest of method;
 }
Run Code Online (Sandbox Code Playgroud)

这提高了可读性并减少了方法体内条件语句的嵌套深度。

声纳中的什么规则对此有帮助?

循环复杂度听起来像是错误的度量,因为早期返回使方法得分变得更复杂,而条件的数量是相同的。我正在寻找像平均嵌套深度这样的指标。

sonarqube

6
推荐指数
0
解决办法
281
查看次数

React.js - ForEach作为一流的组件?

我听说过react-templates,但我仍然想知道有可能制作出一流的ForEach组件.

我的最终目标是让这样的东西更具可读性:

<ul>
  {list.map(function(item, i) {
     return <li>{item}</li>;
   })}
 </ul>

 // instead?
 <ul>
  <ForEach items="{list}">
     <li>{item}</li>
  </ForEach>
 </ul>
Run Code Online (Sandbox Code Playgroud)

这是我通过传递道具的第一次认真尝试:

var ForEach = React.createClass({
   render: function(){
      return (
      <ul>
        {this.props.items.map(function(item, i) {
          return React.Children.map(this.props.children, function(child) {
            return React.addons.cloneWithProps(child, {item: item})
         })
        }.bind(this))}
      </ul>
    );
  }
});

var Element = React.createClass({
  render: function(){
    return (
    <li>{this.props.children}</li>
    );
  }
});

// usage within some other React.createClass render:
<ForEach items={['foo', 'bar', 'baz']}>
  <Element>{this.props.item}</Element>
</ForEach>
Run Code Online (Sandbox Code Playgroud)

我遇到的挑战是this指向的.通过使用调试器单步执行,我可以看到我正在使用this.props.itemset 创建克隆元素,但是因为{this.props.item}在其他封闭组件的render方法的上下文中进行评估, …

reactjs react-jsx

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

CloudFormation模板设置S3存储桶默认加密

S3现在支持在单个对象PUT请求不包含特定加密头时默认应用加密.

如何在CloudFormation模板中将其设置为存储桶创建的一部分?我已经找到了API调用,但如果它可以作为CloudFormation中的属性提供而不是单独的步骤,那将会很棒.

到目前为止,我看到的唯一选择是

  • 在存储桶创建后进行单独的API /客户端调用
  • 使用旧方式的存储桶策略来拒绝未加密的请求,这些请求可以通过CloudFormation S3::BucketPolicy资源提供

amazon-s3 amazon-web-services aws-cloudformation

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