在struts框架中配置SqlSserver数据源
运行环境:ecilpes3.2+Tomcat 5.5+SqlServer2000
呵呵,今天在热身时,又练习了下struts框架,想起第一次自己拿着书边看边练时首先遇到的问题就是在struts-config.xml文件里配置数据库了,下面与大家下自己的排错过程,思路有点乱还望大家批评指正!
常见问题javax.servlet.UnavailableException: Initializing application data source dataSource
1, 排除JDBC驱动的问题
2,定位问题原因 确定所用struts版本,struts版本不同连接数据库的配置参数就有所差异。
3, 排除连接数据库配置参数
-------------------------------------------------------------------
为避免发生错误建议按以下步骤链接sql数据库
1. 准备数据源配置所需要的jar文件
在struts框架中配置SqlServer数据源,除了需要连接sqlserver数据库的那三个jar包之外,还需要commons-collections-2.1.1.jar,commons-dbcp-1.2.1.jar,commons-pool-1.2.jar和struts-legacy.jar。而struts-legacy.jar包需要自己下载(有需要的留言留下邮箱地址)。
将struts-legacy.jar也拷贝到tomcat5.x\common\lib里去,注意:这4个jar包除了要放在tomcat中,还要在web程序的module中的lib文件加中拷贝一份,还要在web程序的WebRoot\WEB-INF\lib中拷贝一份
2、 编写struts-config.xml文件,在里面加上数据源配置的一系列标记,例如:
以下为struts1.2版本
<!--开始定义数据源 -->
<data-sources >
<data-source key ="dataSource" type="org.apache.commons.dbcp.BasicDataSource">
<set-property value="com.microsoft.jdbc.sqlserver.SQLServerDriver"
property="driverClassName"/>
<set-property value="jdbc:Microsoft:sqlserver://localhost:1433;databasename=news_Data"
property="url"/>
<set-property value="sa" property="username"/>
<set-property value="123456" property="password"/>
</data-source>
</data-sources>
<!-- 数据源配置完毕 -->
这段标记比较简单,就不一一解释了,只要记住数据源名称就行了 ,比如我这里自己起的数据源名称是“dataSource”,在struts2.0中,部分标记的属性会有所不同
3、在Action中获得数据源连接.
现拿用户登陆为引介绍下数据源的链接
/**
* @see 登陆验证函数
* @param username
* @param password
* @author 耀阳科技
* @deprecated 修改时请注明修改起始位置及时间
* @version 1.0
*/
public class LoginBean {
//获得数据库连接
public Connection getDBConnection(DataSource db){
try{
return db.getConnection();
}catch(SQLException e){
System.out.println("获得数据库连接失败! "+ e.toString());
return null;
}
}
//检查用户身份是否合法
public Boolean checkUser (Connection conn,String tableName,String username,String
password)
throws SQLException{
Boolean returnresult = false;
PreparedStatement pstmt = null;
ResultSet rs = null;
if(conn != null){
//检索用户名和密码是否正确
String strsql = "select * form "+tableName+" where username = ?";
pstmt = conn.prepareStatement(strsql);
pstmt.setString(1, username);
rs = pstmt.executeQuery();
if(rs.next()){
if(password.equals(rs.getString(password))){
returnresult = true;
}else{
returnresult = false;
}
}else{
returnresult = false;
}
}
try{
if(rs!=null){
rs.close();
}
if(pstmt!=null){
pstmt.close();
}
if(rs!=null){
rs.close();
}
}catch(SQLException sqle){
sqle.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
return returnresult;
}
}
分享到:
相关推荐
、Struts2、Spring3.0、Hibernate3.3等技术编写的源代码。 整个项目采用MVC模式,应用Struts Spring Hibernate三个框架实现了一个小区管理系统。分为View层(显示层)、Control层(控制层)、Service层(业务逻辑层...
表现层框架struts 1:讲解struts 1的入门配置、核心组件、标签库、国际化、数据校验、sitemesh集成、数据库开发技术,并分别实现与hibernate、ibatis持久层框架的集成开发。.. 表现层框架struts 2:讲解struts 2...
表现层框架struts 1:讲解struts 1的入门配置、核心组件、标签库、国际化、数据校验、sitemesh集成、数据库开发技术,并分别实现与hibernate、ibatis持久层框架的集成开发。.. 表现层框架struts 2:讲解struts 2...
表现层框架struts 1:讲解struts 1的入门配置、核心组件、标签库、国际化、数据校验、sitemesh集成、数据库开发技术,并分别实现与hibernate、ibatis持久层框架的集成开发。.. 表现层框架struts 2:讲解struts 2...
表现层框架Struts 1:讲解Struts 1的入门配置、核心组件、标签库、国际化、数据校验、Sitemesh集成、数据库开发技术,并分别实现与Hibernate、iBATIS持久层框架的集成开发。..表现层框架Struts 2:讲解Struts 2的...
基于注解Annotation的最新版SSH(Struts2.3.7+Hibernate4.1.9+Spring3.2.0)整合开发,真正实现零配置。记得修改数据源。
使用Struts的Action来对数据库进行增、删、改、查四项操作 <br/>1、数据库MySQL,创建数据库 Pagination MySQL.sql用来创建表结构 <br/>连接方式有两种,一种直接JDBC,一种通过连接池,代码中有说明...
在配置完LobHandler后, 还需要将其注入到sessionFactory的Bean中,下面是调用后的sessionFactory Bean的配置: 代码 6 将lobHandler注入到sessionFactory中的配置 1. 2. … 3. 4. class="org.springframework...
3.4.1 配置数据源 95 3.4.2 连接ODBC数据源 97 案例3-4 实现不同类型数据库之间的数据迁移 99 第4章 Eclipse中Web应用开发 103 4.1 Eclipse中Java Web开发环境的搭建 103 4.1.1 安装应用服务器Tomcat ...
该项目是一个简单的用来测试数据库连接的系统,通过简单的登录页面来验证数据库的连接是否成功,该系统使用struts框架实现,数据库为SQL Server 2000,数据源名为user,数据库为login,存放用户表为person。
7.6.1 JDBC连接SQLServer2005数据库 76.2 网站用户注册 7.7 疑难解惑 7.7.1 Prepared Statement与Statement 7.7.2 预编译的理解 7.8 精彩回顾 第8章 浅尝辄止 ——初识Struts2 8.1 本章学习任务 8.1.1 本章知识体系...
支持DB2、PostgreSQL、MySQL、Oracle、Sybase、Microsoft SQL Server、SAP DB、Informix、HypersonicSQL、Ingres、Progress、Mckoi SQL、Interbase、Pointbase、FrontBase、Firebird等多种数据。 3、国际化:...
SQL Server数据库设计和高级查询、深入.NET平台和C#编程、在.NET框架下开发三层结构数据库应用系统、JavaScript客户端验证和页面特效制作、使用Java实现面向对象编程、使用JSP开发WEB应用系统、职业导向训练、项目...
130、如何防止在JSP或SERVLET中的输出不被BROWSER保存在CACHE中? 32 131、在JSP中如何设置COOKIE? 32 132、在JSP中如何删除一个COOKIE? 32 133、在一个JSP的请求处理中如何停止JSP的执行 33 134、在JSP中如何定义...
SQL Server数据库设计和高级查询、深入.NET平台和C#编程、在.NET框架下开发三层结构数据库应用系统、JavaScript客户端验证和页面特效制作、使用Java实现面向对象编程、使用JSP开发WEB应用系统、职业导向训练、项目...
JEECG敏捷框架可以有效解决信息孤岛问题,生成统一代码、统一规范、统一设计思路,使你能在这个平台上,快速开发出高效高质量代码,缩短项目开发周期。 功能特点 • 架构技术: Struts2+Spring3+Hibernate4+...
SQL Server数据库设计和高级查询、深入.NET平台和C#编程、在.NET框架下开发三层结构数据库应用系统、JavaScript客户端验证和页面特效制作、使用Java实现面向对象编程、使用JSP开发WEB应用系统、职业导向训练、项目...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...