`
snoopy7713
  • 浏览: 1151884 次
  • 性别: Icon_minigender_2
  • 来自: 火星郊区
博客专栏
Group-logo
OSGi
浏览量:0
社区版块
存档分类
最新评论

Eclipse rcp/rap 开发经验总结(11) -rcp/rap与spring ibatis集成

    博客分类:
  • RAP
阅读更多

1. rcp/rap spring 集成

Activator rcp/rap 启动时需要加载的类, 只需要加载一遍,所以与spring 集成的时候一般是在这个类里面加载springApplicationContext

具体如下:

Activator 里添加如下代码:

private ApplicationContext context ;

this. context = new ClassPathXmlApplicationContext( "config/aplicationContext.xml" );

common.xml 中,加载如下信息:

1.1           加载数据源

举例:

 

<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property><property name="url" value="jdbc:oracle:thin:@xx.xx.xx.xx:xxxxxx"></property>
<property name="username" value="xxxx"></property>
<property name="password" value="xxxx"></property>
</bean>

 

 

1.2 加载 ibatis sqlMapConfig

举例:

<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation" value="sqlMapConfig.xml"></property>
</bean>

 

1.3 加载与数据库相关的:连接数据库、关闭数据库、释放 ResultSet ,对数据库的增删改查等操作的类或配置文件

举例:

 

 

<bean id="eeeDao" class="com.jlins.dao.xxxDao">
<property name="sqlMapClient" ref="sqlMapClient"></property>
</bean>
引入一些具体的配置文件
<import resource="xxx/xxx.xml" />

 

 

2. rcp/rap ibatis 集成

这个对象是iBatis 操作数据库的接口(执行CRUD 等操作),它也可以执行事务管理等操作。这个类是我们使用iBATIS 的最主要的类。它是线程安全的。通常,将它定义为单例。(与hibernatesessionFactory 的定义类似)

SqlMapClient 提供了如下的一些功能:

显式的调用事务。

执行对数据库的常规操作。

批量处理非查询的SQL 语句。

 

<sqlMapConfig>	
<sqlMap resource="xxx.xml"/>
</sqlMapConfig>  
其中xxxxxxx.xml定义了一些数据库增删改查
如:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap
PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="people">
	<typeAlias alias="person" type="Person" />
	<update id="updateNameById" parameterClass="person">
		update
		person
		set name =#name#
		where id =#id# 
	</update>
</sqlMap>

 

 

特殊的:如果传入的参数是一个变量,比如如下这种情况,要在数据库里查询一个序列,但是序列名不是一个常量,而是一个变量,这时候不能前后加# ,而用$ 符。

<select id="getSequenceValue"  resultMap="allResultMap">
		<![CDATA[
		select $seqName$.NEXTVAL||'' sequenceid  from dual  
		 ]]>
</select>

 

 

 

分享到:
评论

相关推荐

    eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar.gz

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar.gz) 适用于Linux x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-win32-x86_64.zip

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-win32-x86_64.zip) 适用于Windows x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-macosx-cocoa-x86_64.dmg

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-macosx-cocoa-x86_64.dmg) 适用于macOS x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse RCP Plug-in开发自学教程.pdf

    eclipse RCP Plug-in开发自学教程 eclipse RCP(Rich Client Platform)是一种基于eclipse的插件式开发平台,允许开发者使用eclipse结构风格设计弹性的可扩展的应用程序。RCP插件式开发方式可以重用eclipse中的方法...

    eclipse-rcp-2022-06-R-linux-gtk-aarch64.tar.gz

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-linux-gtk-aarch64.tar.gz) 适用于Linux aarch64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    Eclipse Rcp

    Eclipse RCP是一种基于Eclipse平台的富客户端平台技术,它允许...Eclipse RCP的应用程序继承了Eclipse的风格与功能,通过RCP构建的应用程序可以脱离Eclipse环境独立运行,这对于开发Java桌面应用程序具有重要的意义。

    eclipse rcp应用系统开发方法与实战源代码.zip

    在"eclipse rcp应用系统开发方法与实战源代码.zip"中,我们可以学习到以下关键知识点: 1. **Eclipse RCP架构**:理解Eclipse RCP的基础架构非常重要,包括插件(Plugins)、工作台(Workbench)、视图(Views)、...

    RCP 开发工具 eclipse-rcp-2020-06-R-linux-x86

    这个压缩包"eclipse-rcp-2020-06-R-linux-x86"是专门为Linux x86(AMD)平台设计的版本,包含了开发基于Eclipse RCP应用所需的基础工具集。 **Eclipse RCP关键知识点** 1. **基础架构**:Eclipse RCP的核心在于其...

    eclipse-rcp-2022-06-R-macosx-cocoa-aarch64.dmg

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-macosx-cocoa-aarch64.dmg) 适用于macOS aarch64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    Eclipse RCP与Spring OSGi技术详解与最佳实践

    《Eclipse RCP与Spring OSGi:技术详解与最佳实践》共分3个部分:基础篇(第1-5章)详细介绍了与Eclipse RCP相关的一系列核心概念、Eclipse RCP开发环境的搭建,以及SWT、JFace、Forms、Nebula和WindowBuilder等...

    ECLIPSE+RCP应用系统开发方法与实战(PDF 高岗著)

    《ECLIPSE+RCP应用系统开发方法与实战》这本书是高岗先生关于使用Eclipse RCP(Rich Client Platform)进行应用系统开发的一本实战指南。Eclipse RCP是Eclipse IDE的一部分,它提供了一个框架,使得开发者可以构建...

    eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar

    该压缩包 "eclipse-rcp-2022-06-R-linux-x86_64" 中包含的主要文件是 "eclipse-rcp-2022-06-R-linux-x86_64",这可能是一个可执行的Eclipse IDE实例,用于在Linux系统上支持RCP和RAP的开发。为了运行这个IDE,你需要...

    eclipse-rcp-2023-09-R-linux-gtk-x86-64.tar.gz

    本压缩包“eclipse-rcp-2023-09-R-linux-gtk-x86_64.tar.gz”是专为Linux x86_64架构设计的版本,包含了最新的Eclipse RCP开发环境。 首先,我们要理解Linux x86_64,这代表了64位的Linux操作系统。与32位系统相比...

    eclipse-jee-2018-09-win32-x86_64.zip

    8. **RCP和RAP框架**:Eclipse Rich Client Platform (RCP) 和 Rich Ajax Platform (RAP)允许开发人员构建自己的桌面应用程序和Web应用,2018-09版本可能包含相关更新和改进。 9. **持续集成**:Eclipse与Jenkins、...

    eclipse-rcp-2023-12-R-win32-x86-64.zip

    eclipse-rcp-2023-12-R-win32-x86_64.zip 适用于Windows系统

    eclipse-rcp-2023-12-R-linux-gtk-aarch64.tar.gz

    3. **安装与配置**:在Linux ARM系统上部署Eclipse RCP,首先需要下载"eclipse-rcp-2023-12-R-linux-gtk-aarch64.tar.gz"压缩包,然后使用tar命令进行解压。解压后,可以通过执行启动脚本来运行Eclipse RCP。为了...

    eclipse-rcp-2023-12-R-linux-gtk-x86-64.tar.gz

    eclipse-rcp-2023-12-R-linux-gtk-x86_64.tar.gz 适用于Linux x86_64位系统

    eclipse-rcp-2023-09-R-win32-x86-64.zip

    下载并解压"eclipse-rcp-2023-09-R-win32-x86_64.zip"后,你会得到一个Eclipse RCP的开发环境,包括开发工具、运行时组件以及可能包含的一些示例项目。使用Eclipse IDE启动该环境,你可以开始创建、调试和部署你的...

    Eclipse RCP 应用系统开发方法与实战

    "Eclipse RCP 应用系统开发方法与实战"这个主题涵盖了如何利用Eclipse RCP进行高效开发的理论和实践技巧。 1. **Eclipse RCP基础知识**:Eclipse RCP的核心是插件体系结构,允许开发者通过编写插件来扩展功能。每个...

Global site tag (gtag.js) - Google Analytics