当前位置: 首页 > 知识库问答 >
问题:

glassfish不会与数据库一起部署

卞俊贤
2023-03-14

应该连接到easyphp服务器上的phpmyadmin数据库,在users数据库上插入一条记录,所有这一切都通过glassfish服务器通过web服务进行,但这并没有发生

netbeans表示,glassfish之所以能够运行,是因为它只有一个停止、删除或重新启动服务器的选项,但“start”选项是灰色的

package Java;

import javax.jws.WebService;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.DriverManager;
/**
 *
 * @author Laplet Repair
 */
@WebService(serviceName = "AddUser")

public class AddUser {
    private Statement statement = null;
    private PreparedStatement preparedStatement = null;
    private ResultSet resultSet = null;
    private Connection connect = null;

     public void readDataBase() throws Exception {
    try {
      // This will load the MySQL driver, each DB has its own driver
      Class.forName("com.mysql.jdbc.Driver");
      // Setup the connection with the DB
      connect = DriverManager
          .getConnection("jdbc:mysql://localhost:3306/conquest_of_the_fates_user?zeroDateTimeBehavior=convertToNull"
              + "user=root&password=");

      // Statements allow to issue SQL queries to the database
      statement = connect.createStatement();

      // PreparedStatements can use variables and are more efficient
      preparedStatement = connect
          .prepareStatement("insert into  feedback.comments values (default, ?, ?, ?)");
      // "myuser, webpage, datum, summery, COMMENTS from feedback.comments");
      // Parameters start with 1
      preparedStatement.setString(1, "username");
      preparedStatement.setInt(2, 5);
      preparedStatement.setString(3, "password");
      preparedStatement.executeUpdate();

      resultSet = statement
      .executeQuery("select * from feedback.comments");      
    } catch (Exception e) {
      throw e;
    } finally {
      close();
    }

  }

  // You need to close the resultSet
  private void close() {
    try {
      if (resultSet != null) {
        resultSet.close();
      }

      if (statement != null) {
        statement.close();
      }

      if (connect != null) {
        connect.close();
      }
    } catch (Exception e) {

    }
  }
}

这是错误日志

java.lang.RuntimeException:java.io.ioException在com.sun.enterprise.v3.admin.admin.adminadapter.onmissingResource(adminadapter.java:266)在org.glassfish.grizzly.http.server.statichttpphandlerbase.service(statichttpphandlerbase.java:189)在com.sun.enterprise.v3.services.impl.containermapper在com.sun.enterprise.v3.services.impl.containermapper执行(defaultFilterChain.execute(defaultFilterChain.java:133)位于org.glassFish.grizzly.filterChain.defaultFilterChain.process(defaultFilterChain.java:112)位于org.glassFish.grizzly.processorrexecutor.execute(processorrexecutor.77)位于org.glassFish.grizzly.nio.transport.tcpniotransport.fireioevent(tcpniotransport.561)位于

共有1个答案

高溪叠
2023-03-14

您应该在glassfish管理控制台上为您的MySQL数据库配置“JDBC资源”+“JDBC连接池”如何在glassfish中设置JDBC连接

您可能需要在:glassfish-install-path\domains\domain-name\lib中部署一个MySQL jdbc实现库

并创建一个EJB单例来检索连接:

@Singleton
@LocalBean
public class DBConnections {

    @Resource(lookup = "resource JNDI name")
    private DataSource dataSource;

    public Connection getConnection() throws SQLException {
        return dataSource.getConnection();
    }
}
 类似资料:
  • 我目前正在使用BPMN和Activiti创建一些业务流程。对于该业务流程中的一个步骤,我需要查询数据库并在后续步骤中使用该结果。因此,我正在寻找可能的解决方法,将SQL操作功能集成到Activiti中。那么,有谁能建议我,是否有任何方法可以为activiti嵌入sql查询功能?对于使用Activiti引擎为BPMN进程提供外部数据库交互的任何建议,我们深表感谢。 如果这样的解决方案不存在,那么关于

  • 更新:Oook,首先,非常感谢。我不知道用户是postgres中的保留关键字。我把名字改成了CustomUser,但现在问题是另外一个了,应用程序可以工作,但我注意到它创建了一个名为custom_user的相同的CustomUser表,因为它没有使用现有的表? 我刚开始使用Springboot,我不明白我错在哪里。这是我的模型: 希望在您的帮助下,非常感谢大家。

  • 我正在处理一个Flask项目,我正在使用Flask SQLAlchemy。 我需要处理多个已经存在的数据库。 我创建了“app”对象和SQLAlchemy对象: 在配置中,我设置了默认连接和附加绑定: 然后,我使用声明性系统创建了表模型,并在需要时设置参数以指示表位于哪个数据库中。 例如: 通过这种方式,当我在正确的数据库上进行查询时,一切都正常工作。 阅读SQLAlchemy文档和Flask S

  • 我有MSSQL服务器的评估副本,安装了数据库AdventureWorks2016,并在localhost:4848上运行Glassfish。TCP/IP连接允许在SQL服务器(配置管理器)和TCP端口是1433。我已经从Microsoft JDBC驱动程序下载了SQL服务器的Microsoft JDBC驱动程序7.0,并在C:\中解压缩它,并设置了一个CLASSPATH变量来指向它,并将其副本放在

  • 本文向大家介绍postgresql 数据库 与TimescaleDB 时序库 join 在一起,包括了postgresql 数据库 与TimescaleDB 时序库 join 在一起的使用技巧和注意事项,需要的朋友参考一下 之前在CSDN阅读资料时,发现有人问怎么把 postgresql数据库 的表 跟TimescaleDB 时序库的表 join在一起,正好我在查询数据的时候遇到过这个问题 ,我说

  • 我是一个初学者,我写了这个代码,但它似乎不起作用。我运行代码,框架不出现idk为什么。 我还有一个主要方法: (班级名称是匈牙利语不看)