Atitit 调试工具模块  保存序列化map参数 mybatis调试sql selectid 查看mybatis真实sql

1.1. 对象序列化功能 序列化为bytearr 文件等 1

1.2. Ide本身的序列化 失去类型信息 2

1.3. mybatis调试sql   最终使用map判断类型结合mybatsi文件获取实际sql 2

1.4. mybatis读取mapper配置的sql语句  使用xml类库 2

1.1. 对象序列化功能 序列化为bytearr 文件等

Apache lang3 的  SerializationUtils.serialize

package com.attilax.util;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.ObjectInputStream;

import java.io.ObjectOutputStream;

import java.io.Serializable;

import java.util.Map;

import java.util.UUID;

import org.apache.commons.lang3.SerializationUtils;

import com.alibaba.fastjson.JSON;

import com.google.common.collect.Maps;

public class serilizeUtil {

public static void main(String[] args) throws FileNotFoundException {

// TODO Auto-generated method stub

Map m=Maps.newHashMap();

m.put("kk", "vv");

SerializationUtils.serialize ((Serializable) m,new FileOutputStream( "c:\\logs\\mo2.txt"+UUID.randomUUID()));

Map m2=(MapserizGetObjFromFile("c:\\logs\\mo2.txt");

System.out.println( JSON.toJSONString(m2));

}

1.2. Ide本身的序列化 失去类型信息

private static String getValueByTypeinSql(Object value) {

if(value.getClass()==String.class)

return  "'"+value.toString()+"'";

if(value.getClass()==Integer.class)

return value.toString();

throw new RuntimeException("getValueByTypeinSql:: value not jude type");

}

params="{aParam60=0, beh01=null, bbx09=1, vaf58=0, abc02=普通, sqltext=%葡萄糖%, aParamno=0, yiyuanId=-5, bce01=1, acf01=1, aParam1=0, bdp02=自费, offset=0, bckyf=0, bck01=108, aParam106=1}";

//

private static Map getM(String params) {

Map m=Maps.newConcurrentMap();

params=params.substring(1,params.length()-1);  //de start end one char ..openclose char

String[] entry_arr=params.split(",");

for (String e : entry_arr) {

String[] kva=e.split("=");

m.put(kva[0], kva[1]);

}

return m;

}

1.3.  mybatis调试sql   最终使用map判断类型结合mybatsi文件获取实际sql

1.4. mybatis读取mapper配置的sql语句  使用xml类库

C:\0wkspc\oploggerPrj\src\com\attilax\util\MybatisUtil.java

package com.attilax.util;

import java.io.IOException;

import java.sql.Connection;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.List;

import java.util.Map;

import org.apache.ibatis.session.SqlSession;

import org.apache.zookeeper.common.PathUtils;

import org.jdom.Document;

import org.jdom.Element;

import org.jdom.JDOMException;

import org.jdom.input.SAXBuilder;

import com.cnhis.cloudhealth.clidoctorweb.gzip.PathUtil;

import com.google.common.collect.Maps;

import cn.freeteam.util.MybatisSessionFactory;

public class MybatisUtil {

protected static Statement getStt() {

SqlSession session = getSqlSession();

Connection conn = session.getConnection();

Statement st = null;

try {

conn.setAutoCommit(true);

st = conn.createStatement();

} catch (SQLException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

return st;

}

private static SqlSession getSqlSession() {

MybatisSessionFactory.CONFIG_FILE_LOCATION = "/com/attilax/db/mybatisutil/mybatis_postgresql.xml";

SqlSession session = MybatisSessionFactory.getSession();

return session;

}

public static void main(String[] args) {

String sqlid="adviceSousuo_kucui";

String s=getMybaticsCfgedSqlBysqlid("C:\\0wkspc\\clinical\\src\\main\\java\\com\\cnhis\\cloudhealth\\clinical\\clidoctor\\clischemedefine\\mapper\\CliSchemeDefineMapper.xml","adviceSousuo_kucui");

System.out.println(s);

// String f="D:\\0workspace\\atiplat_restapi\\src\\aaaPKg\\flow_design_cs.xml";

//

//     Map m=(Map) serilizeUtil.serizGetObjFromFile("c:\\logs\\adviceSousuo_kucui_map_8080f6ab-35b1-440f-b1b5-8c1b0ea2de32");

//

// Statement st = getStt(); // ini envi

//

//     List li=   getSqlSession().selectList(sqlid, m);

//     System.out.println(li.size());

}

private static String getMybaticsCfgedSqlBysqlid(String f,String sqlid) {

// TODO Auto-generated method stub

SAXBuilder builder=new SAXBuilder(false);

Document doc;

try {

doc = builder.build(f);

} catch (JDOMException | IOException e) {

throw new RuntimeException(e);

}

Element books=doc.getRootElement();

List< Element> definitions_eles=books.getChildren("select");

for (Element e : definitions_eles) {

System.out.println(e.getAttribute("id"));

if(e.getAttribute("id").getValue().equals(sqlid))

return e.getText();

}

// Element   process_ele=books.getChild("process");

// System.out.println(process_ele.getAttributeValue("deadlineLimit"));

System.out.println("--f");

return sqlid;

}

}

Atitit 调试工具模块 保存序列化map参数 mybatis调试sql selectid 查看mybatis真实sql 1.1. 对象序列化功能 序列化为bytearr 文件等 1 1.2.相关推荐

  1. C# 对象序列化之序列化为Json文件(一)

    目录 1.概念 1.1原理 1.2用途 1.3 JSON序列化 1.4 二进制和XML序列化 2. 序列化为JSON 2.1 简单的序列化 2.2 复杂的序列化 3 忽略属性 3.1 忽略单个属性 3 ...

  2. .NET 中的对象序列化 (转载)

    .NET 中的对象序列化 Piet Obermeyer Microsoft Corporation 2001 年 8 月 摘要:为什么要使用序列化?最重要的两个原因是:将对象的状态保存在存储媒体中以便 ...

  3. C#[Serializable]在C#中的作用-NET 中的对象序列化

    为什么要使用序列化?最重要的两个原因是:将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本:按值将对象从一个应用程序域发送至另一个应用程序域.例如,序列化可用于在 ASP.NET 中保 ...

  4. 序列化数据导入mysql_[导入]对象序列化后保存到数据库

    做的项目中要用到日志功能,记录重要数据增删改,以提供后台动态数据恢复功能,在数据库中建立一个表四个字段: id:标识(long).action:增删改类别(String 或 int).olddata与 ...

  5. [Serializable]在C#中的作用——实现.NET对象序列化

    简介 序列化是指将对象实例的状态存储到存储媒体的过程.在此过程中,先将对象的公共字段和私有字段以及类的名称(包括类所在的程序集)转换为字节流,然后再把字节流写入数据流.在随后对对象进行反序列化时,将创 ...

  6. [Serializable]C#中的对象序列化

    [转]:http://hi.baidu.com/charmred/blog/item/46d57483be34aab66c8119e7.html 简介 序列化是指将对象实例的状态存储到存储媒体的过程. ...

  7. .NET 对象序列化学习笔记(—)

    什么是序列化? .net的运行时环境用来支持用户定义类型的流化的机制.它是将对象实例的状态存储到存储媒体的过程.在序列化的过程中,先将对象的公共字段和私有字段以及类的名称(包括类所在的程序集)转换为字 ...

  8. [Serializable]在C#中的作用-NET 中的对象序列化

    简介 序列化是指将对象实例的状态存储到存储媒体的过程.在此过程中,先将对象的公共字段和私有字段以及类的名称(包括类所在的程序集)转换为字节流,然后再把字节流写入数据流.在随后对对象进行反序列化时,将创 ...

  9. java对象序列化java.io.Serializable 接口实践

    java.io.Serializable 接口没有任何方法和字段,仅仅表示实现它的类的对象可以被序列化.实现了这个接口的所有类及其子类都可以对象序列化. 序列化前,虚拟机要清楚每个对象的结构,所以序列 ...

  10. 【Java】Java对象序列化I/O体系总结

    对象序列化体系概述 通过使用ObjectInputStream和ObjectOutputStream类保存和读取对象的机制叫做序列化机制 序列化与反序列化 对象序列化是指将对象转换为字节序列的过程 对 ...

最新文章

  1. 阿里云云盾-风险识别-增强版模式发布
  2. css 字体大小_用一个 CSS 属性打造自适应网站
  3. linux中shell如何输出换行符
  4. 3分钟,看回归分析模型怎么做
  5. 光源时间_缩短背光源的使用寿命的原因
  6. json pandas 内存溢出_pandas中的常用函数
  7. html定义不同的类,定义不同的节点类型.html
  8. 《R语言预测实战》PDF,数据及代码
  9. Python 语言程序设计(1)
  10. java使用btree_最新阿里、百度Java面试题(基础+框架+数据库+分布式+JVM+多线程)...
  11. 生物力学有限元Mimics/ANSYS
  12. 天线接收功率计算公式_信号功率计算公式推导步骤
  13. 数字孪生典型应用案例
  14. 【转】傅里叶分析之掐死教程(完整版)
  15. 使用BouncyCastle 实现RSA常用方法
  16. hadoop 查看文件大小以及文件数
  17. ipad怎样和计算机连接网络,ipad怎样连接电脑itunes
  18. 手机备忘录里的照片怎么保存到相册里
  19. 计算机应用基础excel2007 6.2使用函数和公式 教案,计算机应用基础教案6.2使用函数和公式.docx...
  20. oracle通信通道的文件结尾_如何解决ORA-03113: 通信通道的文件结尾?

热门文章

  1. go 变量大写_和我一起学Go系列:Go基本语法概览
  2. nfs 端口_Linux挂载NFS,偶发执行df命令卡顿
  3. Java设计模式之——代理设计模式
  4. Qtum DGP 分布自治协议技术详解
  5. 微信服务号开发IOS设备js-sdk认证失败问题总结
  6. 类中的反射 装逼利器
  7. 简单的form表单操作(Servlet)
  8. 【POJ 3062】Party(2-SAT、tarjan)
  9. Source Insight 3.5 序列号分享
  10. PHP 将微信录音arm格式文件转mp3格式