Struts配置连接池错误解决问题及实例【配置连接池错误解决问题】

CRaxsRat v7.6 安装与使用教程(附工具下载) 摘要:本文介绍远程管理工具CRaxsRat v7.6的合法应用与基本操作,强调仅限授权环境使用。该工具支持多客户端管理、TLS加密及文件/进程控制等功能,适用于内网维护与安全测试。安装需Windows 10/11系统及.NET 4.8,步骤包括解压运行、配置监听端口及生成客户端。文中提醒防火墙设置与杀软误报问题,并重申禁止非法用途,建议在虚拟机或隔离环境学习使用。 阅读详情
Struts配置连接池错误解决问题及实例2006-12-04 10:55Struts配置连接池错误解决问题

1、Cannot create JDBC driver of class '' for connect URL ''


问题:找不到jdbc驱动,但是提示信息里的class值为null,所以,可以断定Tomcat没有找到Server.xml里的Resource配置信息。可能的原因包括:(1)没有配置Resource;(2)Resource配置信息放置的位置错误。(3)一个不容易发现的错误,driverClassName和url拼写错误。解决办法:确认Resource配置正确,并且必须放在DefaultContext或者Context配置节内。


2、Cannot create JDBC driver of class 'xxx' for connect URL ''


解决办法:配置的数据库驱动类名xxx是错误的,检查并修改即可;如果确认正确,那就是找不到驱动库,拷贝一个jar到Tomcat/common/lib中即可。


3、Cannot create JDBC driver of class '' for connect URL 'xxx'


解决办法:配置的url字符串语法是错误的,检查后修改即可。


4、Cannot create PoolableConnectionFactory, cause: Io 异常: Connection refused


问题:无法创建连接池工厂对象,原因是连接被拒绝。解决办法:检查url字符串,可能服务器地址、端口、数据库名或者数据库实例名等信息错误。修改。


5、No suitable driver 没有匹配的驱动


分析:驱动程序配置错误,请确认Tomcat的common/lib子目录中是否有数据库驱动jar。


6、Cannot create resource instance无法创建数据源实例


问题:找不到commons-dbcp-1.1.jar(版本可能不同)解决办法:复制commons-dbcp-1.1.jar库文件到Tomcat/Common/lib子目录中。


7、root cause:


java. lang. NoClassDefFoundError: org/apache/commons/collections/CursorableLinkedList问题:找不到commons-collections.jar。解决办法:复制commons-collections.jar库文件到Tomcat/Common/lib子目录中。


8、root cause:


java. lang. NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool问题:找不到commons-pool-1.1.jar(版本可能不同)。解决办法:复制commons-pool-1.1.jar库文件到Tomcat/Common/lib子目录中。11月13日 21:11 | 添加评论 | 固定链接 | 引用通告 (0) | 记录它 | J2EE究竟是用Struts的连接池好还是用tomcat的连接池好?还有struts的SQL Server连接池怎么配置啊
我的:在 struts-config里写:
Java代码 复制代码
  1. <data-sources>   
  2.   <data-source key="xxxx"  type="org.apache.commons.dbcp.BasicDataSource">   
  3.   <set-property property="driverClassName"  
  4.    value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />   
  5.   <set-property property="url"    
  6.    value="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=xxxxx"/>   
  7.   <set-property property="maxActive"    
  8.    value="5" />   
  9.   <set-property property="username"    
  10.    value="xx" />   
  11.   <set-property property="password"  
  12.    value="xx" />   
  13.   <set-property property="autoCommit"    
  14.    value="true" />   
  15.   </data-source>   
  16. </data-sources>  
<data-sources>
  <data-source key="xxxx"  type="org.apache.commons.dbcp.BasicDataSource">
  <set-property property="driverClassName"
   value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />
  <set-property property="url" 
   value="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=xxxxx"/>
  <set-property property="maxActive" 
   value="5" />
  <set-property property="username" 
   value="xx" />
  <set-property property="password"
   value="xx" />
  <set-property property="autoCommit" 
   value="true" />
  </data-source>
</data-sources>


tomcat和struts中写都不好,tomcat中自带的配置连接池只是一个不成熟的项目,

最好只用于学习和小型项目中。struts是表示层框架,更不适于处理底层数据管理。

在没有其他的连接池(如hibernate自带的;poolman等)时,相对来说还是在tomcat中配置较好

Tomcat的连接池其实就是dbcp. 我比较过流行的 dbcp,c3p0,proxool 三种连接池,上网搜集了很多资料,发现都是proxool最好。现在hibernate3中已经放弃了对dbcp的集成,我从hibernate的官方网站上看到hibernate的作者说这样做的原因是因为实践过程中发现dbcp不稳定,至于c3p0,我见过国外有几篇文章讲到它的效率不高,不过具体怎样,我没试过。我们公司的维护的一个日访问量达数十万的网站就是用proxool,事实证明很稳定。struts的连接池,我没用过,我觉得连接池的效率跟稳定性是非常关键的,如果在大型应用中,选择连接池应抱谨


多个连接方法

------------------------------------
在一个其于Struts的应用系统的设计过程中,最好能在web/表示层(presentation layer)和你的商务逻辑类(包含所有数据访问操作的层)的中间,定义一个Action类,作为小型的适配器(thin adapter)。

  所以,你可以先定义一些商务API(business API),这些API就是简单的 Java类。你可以传递一些参数给这些对象,并从这些对象返回一个 Java Bean或者 Java Bean的集合。这个Action类负责调用这些对象,并把它们返回的值传递给web/表示层。

  通常,你可以为每一个你需要调用的商务方法/商务类API创建一个Action类。理想情况下,所有的数据库访问代码都被封装进了这些商务API类里,所以Struts并不知道你正在使用的持久层(persistent layer)(甚至都不知道你使用了持久层)。它只需要传递一个主键(Key)或者一个查询参数,然后处理返回的结果bean或者bean集合。这样,你就可以在其他的应用环境里复用这些商务API类,你还可以对这些独立于Struts或HTTP环境的商务API进行单体测试。

  开始的时候,最简单的方法就是设计一个1:1的方案,为你的每一个商务API入口(entry-point)定义一个Action类。当你的经验丰富了以后,你也可以使用DispatchAction组合这些Action类。你甚至可以定义一个简单的"框架"Action,用来调用所有的这些商务类。你可以在contrib目录里找到Scaffold设计的ProcessAction,这是一个"框架"Action的完整实现。使用这种方案可以使用更少的Action类,但你必须对Struts和MVC框架的底层实现有较深的理解。不要害怕在开始的时候定义过多的Action,Struts的配置方案可以给予你充分的自由在以后重构你的设计,因为你可以灵活的改变你的Action类,而不会对应用程序造成影响。

  在理想情况下,商务逻辑层(business logic layer)应该封装所有的数据访问细节,包括数据库连接的获得。但是,一些应用程序的设计要求调用者可以从一个DataSource对象来获得数据库连接。遇到这种情况时,Struts DataSource管理器可以使你在需要的时候配置这些DataSource资源。

  Struts DataSource管理器在Struts配置文件(Struts-config.xml)里定义。这个管理器可以用来分发和配置任何实现了 javax.sql.DataSource接口的数据库连接池(connection pool)。如果你的DBMS或者容器内置了符合这些要求的连接池,你可以优先选用它。


[Jakarta的公共连接池实现 - BasicDataSource]

  如果你的手头没有连接池的本地(native)实现,你可以使用Jakarta提供的公共连接池实现[org.apache.commons.dbcp.BasicDataSource],它可以和DataSource管理器"合作"的很好。另外,Struts还在它的util包里包含了一个GenericDataSource类,这也是一个连接池实现。但是这只是一个非常简单的实现方案,不推荐使用,因为它可能在Struts的以后版本中被BasicDataSource或其它的数据源实现替换掉。

  下面是一段Struts-config.xml配置文件中的数据源配置(使用GenericDataSource数据源实现),你可以更改相应的设置以适合你自己的系统。

Java代码 复制代码
  1. <!-- configuration for GenericDataSource wrapper -->   
  2. <data-sources>   
  3.          <data-source>   
  4.            <set-property   
  5.                  property="autoCommit"  
  6.                  value="false"/>   
  7.            <set-property   
  8.                  property="description"  
  9.                  value="Example Data Source Configuration"/>   
  10.            <set-property   
  11.                  property="driverClass"  
  12.                  value="org.postgresql.Driver"/>   
  13.            <set-property   
  14.                  property="maxCount"  
  15.                  value="4"/>   
  16.            <set-property   
  17.                  property="minCount"  
  18.                  value="2"/>   
  19.            <set-property   
  20.                  property="password"  
  21.                  value="mypassword"/>   
  22.            <set-property   
  23.                  property="url"  
  24.                  value="jdbc:postgresql://localhost/mydatabase"/>   
  25.            <set-property   
  26.                  property="user"  
  27.                  value="myusername"/>   
  28.          </data-source>   
  29. </data-sources>  
<!-- configuration for GenericDataSource wrapper -->
<data-sources>
         <data-source>
           <set-property
                 property="autoCommit"
                 value="false"/>
           <set-property
                 property="description"
                 value="Example Data Source Configuration"/>
           <set-property
                 property="driverClass"
                 value="org.postgresql.Driver"/>
           <set-property
                 property="maxCount"
                 value="4"/>
           <set-property
                 property="minCount"
                 value="2"/>
           <set-property
                 property="password"
                 value="mypassword"/>
           <set-property
                 property="url"
                 value="jdbc:postgresql://localhost/mydatabase"/>
           <set-property
                 property="user"
                 value="myusername"/>
         </data-source>
</data-sources>


使用BasicDataSource数据源实现的配置方案如下:

Java代码 复制代码
  1. <data-sources>   
  2.         <!-- configuration for commons BasicDataSource -->   
  3.         <data-source type="org.apache.commons.dbcp.BasicDataSource">   
  4.                 <set-property   
  5.                   property="driverClassName"  
  6.                   value="org.postgresql.Driver" />   
  7.                 <set-property   
  8.                   property="url"  
  9.                   value="jdbc:postgresql://localhost/mydatabase" />   
  10.                 <set-property   
  11.                   property="username"  
  12.                   value="me" />   
  13.                 <set-property   
  14.                   property="password"  
  15.                   value="test" />   
  16.                 <set-property   
  17.                   property="maxActive"  
  18.                   value="10" />   
  19.                 <set-property   
  20.                   property="maxWait"  
  21.                   value="5000" />   
  22.                 <set-property   
  23.                   property="defaultAutoCommit"  
  24.                   value="false" />   
  25.                 <set-property   
  26.                   property="defaultReadOnly"  
  27.                   value="false" />   
  28.                 <set-property   
  29.                   property="validationQuery"  
  30.                   value="select COUNT(*) FROM market" />   
  31.         </data-source>   
  32. </data-sources>  
<data-sources>
        <!-- configuration for commons BasicDataSource -->
        <data-source type="org.apache.commons.dbcp.BasicDataSource">
                <set-property
                  property="driverClassName"
                  value="org.postgresql.Driver" />
                <set-property
                  property="url"
                  value="jdbc:postgresql://localhost/mydatabase" />
                <set-property
                  property="username"
                  value="me" />
                <set-property
                  property="password"
                  value="test" />
                <set-property
                  property="maxActive"
                  value="10" />
                <set-property
                  property="maxWait"
                  value="5000" />
                <set-property
                  property="defaultAutoCommit"
                  value="false" />
                <set-property
                  property="defaultReadOnly"
                  value="false" />
                <set-property
                  property="validationQuery"
                  value="select COUNT(*) FROM market" />
        </data-source>
</data-sources>

  注意,你可以在你的应用系统中定义不止一个数据源,你可以根据需要定义多个数据源,并为它们分别起一个逻辑名(logical name)。这样做可以给你的应用系统提供更好的安全性和可测量性(scalability),你还可以定义一个专用于测试的数据源。

  配置好DataSource以后,你就可以在你的应用系统中使用这些数据源了。下面这段代码演示了怎样在Action类的execute方法中通过这些数据源来生成数据库连接。

Java代码 复制代码
  1. public ActionForward execute(   
  2.         ActionMapping mapping,   
  3.         ActionForm form,   
  4.         HttpServletRequest request,   
  5.         HttpServletResponse response)   
  6.         throws Exception   
  7. {   
  8.         DataSource dataSource;   
  9.         Connection cnn;   
  10.   
  11.         try  
  12.         {   
  13.                 dataSource = getDataSource(request);   
  14.                 cnn = dataSource.getConnection();   
  15.                 // 数据连接已经建立了,你可以做你想做的事情了   
  16.         }   
  17.         catch (SQLException e)   
  18.         {   
  19.                 getServlet().log("处理数据库连接", e);   
  20.         }   
  21.         finally  
  22.         {   
  23.                 // 在finally块里包含这些代码   
  24.                 // 用以保证连接最后会被关闭   
  25.                 try  
  26.                 {   
  27.                         cnn.close();   
  28.                 }   
  29.                 catch (SQLException e)   
  30.                 {   
  31.                         getServlet().log("关闭数据库连接", e);   
  32.                 }   
  33.         }   
  34. }  
public ActionForward execute(
        ActionMapping mapping,
        ActionForm form,
        HttpServletRequest request,
        HttpServletResponse response)
        throws Exception
{
        DataSource dataSource;
        Connection cnn;

        try
        {
                dataSource = getDataSource(request);
                cnn = dataSource.getConnection();
                // 数据连接已经建立了,你可以做你想做的事情了
        }
        catch (SQLException e)
        {
                getServlet().log("处理数据库连接", e);
        }
        finally
        {
                // 在finally块里包含这些代码
                // 用以保证连接最后会被关闭
                try
                {
                        cnn.close();
                }
                catch (SQLException e)
                {
                        getServlet().log("关闭数据库连接", e);
                }
        }
}

  注意:如果你使用公共的BasicDataSource,你提供给pingQuery属性的查询语句(如果你设置了话)必须至少要能返回一行记录。

例子:select COUNT(*) FROM VALIDTABLE

你可以把VALIDTABLE替换成你的数据库中包含的任何有效的表。

[使用多个数据源]

如果你需要在模块(Module)中使用多于一个的数据源,你可以在配置文件的<data-source>元素里包含一个key属性。

Java代码 复制代码
  1. <data-source>   
  2.         <data-source key="A" type="org.apache.commons.dbcp.BasicDataSource">   
  3.                 …属性配置略, 同上…   
  4.         </data-source>   
  5.         <data-source key="B" type="org.apache.commons.dbcp.BasicDataSource">   
  6.                 …属性配置略, 同上…   
  7.         </data-source>   
  8. </data-source>  
<data-source>
        <data-source key="A" type="org.apache.commons.dbcp.BasicDataSource">
                …属性配置略, 同上…
        </data-source>
        <data-source key="B" type="org.apache.commons.dbcp.BasicDataSource">
                …属性配置略, 同上…
        </data-source>
</data-source>


你代码里,你可以通过这些key获得不同的数据源。代码如下:

Java代码 复制代码
  1. …   
  2. try  
  3. {   
  4.         dataSourceA = getDataSource(request, "A");   
  5.         dataSourceB = getDataSource(request, "B");   
  6. …  
…
try
{
        dataSourceA = getDataSource(request, "A");
        dataSourceB = getDataSource(request, "B");
…


你可以根据需要为每一个模块设置多个数据源。但同一模块里每个数据源的key属性必须唯一,因为Struts模块系统是以每一个模块为单位管理命名空间的。

  发表于 @ 2006年10月27日 12:49 PM | 评论 (0)
Struts数据源配置过程(不在Action里连接) JDBC数据源(Data Source)的使用,简化了数据库的连接过程.Struts中使用JDBC 2.0标准扩展包中的 javax.sql.DataSource接口来实现数据源的。扩展包是jdbc2_0-stdext.jar。,在jdk1.4后版本包含此扩展包。 例如下面的例子。数据库名“classuser”,表:“classuser”。在Struts配置文件“struts-config.xml中”配置Struts数据源,这些数据源由ActionServlet负责管理。 以下代码是Struts-config.xml的配置。
Java代码 复制代码
  1. <struts-config>    
  2. <data-sources>   
  3.   <data-source key="oracleDB1" type="org.apache.commons.dbcp.BasicDataSource">   
  4.    <set-property property="driverClassName"    
  5.     value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />   
  6.    <set-property property="url"  
  7.     value="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=classuser;" />   
  8.    <set-property property="maxActive"  
  9.     value="5"/>   
  10.    <set-property property="username"  
  11.     value="sa"/>   
  12.    <set-property property="password"  
  13.     value=""/>   
  14.    <set-property property="autoCommit"  
  15.     value="true"/>   
  16.   </data-source>   
  17.  </data-sources>   
<struts-config> 
<data-sources>
  <data-source key="oracleDB1" type="org.apache.commons.dbcp.BasicDataSource">
   <set-property property="driverClassName" 
    value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />
   <set-property property="url"
    value="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=classuser;" />
   <set-property property="maxActive"
    value="5"/>
   <set-property property="username"
    value="sa"/>
   <set-property property="password"
    value=""/>
   <set-property property="autoCommit"
    value="true"/>
  </data-source>
 </data-sources> 

定义模型类DBUser,在该类中封装了与数据库操作相关的业务逻辑。
Java代码 复制代码
  1. package classmate;   
  2. import <SPAN class=hilite1>java</SPAN>x.sql.DataSource;   
  3. import <SPAN class=hilite1>java</SPAN>.sql.Connection;   
  4. import <SPAN class=hilite1>java</SPAN>.sql.Statement;   
  5. import <SPAN class=hilite1>java</SPAN>.sql.ResultSet;   
  6. import <SPAN class=hilite1>java</SPAN>.sql.SQLException;public class DBUser { DataSource dataSource;   
  7.     
  8.  public DBUser(DataSource dataSource) {   
  9.      
  10.    this.dataSource = dataSource;   
  11.  }   
  12.     
  13.     
  14.  public boolean checkUser(String name,String psw) throws Exception{   
  15.         Connection connect = null;   
  16.   String strSql;   
  17.   ResultSet rs;   
  18.   boolean result=false;   
  19.         strSql = "select * from classuser where username='"  
  20.      + name + "' and password='" + psw + "'";   
  21.   try {   
  22.    connect = dataSource.getConnection();   
  23.    Statement stmt = connect.createStatement();   
  24.    rs = stmt.executeQuery(strSql);   
  25.    if ( rs.next()) {   
  26.     result=true;   
  27.    }   
  28.   }   
  29.   catch(SQLException ex) {   
  30.    ex.printStackTrace();   
  31.   }   
  32.   finally{   
  33.    if(connect!=null)   
  34.     connect.close();   
  35.   }   
  36.   return result;   
  37.     
  38.  }   
  39.     
  40. }   
  41. 改造Action Bean类LoginAction,在其中使用前面配置的数据源oracleDB1。 ServletContext context = servlet.getServletContext();   
  42.   DataSource dataSource = (DataSource)context.getAttribute("oracleDB1");   
  43.          
  44.         DBUser dbuser = new DBUser(dataSource);   
  45.         HttpSession session = request.getSession();   
  46.           
  47.         if (!dbuser.checkUser(name,psw)) {   
  48.    ActionMessages errors = new ActionMessages();   
  49.    errors.add(ActionMessages.GLOBAL_MESSAGE,   
  50.     new ActionMessage("label.deny"));   
  51.        
  52.    if (!errors.isEmpty()) {   
  53.     saveErrors(request, errors);   
  54.    }   
  55.      return  mapping.findForward("failed");  //登陆失败   
  56.   }   
  57.   else{   
  58.        return (mapping.findForward("successed"));//登陆成功        
  59.   }    
  60.  }   
  61. }   
package classmate;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;public class DBUser { DataSource dataSource;
 
 public DBUser(DataSource dataSource) {
  
   this.dataSource = dataSource;
 }
 
 
 public boolean checkUser(String name,String psw) throws Exception{
        Connection connect = null;
  String strSql;
  ResultSet rs;
  boolean result=false;
        strSql = "select * from classuser where username='"
     + name + "' and password='" + psw + "'";
  try {
   connect = dataSource.getConnection();
   Statement stmt = connect.createStatement();
   rs = stmt.executeQuery(strSql);
   if ( rs.next()) {
    result=true;
   }
  }
  catch(SQLException ex) {
   ex.printStackTrace();
  }
  finally{
   if(connect!=null)
    connect.close();
  }
  return result;
 
 }
 
}
改造Action Bean类LoginAction,在其中使用前面配置的数据源oracleDB1。 ServletContext context = servlet.getServletContext();
  DataSource dataSource = (DataSource)context.getAttribute("oracleDB1");
      
        DBUser dbuser = new DBUser(dataSource);
        HttpSession session = request.getSession();
       
        if (!dbuser.checkUser(name,psw)) {
   ActionMessages errors = new ActionMessages();
   errors.add(ActionMessages.GLOBAL_MESSAGE,
    new ActionMessage("label.deny"));
    
   if (!errors.isEmpty()) {
    saveErrors(request, errors);
   }
     return  mapping.findForward("failed");  //登陆失败
  }
  else{
       return (mapping.findForward("successed"));//登陆成功     
  } 
 }
} 

此外,在Struts架构中,根据需要也允许在配置文件中声明多个数据源,此时需要使用“key”属性为每一个数据源分配一个唯一的key值,标示特定数据源
Argoverse数据集可视化/Argoverse-api argoverse可视化,argoverse-api配制方法 阅读详情

相关推荐

ESP32驱动GC9A01圆形屏实战:Arduino平台LVGL移植与图像显示优化

本文详细介绍了在Arduino平台上使用ESP32驱动GC9A01圆形屏的实战指南,包括硬件连接、LVGL移植与图像显示优化。通过SPI配置、LVGL库安装和双缓冲机制等技巧,帮助开发者快速实现高效显示效果,适用于智能家居控制面板等应用场景。

weixin_29182481的博客 736

究竟是用Struts的连接池好还是用tomcat的连接池好?还有struts的SQL Server连接池怎么配置啊...

究竟是用Struts的连接池好还是用tomcat的连接池好?还有struts的SQL Server连接池怎么配置啊 文章所属标签: jsp日记    我的:在 struts-config里写:&l...

wensonlee的专栏 1703

技术面试官视角:复盘北航/中科院/哈工大保研机试与面试,他们到底在考察什么?(附真题回忆与评分侧重点)

本文从技术面试官视角解析北航、中科院、哈工大等顶尖院校保研机试与面试的考核逻辑,揭示编程语言限制、题目难度设计等隐藏考察维度,并提供真题回忆与评分侧重点。帮助考生理解面试官的真实意图,掌握应对策略,提升通过率。

weixin_42549496的博客 518

Struts2框架连接mysql数据库

数据库连接是一个项目非常重要,不可缺少的一环。在学习了Struts框架之后,将数据库也专门研究了一下。 首先我们需要在数据库中建一张表用来存储我们的数据,这里就以用户登录注册为例 1.建表 设置好它的每一项属性值,并要勾选“自动递增”,否则不能向数据库中写入多条记录。 2.建立连接_Dbutil.java package com.mysql.util; import ...

mmzian的博客 1960

STM32 Proteu直流电机正反转控制系统限位开关-0035

硬件组成:STM32F103C6单片机 +L298N电机控制电路+直流电机+3个按键(正转、反转、停止)+LED指示灯(正转、反转、停止)+限位开关(正限位 反限位) 1.通过3个按键(正转、反转、停止)控制电机的正转、反转、停止。 2.有3个LED指示灯,正转时正转指示灯亮。反转停止对应反转停止指示灯亮。 3.有自动正转反转停止功能,正转时当正限位按键按下时说明正转到最大距离。此时自动停止。反转一样。

zhaxiaobian_er的博客 2002

【YOLOv11】014、YOLOv11模型导出:PyTorch到ONNX格式转换与优化

摘要:本文详细介绍了如何将PyTorch训练的YOLOv11模型高效转换为ONNX格式。重点包括:分离模型特征提取与后处理、设置动态维度、优化ONNX算子、验证转换正确性等关键步骤。作者分享了实际项目中的经验教训,如版本对齐、算子兼容性处理、后处理分离等实用技巧,并推荐使用onnx-simplifier工具优化模型。文章强调模型转换是一个需要反复调试的过程,建议保留转换记录形成知识库,以提高部署效率并避免常见错误。

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 306

struts2框架连接MySql数据库

前几天一直在用struts2框架做项目,第一次接触框架,记录一下。目前我只做了增删改查操作 ,虽然操作简单,但是项目比较大,我的题目是病历管理系统,可想而知医院的各种病历(门诊、急诊、挂号、检验、处方、手术、护理、医嘱、入院登记,我一共用了20个表,前前后后几十个小模块),工作量也是比较大的。到现在我差不多完成了第一版的系统(增删改查部分),后续的一些细节处理我也会继续记录的(如果有时间的话),今天这部分是连接数据库。另外,本文只适合纯新手观看,如有错误,欢迎指正 JDBC技术原理 JDBC,全称 java

tiny_Firefly的博客 2061

RK3588&RK3576实现 HW-ID DTB(动态加载不同的Kernel DTB)功能

RK平台的U-Boot⽀持检测硬件上的GPIO或者ADC状态动态加载不同的Kernel DTB,暂称为HW-ID DTB(Hardware id DTB)功能。

Wynter 849

Tomcat 9.0连接数据库连接池 java.sql.SQLException: Cannot create JDBC driver of class '' for connect URL 'nul

步骤 1.webINF目录下创建config.xml,tomcat会优先调用conf目录下的context.xml <?xml version="1.0" encode="UTF-8" ?> <Context> <!-- T9.0 将resource复制到tomcat/config/context的Context中--> <Resource ...

qq_42733641的博客 5505

股票价格预测的秘密武器:用C#实现蒙特卡洛路径模拟,轻松掌握市场波动规律!

摘要: 蒙特卡洛模拟是股票预测的有效工具,通过随机抽样模拟价格路径,克服传统技术分析的局限性。其核心模型是几何布朗运动(GBM),描述股价随机变化过程。C#实现的关键步骤包括:1)获取输入参数;2)生成随机数路径;3)分析结果。该方法不预测具体价格,而是提供可能的价格范围,帮助投资者评估风险。代码结构清晰,分为输入、模拟、分析和可视化四个模块,通过参数封装提高可读性,适用于不确定市场的概率预测。

墨夶的博客 601

rk3568 适配以太网(mac 2 mac)

MDIO(Management Data Input/Output)是一种管理数据输入/输出协议,用于在以太网交换机和PHY(物理层收发器)之间进行通信。在Android中,MDIO总线用于控制网络接口的PHY芯片,例如通过MDIO总线访问PHY芯片的寄存器。这些寄存器包含了一些关于网络连接状态、链路速度和其他计算机网络相关信息的数据。MDIO总线通常由网络接口控制器(NIC)使用,以便在OS中管理PHY芯片。在Android设备上,MDIO总线通常由内核驱动程序管理,并且可以通过 /sys/bus/mdi

weixin_35723192的博客 2454

struts 数据库连接

一、JDBC的工作原理 Struts在本质上是java程序,要在Struts应用程序中访问数据库,首先,必须搞清楚Java Database Connectivity API(JDBC)的工作原理。正如其名字揭示的,JDBC库提供了一个底层API,用来支持独立于任何特定SQL实现的基本SQL功能。提供数据库访问 的基本功能。它是将各种数据库访问的公共概念抽取出来组成的类和接口。JDBC AP...

weixin_30702413的博客 218

【实现100个unity特效之4】Unity ShaderGraph使用教程与各种特效案例(2023/12/1更新)

ShaderGraph是Unity中的一个可视化工具,用于创建和编辑图形着色器。其意义在于简化编写复杂着色器的过程,减少对具体编程语言的依赖,使艺术家和设计师可以更方便地创建各种美术效果。使用ShaderGraph可以通过图形界面设置着色器属性,包括颜色、纹理、光照等,并在视窗预览中即时显示结果,从而快速迭代和调整着色器。使用ShaderGraph需要先安装Unity 2018.1或以上版本,并添加ShaderGraph插件。打开ShaderGraph面板后,可以通过拖放节点并连接它们来创建着色器。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 4万+

Struts配置连接池错误解决问题

1、Cannot create JDBC driver of class for connect URL  问题:找不到jdbc驱动,但是提示信息里的class值为null,所以,可以断定Tomcat没有找到Server.xml里的Resource配置信息。可能的原因包括:(1)没有配置Resource;(2)Resource配置信息放置的位置错误。(3)

Bob@优快云 902

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Struts配置连接池错误解决问题及实例

[url]http://hi.baidu.com/dburu/blog/item/55a32e0196a5dd0e7bec2c81.html[/url] 1、Cannot create JDBC driver of class '' for connect URL '' 问题:找不到jdbc驱动,但是提示信息里的class值为null,所以,可以断定Tomcat没有找到Serve...

无忌 256

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Struts / Tomcat 配置连接池错误解决问题及实例

 Struts配置连接池错误解决问题及实例 1、Cannot create JDBC driver of class for connect URL 问题:找不到jdbc驱动,但是提示信息里的class值为null,所以,可以断定Tomcat没有找到Server.xml里的Resource配置信息。可能的原因包括:(1)没有配置Resource;(2)Resource配置信

必应@珠峰 1071

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Struts配置连接池错误解决问题及实例2006-12-04 10:55Struts配置连接池错误解决问题 ...

Struts配置连接池错误解决问题及实例2006-12-04 10:55Struts配置连接池错误解决问题 (转http://hi.baidu.com/dburu/blog/item/55a32e0196a5dd0e7bec2c81.html) 1、Cannot create JDBC driver of class '' for connect URL '' ...

peter.kong 227

Struts配置连接池错误解决问题及实例2006-12-04 10:55Struts配置连接池错误解决问题 http://peter-kong.javaeye.com/blog/39307

Struts配置连接池错误解决问题及实例2006-12-04 10:55Struts配置连接池错误解决问题 (转http://hi.baidu.com/dburu/blog/item/55a32e0196a5dd0e7bec2c81.html) 1、Cannot create JDBC driver of class for connect URL 问题:找不到jdbc驱动,但是提示信

xu的blog 1354

struts2配置常见错误——(一)不能处理错误Struts has detected an unhandled exception:

Messages: 1.cn.itcast.action.CustomerAction 2.Unable to instantiate Action, cn.itcast.action.CustomerAction, defined for 'CustomerAction' in     namespace '/'cn.itcast.action.CustomerAction File: org...

laomadawei的博客 3159

Struts2框架——Struts的错误回显以及struts标签

Struts的错误回显以及struts标签 ​ 本次记录一下 Struts 的错误回显以及 struts 框架前端标签的简单用法 Struts 的错误回显 ​ 在 struts.xml 中的 result 标签中,把 name 属性的值设置成 input,这样当数据出现异常时,会自动回显到后边声明的 jsp 页面 <action name="register" class="com.l...

scfor333的博客 458

jsp struts 编程常见错误

项目中遇到的错误  sql错误 找不到列  Unknown column 'fillMen' in 'field list' 2.列名在sql语句中写了2次  Column 'fillMan' specified twice 3.下面2条 数据库插入对应的列都是int类型的 所插入的数据类型不符合要求时报错  Data truncated for column 'ga

u012272600的专栏 1993

Struts 连接池问题

      昨晚,在做一个STRUTS连接数据库的小程序时,遇到了以下问题。struts-config.xml配置:                         Action中用下面方法取得数据源 ServletContext context = servlet.getServletContext(); DataSource ds = (DataSource) context.

swpisw的专栏 1410

struts 连接池

http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">                                                                           type="login.LogonAction" validate="true">                    ---

shaofei1986的专栏 476
上一篇: 尚学堂Struts学习笔记2:JSTL_格式化库及函数库
下一篇: MyEclipse下MyEclipse Derby Database Connection Driver的配置
mixturemay
博客等级 码龄19年 15粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值