小编nee*_*esh的帖子

基于web的subversion查看器

是否有一个工具允许我指向一个subversion存储库来浏览存储库的内容.我在想类似于trac为SCM提供的东西.我为那些不熟悉trac源代码集成的人描述了一些功能:

  • 从浏览器访问它 - 它必须是一个webapp
  • 能够查看任何版本的文件.优选地,可以使用URL来调用该特征.这意味着可以链接到文件的特定版本.
  • 在单个页面上显示变更集中的所有已修改文件(肉汁:显示已修改文件的差异)
  • 能够以两种版本的文件显示(以彩色编码方式)差异,并能够使用URL调用它.
  • 存储库的更改时间线,其中包含每个更改集的已修改文件.
  • 如果它是开源的,那就太好了,但不一定如此.

基于web的基于Web的存储库查看器还应具备哪些其他功能?

svn trac

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

getResourceAsStream没有在webapp中加载资源

我有一个Web应用程序,它使用驻留在TOMCAT_HOME/common/lib中的库.此库在类路径的根(在名为ApplicationConfig的类中)中查找属性文件:

ApplicationConfig.class.getResourceAsStream("/hv-application.properties");
Run Code Online (Sandbox Code Playgroud)

我的Tomcat Web应用程序包含此属性文件.它在WEB-INF/classes中,它是classpath的根本吗?但是,在运行时,当它尝试加载属性文件时,它会抛出异常,因为它无法找到它(getResourceAsStream返回null).

如果我的应用程序是一个简单的独立Java应用程序,那么一切正常.Tomcat会导致getResourceAsStream方法采取不同的行为吗?我知道那里有很多类似的问题,但不幸的是他们都没有帮助过.谢谢.

java tomcat java-ee

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

InheritableThreadLocal和线程池

我有一个问题,我真的不认为有解决方案,但无论如何我会在这里尝试.我的应用程序使用线程池,并且此池中的某些线程具有可继承的线程局部变量.我已经扩展了ThreadPoolExecutor类,以便在线程完成执行时基本清除线程局部变量(在afterExecute回调方法中).

我知道当你有一个InheritableThreadLocal变量时,在初始化线程时调用childValue()方法以从父线程获取ThreadLocal变量的值.但是,在我的情况下,下次使用该线程时(在使用一次之后),InheritableThreadLocal变量的值为null(因为它之前已在afterExecute中清除).有没有办法在beforeExecute中访问父线程的线程局部变量,这样我就可以基本上模拟在创建线程时InheritableThreadLocal中的childValue方法.

java multithreading threadpool

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

java泛型和addAll方法

Java集合中addAll(..)方法的正确参数类型是什么?如果我做这样的事情:

List<? extends Map<String, Object[]>> currentList = new ArrayList<Map<String, Object[]>>();
Collection<HashMap<String, Object[]>> addAll = new ArrayList<HashMap<String, Object[]>>();
// add some hashmaps to the list..
currentList.addAll(addAll); 
Run Code Online (Sandbox Code Playgroud)

我知道我需要初始化这两个变量.但是,我得到一个编译错误(来自eclipse):

Multiple markers at this line
    - The method addAll(Collection<? extends capture#1-of ? extends Map<String,Object[]>>) in the type List<capture#1-of ? extends Map<String,Object[]>> is not applicable for the arguments (List<capture#2-of ? extends 
     Map<String,Object[]>>)
    - The method addAll(Collection<? extends capture#1-of ? extends Map<String,Object[]>>) in the type List<capture#1-of ? extends Map<String,Object[]>> is not applicable for the arguments 
     (Collection<HashMap<String,Object[]>>) …
Run Code Online (Sandbox Code Playgroud)

java generics collections

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

oracle中的内连接

我在考虑Oracle SQL实现中内连接的语法,这里似乎有些不一致:

假设您有两个关系贷款(loan_number,branch_name,金额)和借款人(customer_name,loan_number).loan_number是两个表共有的属性.现在,Oracle为您提供了两种表达内部联接的方法:

select * 
from loan, borrower 
where loan.loan_number = borrower.loan_number;
Run Code Online (Sandbox Code Playgroud)

以上陈述相当于:

select * 
from loan 
     inner join borrower 
     on loan.loan_number = borrower.loan_number;
Run Code Online (Sandbox Code Playgroud)

但是,在表达交叉连接时,只有一种方式来表达它:

select * 
from loan, borrower;
Run Code Online (Sandbox Code Playgroud)

以下语句在语法上是不正确的:

select * 
from loan 
     inner join borrower; 
Run Code Online (Sandbox Code Playgroud)

这是无效的; Oracle期望该条款的ON ...部分

鉴于内连接只是具有过滤条件的交叉连接,您是否认为这是Oracle SQL实现中的不一致?我错过了什么吗?我有兴趣听取其他一些意见.谢谢.

正如大卫在他的回答中指出的那样,语法是:

select * 
from loan cross join borrower;
Run Code Online (Sandbox Code Playgroud)

即使我不知道上面的语法,我仍然认为它是不一致的.除了允许内部连接而没有连接条件之外,使用交叉连接关键字也没关系.交叉连接实际上是没有连接条件的内连接,为什么不将它表示为没有连接条件的内连接?

sql database oracle join inner-join

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

使用spring WebServiceTemplate和Jaxb2Marshaller时的线程安全性

我正在以编程方式将Spring WebServiceTemplate用作Web服务客户端,即不实例化弹簧容器.我正在使用Jaxb2Marshaller进行编组/解组.在我的应用程序中,我创建了一个SaajSoapMessageFactory实例和一个Jaxb2Marshaller实例.我还创建了WebServiceTemplate的单个实例,并分配了先前创建的SaajSoapMessageFactory和Jaxb2Marshaller实例.

我创建的WebServiceTemplate以多线程方式使用,即多个线程可以同时调用marshalSendAndReceive.我的问题是 - 我的配置线程安全吗?我担心Jaxb2Marshaller.javadoc说Jaxb2Marshallers不一定是线程安全的.如何在不重新初始化Jaxb上下文的情况下以线程安全的方式使用Jaxb2Marshaller?

暂且不说:在spring参考中看一下spring-ws配置示例让我相信Jaxb2Marshaller是线程安全的,但Javadoc似乎与此相矛盾.

java spring spring-ws jaxb jaxb2

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

从函数获取返回ref光标到记录

我在一个包中有一个函数,它将REF CURSOR返回给RECORD.我试图从代码块调用此函数.调用代码如下所示:

declare      
   a_record package_name.record_name; 
   cursor c_symbols is select package_name.function_name('argument') from dual;

begin 
   open c_symbols;   
   loop            
        fetch c_symbols into a_record;
        exit when c_symbols%notfound;              
   end loop;
   close c_symbols; 
end;
Run Code Online (Sandbox Code Playgroud)

作为package_name的一部分的函数声明如下所示:

TYPE record_name IS RECORD(
      field_a       varchar2(20);
);

TYPE record_cursor IS REF CURSOR RETURN record_name;

FUNCTION getsymbols(argument IN varchar2) return record_cursor;
Run Code Online (Sandbox Code Playgroud)

当我尝试运行调用代码块时,我得到异常:PLS-00386:在FETCH游标和INTO变量之间的'EXAMPLE_SYMBOLS'处找到类型不匹配.

a_record的类型应该是什么以及如何访问我正在获取的记录的各个元素(类型为record_name)?

sql oracle plsql oracle10g

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

如何从TOAD for Oracle执行函数并将结果绑定到数据网格

我有一个函数,它的一个参数是pl/sql对象的VARRAY.如何执行此存储过程并将其返回的结果集绑定到TOAD for Oracle中的数据网格?

oracle toad plsql

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

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