GlassFish4安装部署

来源:互联网 发布:linux ed2k下载工具 编辑:程序博客网 时间:2024/05/31 13:15
准备工作
http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html  下载Javase(JDK)并安装


1.下载
http://www.oracle.com/technetwork/cn/java/javaee/downloads/index.html(oracle官方ZIP版)
https://glassfish.java.net  (社区ZIP版)

http://www.oracle.com/technetwork/java/javaee/downloads/java-ee-7-sdk-with-jdk-u45-2066865.html 

(安装包版本-它不用安装javaseJDK)



2.安装
解压下载的Glassfish(.zip包)即可,如解压在d:\盘根目录下。


3.启动

D:\glassfish4\glassfish\bin\startserv.bat  双击startserv.bat文件会自动启动glassfish服务(stopserv.bat是停用服务)







4.配置

①http://localhost:8080  这个地址是http端也就是主页


②http://localhost:4848  这个地址是后台配置端,默认没有密码,直接登录


③如果端口被占用,可以在(D:\glassfish4\glassfish\domains\domain1\config\domain.xml)路径下用记事本打开domain.xml文件修改端口,修改后需重启服务才生效



④修改admin密码



⑤开启远程后台访问




5.部署

①热部署:将NetBeans打包好的.war包,复制到(D:\glassfish4\glassfish\domains\domain1\autodeploy)目录下即可,Glassfish会自动部署


②web部署:http://localhost:4848在这里面部署(区分war包部署与文件夹部署)





6.连接池设置

①将JDBC驱动复制到安装目录下(如:D:\glassfish4\glassfish\lib),复制完后,要重启一下glassfish服务才生效


②创建JDBC连接池






③创建JDBC资源




④在web项目中使用连接池

(1)创建连接池类

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;

public class Pool {
    
private static DataSource ds = null;

static//在静态代码块中创建数据库连接池
{
    try
    {
        Context initCtx = new InitialContext();//JNDI初始上下文
        ds = (DataSource) initCtx.lookup("sjk_pool");//检索st指定的对象,并返回绑定到st的对象DataSource获取连接
    }
    catch (Exception e) 
    {
        throw new ExceptionInInitializerError(e);
    }
}    
    
public static Connection getConnection() throws SQLException
{
    return ds.getConnection();//从数据源中获取数据库连接
}

public static void release(Connection ct,PreparedStatement ps,ResultSet rs)//释放资源
{
    try 
    {
       if(rs!=null)
       {    
          rs.close();
       }
       if(ps!=null)
       {    
          ps.close();
       }
       if(ct!=null)
       {    
          ct.close();
       }
    } 
    catch (SQLException ex)
    {
        ex.printStackTrace();
    }
}


(2)在其他类使用

Connection ct;

PreparedStatement ps;
ResultSet rs;

try{

ct = Pool.getConnection();

ps = ct.prepareStatement("select name from users where Code=? and Password=? ");

ps.setString(1,username);
ps.setString(2,password);

rs = ps.executeQuery();

..........

.........

}

 catch(SQLException ex){
     ex.printStackTrace();
 }

finally{
   Pool.release(ct,ps,rs);
}




2 0
原创粉丝点击