search
HomeDatabaseMysql Tutorial5种方法访问GlassFish资源

方法1,通过管理控制台


 
  首先,先通过管理控制台来创建一个连接池mypool。在浏览器的输入管理控制台地址:localhost:4848。采用缺省的用户名“admin”及其密码“adminadmin”登录。成功登录后,在左边的树型菜单中,展开“资源”-“JDBC”-“连接池”。
在主面板中,点击“新建”。在面板“新建 JDBC 连接池(步骤 1,共 2 步)”中,输入“名称”为mypool,“资源类型”选为“javax.sql.DataSource”,“数据库供应商”选为“JavaDB”。在接下来的“新建 JDBC 连接池(步骤 2,共 2 步)”中,可以看到数据库连接池的各项缺省设置。将在“池设置”一栏中的“空闲超时”值由缺省的300改为777。 点击“完成”。至此,我们通过管理控制台完成了对数据库连接池mypook的创建,并修改了其空闲超时的值。

 
  方法2,通过命令行工具asadmin

接下来,我们通过命令行的asadmin来查看这一资源。
asadmin list server.resource*
运行结果如下:

 

undefined
undefined
  server.resource
  -
  ref
  .jdbc
  /
  __CallFlowPool server.resource
  -
  ref
  .jdbc
  /
  __TimerPool server.resource
  -
  ref
  .jdbc
  /
  __default server.resources server.resources.jdbc
  -
  connection
  -
  pool.DerbyPool server.resources.jdbc
  -
  connection
  -
  pool.__CallFlowPool server.resources.jdbc
  -
  connection
  -
  pool.__TimerPool server.resources.jdbc
  -
  connection
  -
  pool.mypool server.resources.jdbc
  -
  resource.jdbc
  /
  __CallFlowPool server.resources.jdbc
  -
  resource.jdbc
  /
  __TimerPool server.resources.jdbc
  -
  resource.jdbc
  /
  __default

这里列出的MBean是用GlassFish自己的DottedName来标识的。接着通过asadmin的子命令get来查看对象mypool的属性:
asadmin get server.resources.jdbc-connection-pool.mypool.*
或者进一步查看空闲超时(idle-timeout-in-seconds)的属性值。
asadmin get server.resources.jdbc-connection-pool.mypool.idle-timeout-in-seconds


结果如下:
server.resources.jdbc-connection-pool.mypool.idle-timeout-in-seconds = 777
至此,我们完成了使用命令行的管理工具asadmin对mypool的访问。这里asadmin通过GlassFish扩展的Dotted Name命名方式来访问MBean的。Dotted Name是GlassFish命令行工具asadmin定义的一套约定。在这套约定的支持下,asadmin的三个子命令(list、set和get )可以通过一个由“.”分隔的字串寻址到GlassFish中的MBean。


方法3,通过第三方工具JConsole


接下来,我们要通过JConsole来访问对象mypool。
在JConsole的登录面板中,选择远处进程:localhost:8686(8686是GlassFish缺省的管理端口),用户名同样为admin,密码adminadmin。登录进来后所看到的是关于GlassFish应用服务器运行时的信息,点击“MBean”。展开树型结构“com.sun.aperv” - “jdbc-connection-pool” - “my pool” - “config” - “属性”。
可以

看到我们所关心的连接池mypool的信息。属性idle-timeout-in-seconds的值为777。修改777为888。
在回到管理控制台或命令行工具asadmin同样可以看到刚才在JConsole所作的修改已经生效。
以上说明三种工具对GlassFish资源的修改是等效的。

接下来通过编程的方式来访问数据库连接池mypool。


方法4,通过标准的JMX编程方式


标准的JMX方式的代码如下:(以下为演示代码。为突出重点,未作异常处理。)


 

undefined
undefined
  import javax.management.
  *
  ; import javax.management.remote.
  *
  ;
  public
  
  class
   JMX_demo {
  public
   JMX_demo() throws Exception {
  //
  创建JMX 的URL
  
  JMXServiceURL url
  =
  
  new
   JMXServiceURL(
  "
  service:jmx:rmi:///jndi/rmi://localhost:8686/jmxrmi
  "
  ); java.util.Map env
  =
  
  new
   java.util.Hashtable();
  //
  缺省用户名和其口令
  
  String[] creds
  =
   {
  "
  admin
  "
  ,
  "
  adminadmin
  "
  }; env.put(JMXConnector.CREDENTIALS,creds);
  //
  建立连接
  
  JMXConnector connector
  =
   JMXConnectorFactory.connect(url,env); MBeanServerConnection mbsc
  =
   connector.getMBeanServerConnection();
  //
  要访问的MBean的Object Name
  
  ObjectName mbeanName
  =
  
  new
   ObjectName(
  "
  com.sun.appserv:type=jdbc-connection-pool,name=mypool,category=config
  "
  );
  //
  所要访问的属性idle-timeout-in-seconds
  
  System.
  out
  .println(
  "
  Using JMX, jdbc pool idle timeout:
  "
  +
   mbsc.getAttribute(mbeanName,
  "
  idle-timeout-in-seconds
  "
  )); }
  public
  
  static
  
  void
   main( final String[] args ) throws Exception{
  new
   JMX_demo(); } }
运行结果如下: Using JMX, jdbc pool idle timeout:888


 

undefined
undefined
  public
  
  class
   AMX_demo {
  public
   AMX_demo() throws Exception {
  //
  Domain Admin Server的机器名或IP地址
  
  final String host
  =
  
  "
  localhost
  "
  ;
  //
  JMX管理端口,缺省8686。
  
  final
  int
   port
  =
  8686
  ;
  //
  管理员名
  
  final String user
  =
  
  "
  admin
  "
  ;
  //
   管理员密码
  
  final String password
  =
  
  "
  adminadmin
  "
  ; TLSParams tlsParams
  =
  null
  ;
  //
  连接到JMX server
  
  AppserverConnectionSource conn
  =
  
  new
   AppserverConnectionSource( AppserverConnectionSource.PROTOCOL_RMI, host, port, user, password, tlsParams,
  null
  ); conn.getJMXConnector(
  true
   );
  //
  DomainRoot和JDBCConnectionPoolConfig就是所说的DCP组件 DomainRoot mDomainRoot = conn.getDomainRoot();
  //
  获取JDBCConnectionPool的列表
  
  Map pools
  =
   mDomainRoot.getDomainConfig().getJDBCConnectionPoolConfigMap(); JDBCConnectionPoolConfig mypool
  =
   (JDBCConnectionPoolConfig)pools.
  get
  (
  "
  mypool
  "
  ); System.
  out
  .println(
  "
  Using DCP, jdbc pool idle timeout:
  "
  +
  mypool.getIdleTimeoutInSeconds()); }
  public
  
  static
  
  void
   main( final String[] args ) throws Exception{
  new
   AMX_demo(); } }方法5,通过AMX编程方式

AMX方式的代码如下:


 

undefined
undefined
  import com.sun.appserv.management.DomainRoot; import com.sun.appserv.management.client.AppserverConnectionSource; import com.sun.appserv.management.client.TLSParams; import com.sun.appserv.management.util.misc.ExceptionUtil; import com.sun.appserv.management.config.
  *
  ; import java.ConnectException; import java.util.Map;

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Explain the InnoDB Buffer Pool and its importance for performance.Explain the InnoDB Buffer Pool and its importance for performance.Apr 19, 2025 am 12:24 AM

InnoDBBufferPool reduces disk I/O by caching data and indexing pages, improving database performance. Its working principle includes: 1. Data reading: Read data from BufferPool; 2. Data writing: After modifying the data, write to BufferPool and refresh it to disk regularly; 3. Cache management: Use the LRU algorithm to manage cache pages; 4. Reading mechanism: Load adjacent data pages in advance. By sizing the BufferPool and using multiple instances, database performance can be optimized.

MySQL vs. Other Programming Languages: A ComparisonMySQL vs. Other Programming Languages: A ComparisonApr 19, 2025 am 12:22 AM

Compared with other programming languages, MySQL is mainly used to store and manage data, while other languages ​​such as Python, Java, and C are used for logical processing and application development. MySQL is known for its high performance, scalability and cross-platform support, suitable for data management needs, while other languages ​​have advantages in their respective fields such as data analytics, enterprise applications, and system programming.

Learning MySQL: A Step-by-Step Guide for New UsersLearning MySQL: A Step-by-Step Guide for New UsersApr 19, 2025 am 12:19 AM

MySQL is worth learning because it is a powerful open source database management system suitable for data storage, management and analysis. 1) MySQL is a relational database that uses SQL to operate data and is suitable for structured data management. 2) The SQL language is the key to interacting with MySQL and supports CRUD operations. 3) The working principle of MySQL includes client/server architecture, storage engine and query optimizer. 4) Basic usage includes creating databases and tables, and advanced usage involves joining tables using JOIN. 5) Common errors include syntax errors and permission issues, and debugging skills include checking syntax and using EXPLAIN commands. 6) Performance optimization involves the use of indexes, optimization of SQL statements and regular maintenance of databases.

MySQL: Essential Skills for Beginners to MasterMySQL: Essential Skills for Beginners to MasterApr 18, 2025 am 12:24 AM

MySQL is suitable for beginners to learn database skills. 1. Install MySQL server and client tools. 2. Understand basic SQL queries, such as SELECT. 3. Master data operations: create tables, insert, update, and delete data. 4. Learn advanced skills: subquery and window functions. 5. Debugging and optimization: Check syntax, use indexes, avoid SELECT*, and use LIMIT.

MySQL: Structured Data and Relational DatabasesMySQL: Structured Data and Relational DatabasesApr 18, 2025 am 12:22 AM

MySQL efficiently manages structured data through table structure and SQL query, and implements inter-table relationships through foreign keys. 1. Define the data format and type when creating a table. 2. Use foreign keys to establish relationships between tables. 3. Improve performance through indexing and query optimization. 4. Regularly backup and monitor databases to ensure data security and performance optimization.

MySQL: Key Features and Capabilities ExplainedMySQL: Key Features and Capabilities ExplainedApr 18, 2025 am 12:17 AM

MySQL is an open source relational database management system that is widely used in Web development. Its key features include: 1. Supports multiple storage engines, such as InnoDB and MyISAM, suitable for different scenarios; 2. Provides master-slave replication functions to facilitate load balancing and data backup; 3. Improve query efficiency through query optimization and index use.

The Purpose of SQL: Interacting with MySQL DatabasesThe Purpose of SQL: Interacting with MySQL DatabasesApr 18, 2025 am 12:12 AM

SQL is used to interact with MySQL database to realize data addition, deletion, modification, inspection and database design. 1) SQL performs data operations through SELECT, INSERT, UPDATE, DELETE statements; 2) Use CREATE, ALTER, DROP statements for database design and management; 3) Complex queries and data analysis are implemented through SQL to improve business decision-making efficiency.

MySQL for Beginners: Getting Started with Database ManagementMySQL for Beginners: Getting Started with Database ManagementApr 18, 2025 am 12:10 AM

The basic operations of MySQL include creating databases, tables, and using SQL to perform CRUD operations on data. 1. Create a database: CREATEDATABASEmy_first_db; 2. Create a table: CREATETABLEbooks(idINTAUTO_INCREMENTPRIMARYKEY, titleVARCHAR(100)NOTNULL, authorVARCHAR(100)NOTNULL, published_yearINT); 3. Insert data: INSERTINTObooks(title, author, published_year)VA

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools