restful 的线程安全问题

原创 2012年03月29日 14:26:58
package com.ws.service.syn;


import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;


@Path("counter")
public class Counter {


public int counter = 0;
@GET
@Path("/count")
public String getCount(){
counter++;
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return String.valueOf(counter);
}
public int get(){
return counter;
}
public void set(int num){
this.counter = num;
}
@GET
@Path("/hello")
public String hello(){
return "xjiewenbo";
}
@GET
@Path("/{num}")
@Produces("text/plain")
public String getCounter(@PathParam("num")String num){
set(Integer.parseInt(num));

try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return String.valueOf(get());
}

}


public static void main(String[] args) throws IOException {
        URI ServerURI=UriBuilder.fromUri("http://localhost/").port(9999).build();
    startServer(ServerURI);
        System.out.println("服务已启动,请访问:"+ServerURI);
    }    

    protected static SelectorThread startServer(URI serverURI) throws IOException {
        final Map<String, String> initParams = new HashMap<String, String>();
        initParams.put("com.sun.jersey.config.property.packages","com.ws.service.syn");
        System.out.println("Grizzly 启动中...");
        SelectorThread threadSelector = GrizzlyWebContainerFactory.create(serverURI, initParams);     
        return threadSelector;
    }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

SpringMVC 在controller层中注入request(不会产生线程安全问题)

在Spring MVC中使用@Autowire注入HttpServletRequest不会产生线程安全问题

Stack 线程安全问题

  • 2010年07月20日 11:44
  • 1KB
  • 下载

mybatis 线程安全问题

使用 SqlSession 在 MyBatis 中,你可以使用 SqlSessionFactory 来创建 SqlSession。一旦你获得一个 session 之后,你可以使用它来执行映射语句,提...

unix_linux线程安全问题

  • 2013年07月18日 10:34
  • 327KB
  • 下载

关于Java OutputStream 线程安全问题

今天偶尔发现java的输出流的线程安全问题 先看代码吧 import java.io.File; import java.io.FileInputStream; import java.io.Fi...

SqlAlchmy Session的线程安全问题

代码码到一半,突然想到,Session是否是线程安全的?于是上官方文档,答案是否! 那问题来了,怎么破?因为它会牵涉到多线程情况下,调用rollback导致的不可预期影响。 官网给了两个方案: ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:restful 的线程安全问题
举报原因:
原因补充:

(最多只允许输入30个字)