您的位置:首页 > 其它

为项目增加ibatis支持

2015-02-12 11:35 274 查看
需要做三件事

1 add jar file at pom.xml

<dependency>
			<groupId>org.apache.ibatis</groupId>
			<artifactId>ibatis-sqlmap</artifactId>
			<version>2.3.4.726</version>
		</dependency>
		<dependency>
			<groupId>com.upyoo.vmware</groupId>
			<artifactId>dom4j</artifactId>
			<version>1.6.1</version>
		</dependency>
		<dependency>
			<groupId>com.upyoo.vmware</groupId>
			<artifactId>jdbc</artifactId>
			<version>5.1.34</version>
		</dependency>


2 add xml [entity.xml and sql]



2.1 clusterviewmodel.xml

2.2 sqlMapConfig.xml

2.3 db.properties

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">

<sqlMap namespace="clusterviewmodel">
	<typeAlias alias="ClusterViewModel"
		type="com.upyoo.vmware.viewandmodel.ClusterViewModel" />

	<statement id="insertClusterViewModel">
		insert into cluster(id, description_name, vcenter_id, host_count,
		vm_count,
		cpu_core_count, vcpu_core_count, cpu_used_scale,
		cpu_portion_scale, memory_cap, vmemory_cap,
		memory_used_cap, memory_used_scale,
		memory_portion_scale, store_cap, store_used_cap,
		store_sas_cap, store_sas_used_cap, store_sas_used_scale,
		store_sata_cap, store_sata_used_cap,
		store_sata_used_scale, vstore_cap, store_portion_scale,last_update_time

		) values(#id#, #description_name#, #vcenter_id#,#host_count#,
		#vm_count#,
		#cpu_core_count#, #vcpu_core_count#, #cpu_used_scale#,
		#cpu_portion_scale#, #memory_cap#, #vmemory_cap#,
		#memory_used_cap#, #memory_used_scale#,
		#memory_portion_scale#, #store_cap#, #store_used_cap#,
		#store_sas_cap#, #store_sas_used_cap#, #store_sas_used_scale#,
		#store_sata_cap#, #store_sata_used_cap#,
		#store_sata_used_scale#, #vstore_cap#, #store_portion_scale#,#last_update_time#

		)ON DUPLICATE KEY UPDATE
		vcenter_id=#vcenter_id#,description_name=#description_name#,host_count=#host_count#,
		vm_count=#vm_count#,
		cpu_core_count=#cpu_core_count#, vcpu_core_count=#vcpu_core_count#, cpu_used_scale=#cpu_used_scale#,
		cpu_portion_scale=#cpu_portion_scale#, memory_cap=#memory_cap#, vmemory_cap=#vmemory_cap#,
		memory_used_cap=#memory_used_cap#,
		memory_used_scale=#memory_used_scale#,
		memory_portion_scale=#memory_portion_scale#, store_cap=#store_cap#, store_used_cap=#store_used_cap#,
		store_sas_cap=#store_sas_cap#, store_sas_used_cap=#store_sas_used_cap#, store_sas_used_scale=#store_sas_used_scale#,
		store_sata_cap=#store_sata_cap#, store_sata_used_cap=#store_sata_used_cap#,
		store_sata_used_scale=#store_sata_used_scale#,
		vstore_cap=#vstore_cap#, store_portion_scale=#store_portion_scale#,last_update_time=#last_update_time#
	</statement>
	<statement id="checkFromCluster" resultClass="ClusterViewModel">
		select id from cluster where 1=1

	</statement>

</sqlMap>


<?xml version="1.0" encoding="UTF-8" ?>  
		<!DOCTYPE sqlMapConfig  
		PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"  
		"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
	<properties resource="db.properties" />
	<settings cacheModelsEnabled="true" enhancementEnabled="true"
		lazyLoadingEnabled="true" maxRequests="32" maxSessions="10"
		maxTransactions="5" useStatementNamespaces="false" />
	<!-- 事务管理器 -->
	<transactionManager type="JDBC">
		<dataSource type="SIMPLE">
			<property name="JDBC.Driver" value="${driver}" />
			<property name="JDBC.ConnectionURL" value="${url}" />
			<property name="JDBC.Username" value="${user}" />
			<property name="JDBC.Password" value="${password}" />
		</dataSource>
	</transactionManager>

	<sqlMap resource="sqlmap/clusterviewmodel.xml" />
	<sqlMap resource="sqlmap/vcenterviewmodel.xml" /> 
	<sqlMap resource="sqlmap/VMachine.xml" /> 
</sqlMapConfig>


#driver=com.mysql.jdbc.Driver
#url=jdbc:mysql://localhost:3306/anentvc
#user=root
#password=root


3 use it

package com.upyoo.test;
import java.io.IOException;
import java.io.Reader;
import java.sql.SQLException;
import java.util.List;

import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
import com.upyoo.vmware.viewandmodel.VCenterViewModel;
public class IBatisDemo {
	@SuppressWarnings("unchecked")
	public static void main(String[] args) throws IOException{
		
		String config = "sqlMapConfig.xml";
		
		Reader reader = Resources.getResourceAsReader(config);
		SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
//		ClusterViewModel cViewModel = new ClusterViewModel();
//		cViewModel.setId(Generate.getRpid());
//		sqlMap.insert("insertClusterViewModel", cViewModel);
		
		VCenterViewModel center = new VCenterViewModel();
		center.setId("fortest2");
		center.setCluster_count(18);
		center.setDescription_name("tes1t");
		try {
			sqlMap.insert("insertvcenterviewmodel1", center);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println(e.getMessage());
		}
		List<VCenterViewModel> list;
		try {
			list = sqlMap.queryForList("checkFromVCenterViewModel");
			for (VCenterViewModel vCenterViewModel : list) {
				System.out.println(vCenterViewModel);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: