- 浏览: 386951 次
- 性别:
- 来自: 印度
最新评论
-
天天来注册:
...
多线程的死锁 -
memoryisking:
可以看看这篇文章,这个是struts教程网上一个简单的例子,构 ...
Java5中的线程池实例讲解 -
a123159521:
菜鸟不再菜 写道楼主很明显没有说明守护线程到底是怎么服务Use ...
守护线程总结 -
jjruanlili:
要搞个executor和nio的结合,差不多
Java5中的线程池实例讲解 -
josico:
纠正楼主一个问题‘如果四个队员都在忙时,再有新的任务,这个小组 ...
线程池ThreadPoolExecutor使用简介
文章列表
堆大小设置
JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 200
堆大小设置
JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m ...
当程序中有多个线程存在的时候,线程和线程之间的关系并非是平等的。例如,总有一些线程是CPU消耗密集型的,也就说该线程所对应的任务是紧迫的,因此需提高这些线程的优先级来保证这些线程能够分得更多的时间片。这时 ...
package com.faramita.test.mianshi;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
本例介绍一个特殊的队列:BlockingQueue,如果BlockQueue是空的,从BlockingQueue取东西的操作将会被阻断进入等待状态, ...
如果程序对附加字符串的需求很频繁,不建议使用+来进行字符串的串联。可以考虑使用java.lang.StringBuilder类,使用这个类所产生的对象默认会有16个字符的长度,您也可以自行指定初始长度。如果附加的字符超出可容纳的长度,则StringBuilder对象会自动增加长度以容纳被附加的字符。如果有频繁作字符串附加的需求,使用StringBuilder类能使效率大大提高。如下代码:
public class AppendStringTest
{
public static void main(String[] args)
{
...
在目前的Java开发包中包含了对动态代理的支持,但是其实现只支持对接口的的实现。
其实现主要通过是java.lang.reflect.Proxy类和java.lang.reflect.InvocationHandler接口。
Proxy类主要用来获取动态代理对象,InvocationHandler接口用来约束调用者实现,如下,HelloWorld接口定义的业务方法,HelloWorldImpl是HelloWorld接口的实现,HelloWorldHandler是 InvocationHandler接口实现。代码如下:
业务接口:
pu ...
/**
* 双向循环链表测试
* @author coach
* @param <E>
*/
public class Node<E>
{
private E element; //结点数据
private Node<E> next; //上结点
private Node<E> previous; //下结点
private static int size=0; //链表长
//默认关结点next previous都是空,
...
package com.softeem.jbs.lesson4;
import java.util.Random;
/**
* 排序测试类
*
* 排序算法的分类如下:
* 1.插入排序(直接插入排序、折半插入排序、希尔排序);
* 2.交换排序(冒泡泡排序、快速排序);
* 3.选择排序(直接选择排序、堆排序);
* 4.归并排序;
* 5.基数排序。
*
* 关于排序方法的选择:
* (1)若n较小(如n≤50),可采用直接插入或直接选择排序。
* 当记录规模较小时,直接插入排序较好;否则因为直接选择移动的记录数少于直接插 ...
1, 给DAO的方法上加SpringAOP的Around通知,决定数据从数据库获得还是从缓存获得。
2,自定义两个Annotation,@Cache和@Flush,分别加在DAO的查询和修改的方法上。
3,Around通知函数内用反射获取上述的@cache和@Flush,代表是记录缓存,还是删除缓存。
4,记录缓存时用“类名+方法名+参数的hashcode”作为Key,删除缓存时,删除所有的同类名开头的key对应的缓存。
5,Memcached不支持遍历key,所以采用数据库表记录key,假设:tbl_memcached(key,exp_date)。
6,定义一个时钟,定期删除tbl_memca ...
一般查询实体的时候,都需要这么使用:
/** *//**
* 根据id查询
*
* @return
*/
public Emp queryEmpById(Integer id)
{
String sql = "select * from emp where empno = ?";
ParameterizedRowMapper<Emp> mapper = new ParameterizedRowMapper<Emp>()
{
...
JBoss Application Server的部署架构
JBoss 的部署架构可以分为三个部分:热部署机制、部署的通用流程、部署的过程。
热部署机制,使得我们在不需要重启JBoss的情况下,可以增加、修改和删除部署单元。JBoss会在运行时“察觉”到这些变化,并做出相应的处理。
部署的通用流程,是一个对不同类型的部署单元都适用的部署过程。JBoss支持多种部署单元,包括jar格式的EJB组件、war格式的Web组件、ear格式的企业应用组件、sar格式的服务组件、har格式的hibernate应用等等。不同类型组件的部署过程是不同,但从宏观的角度看,它们还有一个通用的流程。
部署的过程,就是 ...
Service Delete these files/directories
Mail service server/xxx/deploy/mail-service.xml
Monitoring service server/xxx/deploy/monitoring-service.xml
HTTP Invoker service server/all/deploy/httpha-invoker.sar
Home page s ...
如果在一台机器上部署了多个jboss server或者jboss默认端口已被其它应用使用,需要修改相关端口以避免端口冲突。
#vim server/all/deploy/jbossweb.sar/server.xml
<!-- A HTTP/1.1 Connector on port 8080 -->
<Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}"
connectionTi ...
Jboss 日志重定向到/opt/log,并只生成WARN级别日志
#vim /usr/local/jboss/server/all/conf/jboss-log4j.xml
<!-- A time/date based rolling appender -->
<appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
<errorHandler class="org.jboss.loggin ...
无法停止JBoss 报错Failed to connect to server localhost/127.0.0.1:1099
在使用JBoss的过程中,我们难免需要关闭JBoss服务器,但是经常碰到一个比较棘手的问题:./shutdown -S命令报错,如下:
[root@202 bin]# ./run.sh -b 192.168.50.202& //启动JBoss,在202这个IP上监听
root@202 bin]# ./shutdown.sh -S //关闭JBoss
Exception in thread "main" javax.naming.Commun ...
当我们配置好Jboss后,任何人都可以访问http://localhost:8080/jmx-console/,这也带来了很大的安全隐患,接下来配置认证
1、修改安装目录下的server/default/deploy/jmx-console.war/WEB-INF/jboss-web.xml
找到:
<jboss-web>
<!-- Uncomment the security-domain to enable security. You will
need to edit the htmladaptor login configuration to setu ...