JBoss架构是由JMX MBean服务器、微内核组成的。
JBoss有三种服务器配置:
1)Minimal:最小配置,仅仅包括日志,JNDI服务和URL部署扫描器,你可能会在一个不需要J2EE的应用中使用这种配置,或者以该配置为基础自定义配置。
2)Default:缺省配置,包括除了RMI/IIOP和集群的所有J2EE服务。
3)All:这种配置包括所有的JBoss服务。
JBoss的启动、关闭、配置:
启动:
在%JBOSS_HOME%\bin下,运行 run.bat [-c default|minimal|all],默认使用default.
在启动之后,log窗口可以看到
10:07:16,515 INFO [Server] Server Home Dir: D:\DEV_ENV\jboss\jboss422\server\mi
nimal
关闭:
在%JBOSS_HOME%\bin下,运行 shutdown -S或者shutdown --server=url
虚拟目录:
配置文件在:%JBOSS_HOME%/server/default/deploy/jbossweb-tomcat50.sar/server.xml
找到Host元素,在这个元素中的最下面加上:
<Context path="/tempdir" docBase="D:\meizz" crossContext="true" />
修改端口:
在%JBOSS_HOME%\server\default\deploy\jboss-web.deployer下,修改server.xml文件,跟tomcat的server.xml配置文件一致。
JBoss的部署、管理:
热部署:
热部署web应用在%JBOSS_HOME%\server\default\deploy\目录下,
web应用目录名需要加上.war后缀,例如“jsp-examples.war”;或者是直接的war文件。
卸载web应用只要直接删除即可。
MBean的部署:
%JBOSS_HOME%/server/default/conf/jboss-service.xml可以配置MBean。
在%JBOSS_HOME%\server\default\deploy\目录下也可以热部署MBean,例如默认的mail-service.xml。用户可以通过XML描述符文件(*-service.xml)或JBoss服务文档(SAR)给出服务。
数据源的配置:
将*-das.xml文件放到deploy目录(%JBOSS_HOME%\server\default\deploy\)下,例如默认的hsqldb-ds.xml。
在%JBOSS_HOME%\docs\examples\jca中可以查找到示例文件。
以下是oracle的数据源配置示例:
< datasources >
< local-tx-datasource >
< jndi-name >jdbc/TestDataSource< /jndi-name >
< connection-url >jdbc:oracle:thin:@192.168.1.2:1521:test< /connection-url >
< !--< connection-url >jdbc:oracle:oci:@youroracle-tns-name< /connection-url >-- >
< driver-class >oracle.jdbc.driver.OracleDriver< /driver-class >
< user-name >test< /user-name >
< password >test< /password >
< !-- Uses the pingDatabase method to check a connection is still valid before handing it out from the pool -- >
< valid-connection-checker-class-name >org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker< /valid-connection-checker-class-name >
< !-- Checks the Oracle error codes and messages for fatal errors -- >
< exception-sorter-class-name >org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter< /exception-sorter-class-name >
< !-- sql to call when connection is created
< new-connection-sql >some arbitrary sql< /new-connection-sql >
-- >
< min-pool-size >5< /min-pool-size >< !—最小连接池数目-- >
< max-pool-size >800< /max-pool-size >< !—最大连接池数目-- >
< idle-timeout-minutes >5< /idle-timeout-minutes >< !—数据库连接空闲时间,单位为分钟,如果负载较大,可以设为5,如果一般,可以设为3-- >
< !—在从连接池里获得一个连接之前先通过执行一个简单的SQL来校验connection的有效性-- >
< check-valid-connection-sql >select 1 from dual< /check-valid-connection-sql >
< /local-tx-datasource >
< /datasources >
在代码中可通过JNDI来从连接池中获取连接。
……
Context ctx = new javax.naming.InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:jdbc/TestDataSource ");
Connection con = ds.getConnection();