⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testdao.java

📁 esri的ArcGIS Server超级学习模板程序(for java)
💻 JAVA
字号:
package com.esri.solutions.jitk.personalization.dao;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.esri.solutions.jitk.personalization.enums.*;
import java.util.*;

public class TestDAO {

	private enum DAO_TYPE {MAPCOMP, BOOKMARK, QUERY, USER};
	/**
	 * @param args
	 */
	public static void main(String[] args) {
	    try{
	    	ApplicationContext context = new ClassPathXmlApplicationContext(
	    			new String[] {"com/esri/solutions/jitk/personalization/spring_config.xml",
	    					"com/esri/solutions/jitk/personalization/dao/sqlmap-config.xml"});
	    	
	    	Criteria c = new Criteria();
	    	//c.setUser("test1");
	    	c.setMapCompositionId("1");
	    	System.out.println("Criteria - User:      " + c.getUser());
	    	System.out.println("Criteria - MapCompID: " + c.getMapCompositionId());
	    	System.out.println("Criteria - OrderBy:   " + c.getMapCompositionOrderBy());
	    	
	    	TestSelectAll(context, DAO_TYPE.QUERY, c);
	    	
	    	TestSelectCount(context, DAO_TYPE.QUERY, c);
	    	
	    	PageInfo pageInfo = new PageInfo();
	    	pageInfo.setPageIndex(1);
	    	pageInfo.setPageSize(2);
	    	TestSelectPage(context, DAO_TYPE.QUERY, c, pageInfo);
	    	
	    	/*
	    	TestSelectAll(context, DAO_TYPE.MAPCOMP, c);
	    	TestSelectAll(context, DAO_TYPE.BOOKMARK, c);
	    	TestSelectAll(context, DAO_TYPE.QUERY, c);
	    	
	    	TestDelete(context, DAO_TYPE.MAPCOMP, "223");
	    	TestDelete(context, DAO_TYPE.BOOKMARK, "223");
	    	TestDelete(context, DAO_TYPE.QUERY, "223");
	    	TestDelete(context, DAO_TYPE.USER, "test2");
	    	
	    	byte[] b = {5,3,2};
	    	TestInsert(context, DAO_TYPE.MAPCOMP, "susa3905", "a big description", "223", null, "big name", b, "0");
	    	TestInsert(context, DAO_TYPE.BOOKMARK, "susa3905", "bookmark 1 description", "223", "223", "bookmark 1 name", b, "0");
	    	TestInsert(context, DAO_TYPE.QUERY, "susa3905", "query 1 description", "223", "223", "query 1 name", b, "0");
	    	TestInsert(context, DAO_TYPE.USER, null, null, "test2", null, null, b, "0");
	    	
	    	TestSelectOne(context, DAO_TYPE.MAPCOMP, "223");
	    	TestSelectOne(context, DAO_TYPE.BOOKMARK, "223");
	    	TestSelectOne(context, DAO_TYPE.QUERY, "223");
	    	TestSelectOne(context, DAO_TYPE.USER, "test2");
	    	
	    	TestSelectCount(context, DAO_TYPE.MAPCOMP, c);
	    	TestSelectCount(context, DAO_TYPE.BOOKMARK, c);
	    	TestSelectCount(context, DAO_TYPE.QUERY, c);
	    	
	    	PageInfo pageInfo = new PageInfo();
	    	c.setMapCompositionOrderBy(MapCompositionOrderBy.name.getMapCompositionOrderBy());
	    	c.setBookmarkOrderBy(BookmarkOrderBy.name.getBookmarkOrderBy());
	    	c.setQueryOrderBy(QueryOrderBy.name.getQueryOrderBy());
	    	c.setUser("susa3905");
	    	pageInfo.setPageIndex(1);
	    	pageInfo.setPageSize(2);
	    	TestSelectPage(context, DAO_TYPE.MAPCOMP, c, pageInfo);
	    	TestSelectPage(context, DAO_TYPE.BOOKMARK, c, pageInfo);
	    	TestSelectPage(context, DAO_TYPE.QUERY, c, pageInfo);
	    	pageInfo.setPageIndex(2);
	    	pageInfo.setPageSize(2);
	    	TestSelectPage(context, DAO_TYPE.MAPCOMP, c, pageInfo);
	    	TestSelectPage(context, DAO_TYPE.BOOKMARK, c, pageInfo);
	    	TestSelectPage(context, DAO_TYPE.QUERY, c, pageInfo);
	    	
	    	TestUpdate(context, DAO_TYPE.MAPCOMP, "223", "name", "new name");
	    	TestUpdate(context, DAO_TYPE.BOOKMARK, "223", "name", "new bookmark name");
	    	TestUpdate(context, DAO_TYPE.QUERY, "223", "name", "new query name");
	    	TestUpdate(context, DAO_TYPE.USER, "test2", "isLocked", "true");
	    	*/
	    	
	    	
	    }catch(Exception ex){
	        ex.printStackTrace();
	    }
	}
	
	private static void TestInsert(ApplicationContext context, DAO_TYPE daoType, String creator, String description, 
			String id, String mapCompId, String name, byte[] b, String isLocked) throws PersonalizationDAOException{
		switch(daoType){
		case MAPCOMP:
			System.out.println("TEST INSERT MAP COMPOSITION...");
			IMapCompositionDAO mapCompDAO = (IMapCompositionDAO)context.getBean("SqlMapMapCompositionDAO");
			MapCompositionRecord mr = new MapCompositionRecord();
			mr.setCreator(creator);
			mr.setDescription(description);
			mr.setId(id);
			mr.setName(name);
			mr.setData(b);
			mapCompDAO.insert(mr);
			break;
		case BOOKMARK:
			System.out.println("TEST INSERT BOOKMARK...");
			IBookmarkDAO bookmarkDAO = (IBookmarkDAO)context.getBean("SqlMapBookmarkDAO");
			BookmarkRecord br = new BookmarkRecord();
			br.setCreator(creator);
			br.setDescription(description);
			br.setId(id);
			br.setName(name);
			br.setMapCompositionId(mapCompId);
			br.setData(b);
			bookmarkDAO.insert(br);
			break;
		case QUERY:
			System.out.println("TEST INSERT QUERY...");
			IQueryDAO queryDAO = (IQueryDAO)context.getBean("SqlMapQueryDAO");
			QueryRecord qr = new QueryRecord();
			qr.setCreator(creator);
			qr.setDescription(description);
			qr.setId(id);
			qr.setName(name);
			qr.setMapCompositionId(mapCompId);
			qr.setData(b);
			queryDAO.insert(qr);
			break;
		case USER:
			System.out.println("TEST INSERT USER...");
			IUserDAO userDAO = (IUserDAO)context.getBean("SqlMapUserDAO");
			UserRecord ur = new UserRecord();
			ur.setId(id);
			ur.setData(b);
			ur.setIsLocked(isLocked);
			userDAO.insert(ur);
			break;
		}
			
	}
	
	private static void TestSelectAll(ApplicationContext context, DAO_TYPE daoType, Criteria criteria)throws PersonalizationDAOException{
		Iterator it = null;
		List list = null;
		int count = 1;
		switch(daoType){
		case MAPCOMP:
			System.out.println("TEST SELECT ALL MAPCOMP...");
			IMapCompositionDAO mapCompDAO = (IMapCompositionDAO)context.getBean("SqlMapMapCompositionDAO");
			list = mapCompDAO.selectAll(criteria);
			for (it = list.iterator(); it.hasNext(); ) {
				MapCompositionInfoRecord mr = (MapCompositionInfoRecord)it.next();
				System.out.println("Record " + count);
				System.out.println(mr.toString());
				count++;
			}
			break;
		case BOOKMARK:
			System.out.println("TEST SELECT ALL BOOKMARK...");
			IBookmarkDAO bookmarkDAO = (IBookmarkDAO)context.getBean("SqlMapBookmarkDAO");
			list = bookmarkDAO.selectAll(criteria);
			for (it = list.iterator(); it.hasNext(); ) {
				BookmarkInfoRecord br = (BookmarkInfoRecord)it.next();
				System.out.println("Record " + count);
				System.out.println(br.toString());
				count++;
			}
			break;
		case QUERY:
			System.out.println("TEST SELECT ALL QUERY...");
			IQueryDAO queryDAO = (IQueryDAO)context.getBean("SqlMapQueryDAO");
			list = queryDAO.selectAll(criteria);
			for (it = list.iterator(); it.hasNext(); ) {
				QueryInfoRecord qr = (QueryInfoRecord)it.next();
				System.out.println("Record " + count);
				System.out.println(qr.toString());
				count++;
			}
			break;
		}
	}
	
	private static void TestSelectCount(ApplicationContext context, DAO_TYPE daoType, Criteria criteria)throws PersonalizationDAOException{
		switch(daoType){
		case MAPCOMP:
			System.out.println("TEST SELECT COUNT MAPCOMP...");
			IMapCompositionDAO mapCompDAO = (IMapCompositionDAO)context.getBean("SqlMapMapCompositionDAO");
			int i = mapCompDAO.selectAllCount(criteria);
			System.out.println("Count: " + i);
			break;
		case BOOKMARK:
			System.out.println("TEST SELECT COUNT BOOKMARK...");
			IBookmarkDAO bookmarkDAO = (IBookmarkDAO)context.getBean("SqlMapBookmarkDAO");
			i = bookmarkDAO.selectAllCount(criteria);
			System.out.println("Count: " + i);
			break;
		case QUERY:
			System.out.println("TEST SELECT COUNT QUERY...");
			IQueryDAO queryDAO = (IQueryDAO)context.getBean("SqlMapQueryDAO");
			i = queryDAO.selectAllCount(criteria);
			System.out.println("Count: " + i);
			break;
		}
	}
	
	private static void TestSelectOne(ApplicationContext context, DAO_TYPE daoType, String id)throws PersonalizationDAOException{
		switch(daoType){
		case MAPCOMP:
			System.out.println("TEST SELECT ONE MAPCOMP...");
			IMapCompositionDAO mapCompDAO = (IMapCompositionDAO)context.getBean("SqlMapMapCompositionDAO");
			MapCompositionRecord r = mapCompDAO.selectOne(id);
			if(r != null){
				System.out.println(r.toString());
			}
			else{
				System.out.println("selection is empty");
			}
			break;
		case BOOKMARK:
			System.out.println("TEST SELECT ONE BOOKMARK...");
			IBookmarkDAO bookmarkDAO = (IBookmarkDAO)context.getBean("SqlMapBookmarkDAO");
			BookmarkRecord br = bookmarkDAO.selectOne(id);
			if(br != null){
				System.out.println(br.toString());
			}
			else{
				System.out.println("selection is empty");
			}
			break;
		case QUERY:
			System.out.println("TEST SELECT ONE QUERY...");
			IQueryDAO queryDAO = (IQueryDAO)context.getBean("SqlMapQueryDAO");
			QueryRecord qr = queryDAO.selectOne(id);
			if(qr != null){
				System.out.println(qr.toString());
			}
			else{
				System.out.println("selection is empty");
			}
			break;
		case USER:
			System.out.println("TEST SELECT ONE USER...");
			IUserDAO userDAO = (IUserDAO)context.getBean("SqlMapUserDAO");
			UserRecord ur = userDAO.selectOne(id);
			if(ur != null){
				System.out.println(ur.toString());
			}
			else{
				System.out.println("selection is empty");
			}
			break;
		}
	}
	
	
	private static void TestSelectPage(ApplicationContext context, DAO_TYPE daoType, Criteria criteria, PageInfo pageInfo)
		throws PersonalizationDAOException{
		System.out.println("Page Index: " + pageInfo.getPageIndex());
		System.out.println("Page Size: " + pageInfo.getPageSize());
		int count = 1;
		List list = null;
		Iterator it = null;
		switch(daoType){
		case MAPCOMP:
			System.out.println("TEST SELECT PAGE MAPCOMP...");
			IMapCompositionDAO mapCompDAO = (IMapCompositionDAO)context.getBean("SqlMapMapCompositionDAO");
			list = mapCompDAO.selectPage(criteria, pageInfo);
			for (it = list.iterator(); it.hasNext(); ) {
				MapCompositionInfoRecord r = (MapCompositionInfoRecord)it.next();
				System.out.println("Record " + count);
				System.out.println(r.toString());
				count++;
			}
			break;
		case BOOKMARK:
			System.out.println("TEST SELECT PAGE BOOKMARK...");
			IBookmarkDAO bookmarkDAO = (IBookmarkDAO)context.getBean("SqlMapBookmarkDAO");
			list = bookmarkDAO.selectPage(criteria, pageInfo);
			for (it = list.iterator(); it.hasNext(); ) {
				BookmarkInfoRecord r = (BookmarkInfoRecord)it.next();
				System.out.println("Record " + count);
				System.out.println(r.toString());
				count++;
			}
			break;
		case QUERY:
			System.out.println("TEST SELECT PAGE QUERY...");
			IQueryDAO queryDAO = (IQueryDAO)context.getBean("SqlMapQueryDAO");
			list = queryDAO.selectPage(criteria, pageInfo);
			for (it = list.iterator(); it.hasNext(); ) {
				QueryInfoRecord r = (QueryInfoRecord)it.next();
				System.out.println("Record " + count);
				System.out.println(r.toString());
				count++;
			}
			break;
		}				
	}
	
	private static void TestUpdate(ApplicationContext context, DAO_TYPE daoType, String id, String field, String newVal) throws PersonalizationDAOException{
		switch(daoType){
		case MAPCOMP:
			System.out.println("TEST UPDATE MAPCOMP...");
			IMapCompositionDAO mapCompDAO = (IMapCompositionDAO)context.getBean("SqlMapMapCompositionDAO");
			MapCompositionRecord r = mapCompDAO.selectOne(id);
			if(field == "name" && r != null){
				r.setName(newVal);
				mapCompDAO.update(r);
				TestSelectOne(context, daoType, id);
			}
			break;
		case BOOKMARK:
			System.out.println("TEST UPDATE BOOKMARK...");
			IBookmarkDAO bookmarkDAO = (IBookmarkDAO)context.getBean("SqlMapBookmarkDAO");
			BookmarkRecord br = bookmarkDAO.selectOne(id);
			if(field == "name" && br != null){
				br.setName(newVal);
				bookmarkDAO.update(br);
				TestSelectOne(context, daoType, id);
			}
			break;
		case QUERY:
			System.out.println("TEST UPDATE QUERY...");
			IQueryDAO queryDAO = (IQueryDAO)context.getBean("SqlMapQueryDAO");
			QueryRecord qr = queryDAO.selectOne(id);
			if(field == "name" && qr != null){
				qr.setName(newVal);
				queryDAO.update(qr);
				TestSelectOne(context, daoType, id);
			}
			break;
		case USER:
			System.out.println("TEST UPDATE USER...");
			IUserDAO userDAO = (IUserDAO)context.getBean("SqlMapUserDAO");
			UserRecord ur = userDAO.selectOne(id);
			if(field == "isLocked" && ur != null){
				if(newVal == "true") ur.setIsLocked("1");
				else ur.setIsLocked("0");
				userDAO.update(ur);
				TestSelectOne(context, daoType, id);
			}
			break;
		}
	}
	
	
	private static void TestDelete(ApplicationContext context, DAO_TYPE daoType, String id)throws PersonalizationDAOException{
		switch(daoType){
		case MAPCOMP:
			System.out.println("TEST DELETE MAPCOMP...");
			IMapCompositionDAO mapCompDAO = (IMapCompositionDAO)context.getBean("SqlMapMapCompositionDAO");
			mapCompDAO.delete(id);
			break;
		case BOOKMARK:
			System.out.println("TEST DELETE BOOKMARK...");
			IBookmarkDAO bookmarkDAO = (IBookmarkDAO)context.getBean("SqlMapBookmarkDAO");
			bookmarkDAO.delete(id);
			break;
		case QUERY:
			System.out.println("TEST DELETE QUERY...");
			IQueryDAO queryDAO = (IQueryDAO)context.getBean("SqlMapQueryDAO");
			queryDAO.delete(id);
			break;
		case USER:
			System.out.println("TEST DELETE USER...");
			IUserDAO userDAO = (IUserDAO)context.getBean("SqlMapUserDAO");
			userDAO.delete(id);
			break;
		}
		
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -