紧急求救!小弟初学struts,哪位兄台知道JBuider X下 struts的jdbc驱动怎么设置吗?我是SQL2000

Lotussum 2005-08-04 05:02:45
小弟初学struts,哪位兄台知道JBuider X下 struts的jdbc驱动怎么设置吗?我是SQL2000
...全文
105 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lotussum 2005-08-05
  • 打赏
  • 举报
回复
问题已经解决,数据库连不上是因为SQL的SP3补丁未打,action不可用的问题是因为缺少commons-dbcp.jar,感谢“ yingtju(蚂蚁) ”和“xdop(鸿飞处) ”两位大侠!
Lotussum 2005-08-05
  • 打赏
  • 举报
回复
请问“commons-dbcp”是“jakarta-commons-dbcp”吗?
Lotussum 2005-08-04
  • 打赏
  • 举报
回复
我用的是XP,我用jdbc&odbc桥,用jbuider X的database pilot测试,结果正常
yingtju 2005-08-04
  • 打赏
  • 举报
回复
你的操作系统是什么?
xp用sqlserver的话sqlserver要打sp3补丁
而且微软得jdbc驱动有点问题
Lotussum 2005-08-04
  • 打赏
  • 举报
回复
提示不可用,以下是内容:
Apache Tomcat/4.0.6 - HTTP Status 503 - Servlet action is currently unavailable

--------------------------------------------------------------------------------

type Status report

message Servlet action is currently unavailable

description The requested service (Servlet action is currently unavailable) is not currently available.

--------------------------------------------------------------------------------



而且我用jbuider X的database pilot竟然无法测试连接,新建连接选驱动的时候竟然连sql server的选项都没有;
另外,小弟在struts-config.xml里面已经配置了,我想明白的是,是不是只要JDBC驱动可用,然后配置了struts-config.xml后,就算配置完成了?
moodwei 2005-08-04
  • 打赏
  • 举报
回复
何必用struts设置驱动?
直接用web容器的不就完了吗?
但如果非要用的话,可以直接在struts-config.xml里面设置。
我从没在这里设置过数据源。我都是用web容器里面的,如tomcat,resin等都可以很简单的设置。
如在resin下:
<!--
- Sample database pool configuration
- The JDBC name is java:comp/env/jdbc/***
- *号表示设置的数据源名称如,jdbc/OA中的OA,jdbc/test重的test
-->
<resource-ref>
<res-ref-name>jdbc/OA</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<init-param driver-name="net.sourceforge.jtds.jdbc.Driver"/>
<init-param url="jdbc:jtds:sqlserver://localhost:1433/oa"/>
<init-param user="sa"/>
<init-param password="ao"/>
<init-param max-connections="20"/>
<init-param max-idle-time="30"/>
</resource-ref>

<resource-ref>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<init-param driver-name="com.caucho.jdbc.mysql.Driver"/>
<init-param url="jdbc:mysql_caucho://localhost:3306/test"/>
<init-param user=""/>
<init-param password=""/>
<init-param max-connections="20"/>
<init-param max-idle-time="30"/>
</resource-ref>

这样设置好了之后可以在java类中这样获得数据源,

public static Connection getConnection() {
Connection conn = null;
javax.sql.DataSource ds = null;
try {
javax.naming.InitialContext ic = new javax.naming.InitialContext();
ds = (javax.sql.DataSource) ic.lookup("java:comp/env/jdbc/OA");
} catch (javax.naming.NamingException ne) {
ne.printStackTrace();
}
try {
conn = ds.getConnection();
conn.setAutoCommit(false);

} catch (java.sql.SQLException sqle) {
//throw new Exception("SQLException while getting Connection " +
// sqle.getMessage());
}
return conn;
}
所以在需要操作数据库时,引用该方法获得一个connection即可。

ses127127 2005-08-04
  • 打赏
  • 举报
回复
可以用属性文件:
driver=org.gjt.mm.mysql.Driver

mysql.url=jdbc:mysql://localhost:3306/popten
mysql.user=root

mysql.password=

mysql.maxconn=1000
或者在struts-config.xml中直接配置数据源
<data-sources>
<data-source key="logon">
<set-property value="true" property="autoCommit" />
<set-property value="sun.jdbc.odbc.JdbcOdbcDriver" property="driverClass" />
<set-property value="jdbc:odbc:logon" property="url" />
<set-property value="" property="user" />
<set-property value="" property="password" />
<set-property value="10" property="maxCount" />
<set-property value="value" property="minCount" />
</data-source>
</data-sources>
Lotussum 2005-08-04
  • 打赏
  • 举报
回复
各位兄台可否留个QQ,方便以后交流,我的是:9016016
Lotussum 2005-08-04
  • 打赏
  • 举报
回复
这个已经有了,可是提示不可用,另外“commons-dbcp”包不知道是什么,望提示!

<data-sources>
<data-source 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=mystruts;SelectMethod=cursor" />
<set-property property="username" value="sa" />
<set-property property="password" />
<set-property property="maxActive" value="10" />
<set-property property="maxWait" value="5000" />
<set-property property="defaultAutoCommit" value="false" />
<set-property property="defaultReadOnly" value="false" />
</data-source>
</data-sources>
Lotussum 2005-08-04
  • 打赏
  • 举报
回复
只有一个ApplicationResources.properties的文件,不知道是不是
洪泉 2005-08-04
  • 打赏
  • 举报
回复
我也刚学struts,很多问题!现在连最基本的例子都还没有过!
xdop 2005-08-04
  • 打赏
  • 举报
回复
可以在struts-config.xml中直接配置数据源,jbx里面双击就是所见所得配置
<struts-config>
<data-sources>
<data-source key="default" type="org.apache.commons.dbcp.BasicDataSource">
<set-property property="... value="..."
需要commons-dbcp包
huangdeji 2005-08-04
  • 打赏
  • 举报
回复
说不清楚
showlie 2005-08-04
  • 打赏
  • 举报
回复
在database.properties文件中
driver=com.microsoft.jdbc.sqlserver.SqlServerDriver;
url=jdbc:microsoft:sqlserver://localhost:1433;Database=databaseName;
user=sa;
password=sa;
注意,必须把jdbc for Sql Server 2000的三个.jar文件拷到WEB-INF/lib里

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧