import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Connection;
解决方案 »
- 求助关于JAVA,模拟AMF提交,以及解析AMF的问题
- 怎么在TagSupport获得application啊!
- 字符串转成整型/整型转字符串
- ibatis 问题
- 怎样取得hibernate分页的记录总数?
- jsp调用javabean出错,请兄弟们帮忙。
- DynaValidatorForm与弹出结果窗口的问题怎么解决
- jboss中EJB关联时出错,请大家指点一下.
- 高手进来讨论。说说struts,tapestry,turbine的比较
- EJB paramenters 传递的问题
- 请教大侠:java.net.SocketException: Connection reset
- 关于apache+tomcat整合问题!
package com.ibm.sample.struts;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import javax.sql.DataSource;
import java.sql.Connection;
import javax.servlet.ServletException;/**
* @version 1.0
* @author
*/
public class SubmitAction extends Action { /**
* Constructor
*/
public SubmitAction() { super(); }
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception { ActionErrors errors = new ActionErrors();
ActionForward forward = new ActionForward();
// return value
SubmitForm submitForm = (SubmitForm) form; 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);
}
} }
}
错误提示: SQLException e 不能解析SQLException,他不是一种类型
我想连接数据库,大哥有没有简单的连接数据库代码?谢谢~~
还是用eclipse吧,直接Organize import一把,所有的都自动帮你加好了.
我写了一个,但是点连接后,页面出现错误,页面显示:Error 503: Failed to load target servlet [action]
控制台的错误提示有:
java.sql.SQLException: Cannot load JDBC driver class 'com.microsoft.jdbc.sqlserver.SQLServerDriver'
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:529)
at org.apache.commons.dbcp.BasicDataSource.setLogWriter(BasicDataSource.java:381)
at org.apache.struts.util.GenericDataSource.setLogWriter(GenericDataSource.java:345)
at org.apache.struts.action.ActionServlet.initApplicationDataSources(ActionServlet.java:942)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:457)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
.......................................
[04-3-29 15:11:22:094 CST] 46df4de4 ServletInstan E SRVE0100E: 未识别出由 servlet action 抛出的 init() 异常:javax.servlet.UnavailableException: Initializing application data source org.apache.struts.action.DATA_SOURCE
at org.apache.struts.action.ActionServlet.initApplicationDataSources(ActionServlet.java:946)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:457)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
.......................................
[04-3-29 15:11:22:297 CST] 46df4de4 WebGroup E SRVE0020E: [Servlet 错误]-[action]:无法装入 servlet:javax.servlet.UnavailableException: Initializing application data source org.apache.struts.action.DATA_SOURCE
at org.apache.struts.action.ActionServlet.initApplicationDataSources(ActionServlet.java:946)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:457)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
............................
我不知道com.microsoft.jdbc.sqlserver.SQLServerDriver该怎么设,难道也在环境变量里设?
主要的代码:
DbConn.jsp:
<a href="reg.do"><bean:message key="index.reg"/></a>show.jsp:
<body>
success
</body>
struts-config.xml
<data-sources>
<data-source>
<set-property
property="autoCommit"
value="false"/>
<set-property
property="description"
value="Example Data Source Configuration"/>
<set-property
property="driverClass"
value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
<set-property
property="maxCount"
value="4"/>
<set-property
property="minCount"
value="2"/>
<set-property
property="password"
value=""/>
<set-property
property="url"
value="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=Db"/>
<set-property
property="user"
value="sa"/>
</data-source>
</data-sources>
.....................
<action path="/dbConn" type="com.ibm.sample.struts.DbConnAction">
<forward name="success" path="/show.jsp">
</forward>
</action>DbConnAction.java
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception { ActionErrors errors = new ActionErrors();
ActionForward forward = new ActionForward();
// return value
SubmitForm submitForm = (SubmitForm) form; DataSource dataSource;
Connection con = null;
Statement stmt = null;
ResultSet rs = null; try {
dataSource = getDataSource(request);
con = dataSource.getConnection();
// 数据连接已经建立了,你可以做你想做的事情了
stmt = con.createStatement();
String searchStr = "a";
ArrayList empList = new ArrayList(); StringBuffer sqlString =
new StringBuffer(
"select id, name, address from user where name like '%"
+ searchStr
+ "%'");
rs = stmt.executeQuery(sqlString.toString());
while (rs.next()) {
EmpBean emp = new EmpBean();
emp.setId(rs.getString("id"));
emp.setName(rs.getString("name"));
emp.setAddress(rs.getString("address"));
empList.add(emp);
}
rs.close(); } catch (SQLException e) {
getServlet().log("处理数据库连接", e);
} finally {
// 在finally块里包含这些代码
// 用以保证连接最后会被关闭
try {
con.close();
} catch (SQLException e) {
getServlet().log("关闭数据库连接", e);
}
}
return (mapping.findForward("success"));
}