`
kang
  • 浏览: 474655 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

S2DAO中例子程序连接MySQL和SQL Server

    博客分类:
  • NBS
阅读更多

<!-- --><!-- --> <!-- -->

S2DAO 中例子程序使用的 HSQL ,默认是内存表,增删改操作后,只能使用 select 所有数据,打印所有数据来看效果,但是结果并不清楚。

 

花了不少时间进行调查,最终找到了 S2DAO 中例子程序连接 MySQL 数据库的方法。

 

需要修改三个文件:

 

1.修改 s2DAO\s2-dao\src\main\resources\dbms.properties
=org.seasar.dao.dbms.Standard 改成 = org.seasar.dao.dbms.MySQL

 

即将指定数据库从 HSQL 改成 MySQL

 

-》S2DAO例子程序的默认标准配置是内存数据库HSQL。(20090519追加)

 

 

2.s2DAO\s2-dao\src\test\resources\j2ee.dicon ,注释掉 hsqldb 部分的配置部分(默认设置),打开 MySQL 的配置部分并进行设置:

 

 

            <component name="xaDataSource"

                        class="org.seasar.extension.dbcp.impl.XADataSourceImpl">

                        <property name="driverClassName">

                                    "com.mysql.jdbc.Driver"

                        </property>

                        <property name="URL">

                                    "jdbc:mysql://localhost:3306/test"

                        </property>

                        <property name="user">"root"</property>

                        <property name="password">"mysql"</property>

            </component> 
 

 

 

 

3.s2DAO/s2-dao-examples/src/main/resources/examples/dao/EmployeeDepartmentDao.dicon 配置文件中,添加 <include path="j2ee.dicon"/>

 

核心配置如下(一个 dicon 配置文件中可以配置多个 DAO ):

<components>

       <include path="dao.dicon"/>

       <include path="j2ee.dicon"/>

      

       <component class="examples.dao.EmployeeDao">

              <aspect>dao.interceptor</aspect>

       </component>

       <component class="examples.dao.DepartmentDao">

              <aspect>dao.interceptor</aspect>

       </component>

      

</components> 
 

 

MySQL 的数据库驱动 jar 包加到项目的 buildpath 中来。

 

 

最后,就可以在 EmployeeDepartmentDaoClient 文件中进行测试,对雇员表和部门表同时进行操作,增删改查都可以了,即能对传统意义上的数据库进行相应操作。

 

因为项目要使用 SQL Server 数据库,又如法炮制,连接了 SQL Server 数据库,搞定。

 

接下来,有两个问题:

 

1 是数据库增删改操作的事务处理问题(现在无论我是否在 EmployeeDepartmentDao.dicon 中配置 Exception 项(根据官网在自动异常处理那一段的说明和示例),在发生 SQL 异常时,都会抛出未捕获异常,没有实现事务管理,比如回滚等 );

 

有同事认为应该是在 Intra-mart jta-10.dicon 文件中进行配置,但是还没试验出来。

 

2 是和 Intra-mart 的联合问题,怎样将两者有机结合起来,我们还没调查清楚。

 

这两个问题下周要继续调查。

 

 

 

分享到:
评论
3 楼 kang 2008-12-23  
谢了,我来试一下。我已经加你MSN了
2 楼 qbqopen 2008-12-22  
事务我实现了,但是用的是JTA,不懂这个东西

参照
http://snowhiro.web.fc2.com/seasar2/Seasar2_04_S2Dao_02.html

写个service,调用dao方法

把requiredTx和dao.interceptor切入到servic上

OK了

MSN:tobeq@msn.com
QQ:123099663
有时间交流一下
1 楼 qbqopen 2008-12-22  


我也在调查S2Dao的事务

试验了一天也没出来

每次调用自动生成的数据库方法都自动提交

是不是用什么配置不自动提交的地方呢?

相关推荐

    S2dao架包集合

    要深入理解和使用S2dao,建议阅读官方文档,了解其详细配置和高级用法,例如:动态SQL、结果集分页、缓存支持以及如何自定义扩展等。 总之,S2dao是一个优秀的轻量级数据访问框架,它通过自动化和简化的API,为Java...

    s2-dao-1.0.50.zip

    - **s2dao-tiger**:这可能是针对特定JDBC驱动(如Oracle、MySQL等)或Java版本的扩展库,提供了针对不同数据库特性的定制化功能。 - **doc**:文档文件,可能包含S2-DAO的用户手册、API参考、教程或者示例代码,是...

    s2sh mysql增删改查的例子

    在这个例子中,Spring将被用来配置和管理数据源,以及DAO(数据访问对象)和Service层的bean。你可能还会看到Spring如何与Hibernate集成,实现数据库操作。 接下来,Hibernate是ORM(对象关系映射)框架,它允许...

    s2sh_mysql.rar_s2sh_s2sh mysql_struts2 mysql

    Struts2、Spring和Hibernate(通常简称为S2SH)是一种经典的Java web开发框架组合,它们各自负责应用程序的不同层:Struts2处理表现层,Spring管理业务逻辑和依赖注入,而Hibernate则作为对象关系映射工具,负责...

    s2sh和mysql搭建的框架

    在这个“S2SH和MySQL搭建的框架”中,开发者使用这些技术与MySQL数据库协同工作,创建了一个基础的登录系统。 Struts2是ActionServlet的增强版,提供了一种更强大的处理HTTP请求的方式,并且拥有丰富的插件体系和...

    Struts2与Spring、Hibernate的集成(S2SH+Mysql)简单实例

    Struts2、Spring和Hibernate是Java Web开发中的三大主流框架,它们各自负责应用程序的不同层面:Struts2专注于表现层,Spring则在业务逻辑层提供强大的支持,而Hibernate则是持久层的王者,负责数据库操作。...

    s2sh增删改查例子

    【标题】"S2SH增删改查例子"揭示了一个基于Struts2.0、Spring和Hibernate集成的Web应用程序示例,它实现了基本的数据操作功能,即增(Add)、删(Delete)、改(Modify)和查(Query)。S2SH是Java Web开发中的经典...

    学生信息后台管理系统 (S2SH)(含MySQL数据库)

    【学生信息后台管理系统(S2SH)(含MySQL数据库)】是一个基于SSH(Struts2、Hibernate、Spring)框架开发的项目,适用于大二学生学习和实践。SSH框架是Java Web开发中的经典组合,它提供了模型-视图-控制器(MVC)...

    S2S3H3整合以及泛型Dao与Service封装

    本程序整合了struts-2.2.3.1+spring-framework-3.1.0+hibernate-distribution-3.6.8+JSON+MySQL+Annotation,并且对Dao和Service进行了封装,内含.jar包,并且解决了一对多双向关联的could not initialize proxy - ...

    s2sh做的登录和注册 myeclipse

    【标题】"s2sh做的登录和注册 myeclipse"涉及的是基于MyEclipse开发的Web应用程序,使用了...通过这个项目,你可以实践如何在MyEclipse中创建和配置项目,如何编写Action、Service和DAO,以及如何设计和使用数据库表。

    用户信息管理s2sh+mysql+page

    在“用户信息管理s2sh+mysql+page”这个项目中,我们可以推测这是一个基于Struts2(S)、Spring(S)和Hibernate(H)的Java Web应用程序,用于管理和处理用户的个人信息,同时利用MySQL数据库存储数据,并通过分页...

    S2SH+MySql做的分页

    本项目以"S2SH+MySql"(即Struts2、Hibernate、Spring与MySQL数据库)为基础,实现了分页功能,下面将详细介绍这一技术及其实施过程。 首先,Struts2是Java企业级开发中的一个MVC框架,负责处理用户请求并转发到...

    个人理财管理系统(S2SH+Extjs)附带数据sql

    在个人理财管理系统中,Spring用于管理各个服务类和DAO(Data Access Object)对象,实现事务管理,并整合其他组件如Struts2和Hibernate。 四、Hibernate ORM Hibernate是一个强大的持久化框架,实现了Java对象和...

    SSH.rar_s2sh_ssh struts2_ssh+mysql_struts2 hibernate_struts2 mys

    这个名为"SSH.rar_s2sh_ssh+mysql_struts2_hibernate_struts2_mys"的压缩包文件,可能是关于如何整合这些技术并配合MySQL数据库进行项目开发的文档资料。 首先,我们来看Struts2,这是一个基于MVC设计模式的Java ...

    S2北大青鸟javaMysql_CH03_示例,上机练习,课后作业等参考答案.zip

    在本压缩包“S2北大青鸟javaMysql_CH03_示例,上机练习,课后作业等参考答案.zip”中,我们主要聚焦于Java编程语言与MySQL数据库的结合应用。这个资源集合旨在帮助学习者深入理解如何在实际项目中使用Java进行MySQL...

    s2sh所需jar包

    标题中的“s2sh所需jar包”指的是在搭建基于Struts2、Spring和Hibernate整合的Web应用程序(通常称为S2SH框架)时所必需的Java类库文件。这些jar包是构建这种三层架构(表现层、业务逻辑层、数据访问层)应用的基础...

    SSM/S2SH整合要用到的jar包下载

    SSM和S2SH是两种常见的Java Web应用程序框架组合,它们分别是Spring、Spring MVC、MyBatis(SSM)和Struts2、Spring、Hibernate(S2SH)。这两个框架组合在企业级应用开发中广泛使用,能够有效地实现业务逻辑、数据...

    S2SH项目框架,能立即用来开发

    S2SH项目框架是Web应用开发中常用的集成框架,它结合了Struts2、Spring3和Hibernate3这三大开源框架,以提供一个高效且灵活的开发环境。这个框架的组合旨在简化应用程序的架构,提高代码的可维护性和可扩展性。 ...

    S2S2H3三大框架整合写的增删查改,源码

    【标题】"S2S2H3三大框架整合写的增删查改,源码"指的是一个集成Spring、Struts2和Hibernate3(简称SSH)的Web应用示例,该示例实现了基本的数据操作功能,包括增加(Insert)、删除(Delete)、查询(Query)和修改...

    S2SH 框架所有jar包

    在实际的S2SH项目开发中,会包含一系列的jar包,这些jar包包含了上述三个框架的核心库和其他必要的依赖,例如: - Struts 2的jar包:struts2-core、struts2-convention、struts2-dojo-plugin等,用于实现MVC架构和...

Global site tag (gtag.js) - Google Analytics