`

Struts2 整合Spring使用jdbc连接Oracle数据库

阅读更多

1.首先加入Spring jar 包

commons-logging.jar

jta.jar

spring.jar

2.加入Struts2 jar包

commons-fileupload-1.2.1.jar

 

commons-logging-api-1.1.jar

freemarker-2.3.15.jar

ognl-2.7.3.jar

struts2-core-2.1.8.1.jar

xwork-core-2.1.6.jar

  struts2-spring-plugin-2.1.8.1.jar

 

注:struts2-spring-plugin-2.1.8.1.jar包是Struts2和Spring交互的桥梁,如果你仅仅使用Struts2的话不加也行,但是这里是必须的。

 

3.在Src下新建一个applicationContext.xml文件,内容如下:

 

<?xml version="1.0" encoding="UTF-8"?>

 

<beans xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">

<bean id="DbConnection" class="com.hw.util.DbConnection">

<property name="url">

<value>jdbc:oracle:thin:@localhost:1521:orcl</value>

</property>

<property name="user">

<value>scott</value>

</property>

<property name="passwrod">

<value>tiger</value>

</property>

</bean>

 

<bean id="UserDao" class="com.hw.dao.UserDao">

<property name="dbc">

<ref bean="DbConnection" />

</property>

</bean>

<bean id="ui" class="com.hw.service.UserImpl">

<property name="dao">

<ref bean="UserDao" />

</property>

</bean>

</beans>

注:具体内容请看下面解释:

 

4.编写连接数据库类DbConnection.java

 

 

package com.hw.util;

 

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

 

/**

 * @author 李高松

 * @function 创建数据库连接

 * @version 2011年2月15日16:38:56

 * 

 */

public class DbConnection {

private String url;

private String user;

private String password;


public void setUrl(String url) {

this.url = url;

}


public void setUser(String user) {

this.user = user;

}


public void setPasswrod(String passwrod) {

this.password = passwrod;

}

 

static {

try {

Class.forName("oracle.jdbc.driver.OracleDriver");

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

}

 

public Connection getConn() {

Connection conn = null;

try {

conn = DriverManager.getConnection(url, user, password);

} catch (SQLException e) {

e.printStackTrace();

}

   return conn;

  }

}


注:url、user、password对应applicationContext.xml中的url、user、password。这里使用Spring的注入思想;配置方法为:

<bean id="DbConnection" class="com.hw.util.DbConnection">

 

<property name="url">

<value>jdbc:oracle:thin:@localhost:1521:orcl</value>

</property>

<property name="user">

<value>scott</value>

</property>

<property name="passwrod">

<value>tiger</value>

</property>

</bean>

 

 

5.编写UserDaoCRUD操作,这里不再书写,这里需要在applicationContext.xml 中做注册配置如下

 

 

<bean id="UserDao" class="com.hw.dao.UserDao">

<property name="dbc">

<ref bean="DbConnection" />

</property>

</bean>

注:userDao中必须注入dbc属性,添加一个set方法,使用dbc进行数据库连接。

 

6.编写业务层代码:UserImpl.java,这里代码不再书写,applicationContext.xml 中做注册配置如下

 

<bean id="ui" class="com.hw.service.UserImpl">

 

<property name="dao">

<ref bean="UserDao" />

</property>

</bean>

注:UserImpl中必须注入dao属性,添加一个set方法,使用dao进行数据库的操作;

 

 

7.编写控制层代码:userAciton.java 

 

注:userAciton.java 中必须注入ui属性,添加一个set方法,使用ui调用相应的业务逻辑

 

8.编写struts.xml 配置文件

 

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="default" extends="struts-default" namespace="/"> <action name="addAction" class="com.hw.action.UserAction" method="add"> <result name="success">/index.jsp</result> </action> <action name="queryAllAction" class="com.hw.action.UserAction" method="query"> <result name="success">/queryall.jsp</result> </action> <action name="queryById" class="com.hw.action.UserAction" method="queryById"> <result name="success">/modifyuser.jsp</result> </action> <action name="update" class="com.hw.action.UserAction" method="modify"> <result type="redirect">queryAllAction</result> </action> <action name="del" class="com.hw.action.UserAction" method="move"> <result type="redirect">queryAllAction</result> </action> </package> </struts>


9.配置web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
</context-param>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

</web-app>


10.编写相应的UI界面这样就完成了

 

 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%@ taglib prefix="s" uri="/struts-tags"%>

<html>

<head>

<title>My JSP 'index.jsp' starting page</title>

<s:head/>

</head>

 

<body>

<div align="center">

<s:form action="addAction">

<s:textfield label="编号" name="user.id"></s:textfield>

<s:textfield label="用户名" name="user.username"></s:textfield>

<s:password label="密码" name="user.password"></s:password>

<s:textfield label="角色编号" name="user.rid"></s:textfield>

<s:submit label="提交"></s:submit>

<s:reset label="重置"></s:reset>

</s:form>

</div>

</body>

</html>

分享到:
评论
2 楼 lgs0626 2011-11-29  
sblig 写道

public class DbConnection {
private static Connection con;
....
static{
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			con = DriverManager.getConnection(url,user,passwd);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		catch (SQLException e) {
			e.printStackTrace();
		}
	}
	public static synchronized Connection getConn(){
		if (null == con) {
			try {
				con = DriverManager.getConnection(url,user,passwd);
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		return con;
	}
....
}


    新手的一点点想法,能这样写吗?




你知道静态块的含义吗?
static{

     ...........

    }
1 楼 sblig 2011-11-24  

public class DbConnection {
private static Connection con;
....
static{
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			con = DriverManager.getConnection(url,user,passwd);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		catch (SQLException e) {
			e.printStackTrace();
		}
	}
	public static synchronized Connection getConn(){
		if (null == con) {
			try {
				con = DriverManager.getConnection(url,user,passwd);
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		return con;
	}
....
}


    新手的一点点想法,能这样写吗?

相关推荐

    struts2,spring,jdbc整合所需jar包

    Struts2、Spring和JDBC是Java开发...总结来说,Struts2、Spring和JDBC的整合涉及到多种jar包,包括框架的核心库、数据库驱动、连接池实现以及其他的辅助库。理解这些库的作用并正确配置,是成功整合这三个框架的基础。

    struts2 实现oracle数据库的增删改查

    在本教程中,我们将深入探讨如何利用Struts2来实现对Oracle数据库的CRUD(创建、读取、更新和删除)操作。 首先,我们需要在项目中集成Struts2框架。这通常涉及到以下几个步骤: 1. 添加Struts2的核心库到项目的类...

    s2si struts2+spring+ibats框架的留言本,oracle数据库

    【标题】"s2si struts2+spring+ibatis框架的留言本,oracle数据库"是一个基于Java技术的Web应用程序示例,它演示了如何整合Struts2、Spring和iBatis这三大流行框架来构建一个功能完善的系统。这个项目以留言本为应用...

    struts2+spring+ibatis+oracle整合的登陆系统

    总结来说,"struts2+spring+ibatis+oracle整合的登陆系统"是一个综合性的Web应用示例,它展示了如何利用Struts2处理用户交互,Spring管理依赖和事务,iBatis执行数据库操作,以及Oracle存储数据。这样的整合方案为...

    struts2+spring+ibatis +oracle整合 列子

    在“struts2+spring+ibatis +oracle整合 列子”中,我们可以预期文件`s2sabatis`包含了整合这三个框架和Oracle数据库的相关配置和代码示例。可能包括以下几个方面: 1. **配置文件**:如`struts.xml`定义了Struts2...

    J2EE博客系统 struts2+spring+hibernate+oracle+lucene

    本篇将深入探讨一个基于J2EE的博客系统,该系统采用经典的“s2sh”整合框架,即Struts2、Spring和Hibernate,以及Oracle数据库和Lucene全文搜索引擎,旨在构建高效、稳定且功能齐全的博客平台。 首先,Struts2作为...

    struts2+spring+springstruts2+spring+springstruts2+spring+spring

    - **拦截器**:Struts2使用拦截器机制处理请求,提供了强大的功能如文件上传、异常处理等。 - **类型转换和验证**:自动进行表单数据的类型转换,并且可以自定义验证规则,确保数据的正确性。 - **国际化**:支持多...

    struts2+spring+hibernate+oracle 需要用到的基本jar包

    Oracle则是一款广泛使用的大型关系型数据库管理系统。这个压缩包包含的是一套用于整合SSH框架与Oracle数据库所需的基础JAR文件。以下是这些技术的相关知识点: 1. **Struts2**: - Struts2是一个基于MVC设计模式的...

    SSH连接Oracle数据库.txt

    ### SSH框架连接Oracle数据库的关键配置知识点 在基于Java 2 Platform, Enterprise Edition (J2EE) 的Web开发中,SSH(Struts + Spring + Hibernate)框架是常用的开发组合之一。SSH框架结合了Struts用于MVC(Model...

    SSH 框架集成连接Oracle数据库的配置

    SSH框架集成连接Oracle数据库的配置是一项常见的开发任务,主要涉及Spring、Struts2和Hibernate这三个流行Java开源框架的协同工作。下面将详细讲解这个过程。 首先,SSH框架是Java Web开发中的三大神器,它们分别是...

    struts2+spring+ibaites+oracle+CURD

    例如,Struts2 的核心库、Spring 框架的 JAR 包、iBatis 的库文件,以及可能的 Oracle JDBC 驱动。这些库文件是构建和运行基于 Struts2、Spring 和 iBatis 的应用所必需的。 开发一个整合了这四种技术的项目,首先...

    ssh整合例子,struts+spring+hibernate+oracle整合

    9. **Spring整合Struts**:使用Spring的Struts2插件,使Action类由Spring管理,实现依赖注入。 10. **测试**:编写JUnit测试用例验证各层功能,确保整合正确无误。 完成上述步骤后,开发者就可以利用SSH整合的优势...

    spring+struts+hibernate+jdbc+oracle+jms+flex+flamingle+jquery+plsql

    Struts2是另一款流行的MVC框架,它基于Model2模式,提供了强大的Action和Interceptor机制,与Spring良好集成,共同构建Web应用的控制层。 Hibernate是一个持久化框架,它简化了Java对象与关系数据库之间的交互,...

    Struts2+Spring3+Hibernate4必备整合包

    这里提供的"Struts2+Spring3+Hibernate4必备整合包"是一个集合了这三个框架所需库的压缩文件,方便开发者快速搭建项目环境。 Struts2作为表现层框架,主要负责处理HTTP请求,展示视图,以及控制应用程序的流程。它...

    struts+spring+ibties+oracle整合

    2. **导入库**:在项目中引入Struts、Spring、Hibernate的相关jar包,以及Oracle的JDBC驱动。 3. **配置Struts**:在struts-config.xml中配置Action和ActionForward,定义请求处理流程。 4. **配置Spring**:创建...

    struts2 hibernate spring整合包

    - 在Hibernate配置文件中指定Oracle的JDBC驱动类和URL,以便进行数据库连接。 6. **实战开发**: - 编写Action类,处理用户请求,调用Service层方法。 - 设计DAO接口和实现,利用Hibernate进行数据库操作。 - ...

    SSH框架实现增删改查,Oracle数据库

    SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架,用于构建高效、可扩展的企业级应用。本教程将详细介绍如何利用SSH框架结合Oracle数据库来实现基本的CRUD(Create、Read、...

    Struts2连接oracle数据库增删改查实例的实现[方案].doc

    将这些驱动添加到项目的类路径(通常是`WEB-INF/lib`目录)中,使得Struts2可以建立与Oracle数据库的连接。 2. **创建表**:在数据库中创建了一个名为`users`的表,用于存储用户数据。表结构包含两个字段:`id`...

    SSH+oracle所需全部包

    SSH+Oracle所需全部包指的是在Java开发中,用于Spring、Struts和Hibernate(简称SSH)三大框架整合,并且能够与Oracle数据库进行交互的所有必要库文件。这些库文件通常包括JAR包,它们提供了各种功能,使得开发者...

    S2SH框架配置 Oracle数据库完整事例(内有oracle数据库文件)

    在IT行业中,S2SH框架是指Struts2、Spring和Hibernate三个开源框架的组合,它是一种常见的Java Web开发解决方案。这个框架配置Oracle数据库的完整事例涵盖了如何将这三大框架与Oracle数据库集成的过程,这对于Java...

Global site tag (gtag.js) - Google Analytics