C# XML反序列化与序列化举例:XmlSerializer
- using System;
- using System.IO;
- using System.Xml.Serialization;
- namespace XStream
- {
- /// <summary>
- /// <remarks>Xml序列化与反序列化</remarks>
- /// <creator>zhangdapeng</creator>
- /// </summary>
- public class XmlSerializeUtil
- {
- #region 反序列化
- /// <summary>
- /// 反序列化
- /// </summary>
- /// <param name="type">类型</param>
- /// <param name="xml">XML字符串</param>
- /// <returns></returns>
- public static object Deserialize(Type type, string xml)
- {
- using (StringReader sr = new StringReader(xml))
- {
- XmlSerializer xmldes = new XmlSerializer(type);
- return xmldes.Deserialize(sr);
- }
- }
- /// <summary>
- /// 反序列化
- /// </summary>
- /// <param name="type"></param>
- /// <param name="xml"></param>
- /// <returns></returns>
- public static object Deserialize(Type type, Stream stream)
- {
- XmlSerializer xmldes = new XmlSerializer(type);
- return xmldes.Deserialize(stream);
- }
- #endregion
- #region 序列化
- /// <summary>
- /// 序列化
- /// </summary>
- /// <param name="type">类型</param>
- /// <param name="obj">对象</param>
- /// <returns></returns>
- public static string Serializer(Type type, object obj)
- {
- MemoryStream Stream = new MemoryStream();
- XmlSerializer xml = new XmlSerializer(type);
- //序列化对象
- xml.Serialize(Stream, obj);
- Stream.Position = 0;
- StreamReader sr = new StreamReader(Stream);
- string str = sr.ReadToEnd();
- sr.Dispose();
- Stream.Dispose();
- return str;
- }
- #endregion
- }
- }

using System;
using System.IO;
using System.Xml.Serialization; namespace XStream
{
/// <summary>
/// <remarks>Xml序列化与反序列化</remarks>
/// <creator>zhangdapeng</creator>
/// </summary>
public class XmlSerializeUtil
{
#region 反序列化
/// <summary>
/// 反序列化
/// </summary>
/// <param name="type">类型</param>
/// <param name="xml">XML字符串</param>
/// <returns></returns>
public static object Deserialize(Type type, string xml)
{
using (StringReader sr = new StringReader(xml))
{
XmlSerializer xmldes = new XmlSerializer(type);
return xmldes.Deserialize(sr);
}
}
/// <summary>
/// 反序列化
/// </summary>
/// <param name="type"></param>
/// <param name="xml"></param>
/// <returns></returns>
public static object Deserialize(Type type, Stream stream)
{
XmlSerializer xmldes = new XmlSerializer(type);
return xmldes.Deserialize(stream);
}
#endregion #region 序列化
/// <summary>
/// 序列化
/// </summary>
/// <param name="type">类型</param>
/// <param name="obj">对象</param>
/// <returns></returns>
public static string Serializer(Type type, object obj)
{
MemoryStream Stream = new MemoryStream();
XmlSerializer xml = new XmlSerializer(type);
//序列化对象
xml.Serialize(Stream, obj);
Stream.Position = 0;
StreamReader sr = new StreamReader(Stream);
string str = sr.ReadToEnd(); sr.Dispose();
Stream.Dispose(); return str;
} #endregion
}
}
这个类是个实体类
- using System.Collections.Generic;
- using System.Xml.Serialization;
- namespace XStream
- {
- /// <summary>
- /// <creator>zhangdapeng</creator>
- /// </summary>
- [XmlRoot("skycenter")]
- public class AdsbEntity
- {
- private string _type;
- [XmlAttribute("type")]
- public string Type
- {
- get { return _type; }
- set { _type = value; }
- }
- private string _source;
- [XmlAttribute("source")]
- public string Source
- {
- get { return _source; }
- set { _source = value; }
- }
- private string _reality;
- [XmlAttribute("reality")]
- public string Reality
- {
- get { return _reality; }
- set { _reality = value; }
- }
- private string _rcvTime;
- [XmlAttribute("rcvTime")]
- public string RcvTime
- {
- get { return _rcvTime; }
- set { _rcvTime = value; }
- }
- private Head _head;
- //属性的定义
- [XmlElement("head")]
- public Head Head
- {
- set //设定属性
- {
- _head = value;
- }
- get //从属性获取值
- {
- return _head;
- }
- }
- private List<Unit> data = new List<Unit>();
- [XmlArray("data")]
- [XmlArrayItem("unit")]
- public List<Unit> Unit
- {
- get { return data; }
- }
- public void addUnit(Unit e)
- {
- data.Add(e);
- }
- private string _msg;
- public string msg
- {
- get { return _msg; }
- set { _msg = value; }
- }
- }
- }

using System.Collections.Generic;
using System.Xml.Serialization; namespace XStream
{
/// <summary>
/// <creator>zhangdapeng</creator>
/// </summary>
[XmlRoot("skycenter")]
public class AdsbEntity
{
private string _type; [XmlAttribute("type")]
public string Type
{
get { return _type; }
set { _type = value; }
}
private string _source;
[XmlAttribute("source")]
public string Source
{
get { return _source; }
set { _source = value; }
}
private string _reality;
[XmlAttribute("reality")]
public string Reality
{
get { return _reality; }
set { _reality = value; }
}
private string _rcvTime;
[XmlAttribute("rcvTime")]
public string RcvTime
{
get { return _rcvTime; }
set { _rcvTime = value; }
}
private Head _head;
//属性的定义
[XmlElement("head")]
public Head Head
{
set //设定属性
{
_head = value;
}
get //从属性获取值
{
return _head;
}
} private List<Unit> data = new List<Unit>(); [XmlArray("data")]
[XmlArrayItem("unit")]
public List<Unit> Unit
{
get { return data; }
}
public void addUnit(Unit e)
{
data.Add(e);
} private string _msg; public string msg
{
get { return _msg; }
set { _msg = value; }
} }
}
- using System.Xml.Serialization;
- namespace XStream
- {
- /// <summary>
- /// <creator>zhangdapeng</creator>
- /// </summary>
- public class Head
- {
- private string _datagramId;
- [XmlElement("datagramId")]
- public string DatagramId
- {
- set
- {
- _datagramId = value;
- }
- get
- {
- return _datagramId;
- }
- }
- private string _priority;
- [XmlElement("priority")]
- public string Priority
- {
- get { return _priority; }
- set { _priority = value; }
- }
- private string _an;
- [XmlElement("an")]
- public string An
- {
- get { return _an; }
- set { _an = value; }
- }
- private string _fi;
- [XmlElement("fi")]
- public string Fi
- {
- get { return _fi; }
- set { _fi = value; }
- }
- private string _rcvAddress;
- [XmlElement("rcvAddress")]
- public string RcvAddress
- {
- get { return _rcvAddress; }
- set { _rcvAddress = value; }
- }
- private string _sndAddress;
- [XmlElement("sndAddress")]
- public string SndAddress
- {
- get { return _sndAddress; }
- set { _sndAddress = value; }
- }
- private string _bepTime;
- [XmlElement("bepTime")]
- public string BepTime
- {
- get { return _bepTime; }
- set { _bepTime = value; }
- }
- private string _smi;
- [XmlElement("smi")]
- public string Smi
- {
- get { return _smi; }
- set { _smi = value; }
- }
- private string _dsp;
- [XmlElement("dsp")]
- public string Dsp
- {
- get { return _dsp; }
- set { _dsp = value; }
- }
- private string _rgs;
- [XmlElement("rgs")]
- public string Rgs
- {
- get { return _rgs; }
- set { _rgs = value; }
- }
- private string _msn;
- [XmlElement("msn")]
- public string Msn
- {
- get { return _msn; }
- set { _msn = value; }
- }
- private string _datagramType;
- [XmlElement("datagramType")]
- public string DatagramType
- {
- get { return _datagramType; }
- set { _datagramType = value; }
- }
- private string _icao24;
- [XmlElement("icao24")]
- public string Icao24
- {
- get { return _icao24; }
- set { _icao24 = value; }
- }
- private string _callcode;
- [XmlElement("callcode")]
- public string Callcode
- {
- get { return _callcode; }
- set { _callcode = value; }
- }
- }
- }

using System.Xml.Serialization; namespace XStream
{
/// <summary>
/// <creator>zhangdapeng</creator>
/// </summary>
public class Head
{ private string _datagramId;
[XmlElement("datagramId")]
public string DatagramId
{
set
{
_datagramId = value;
}
get
{
return _datagramId;
}
} private string _priority;
[XmlElement("priority")]
public string Priority
{
get { return _priority; }
set { _priority = value; }
} private string _an;
[XmlElement("an")]
public string An
{
get { return _an; }
set { _an = value; }
} private string _fi;
[XmlElement("fi")]
public string Fi
{
get { return _fi; }
set { _fi = value; }
} private string _rcvAddress;
[XmlElement("rcvAddress")]
public string RcvAddress
{
get { return _rcvAddress; }
set { _rcvAddress = value; }
} private string _sndAddress;
[XmlElement("sndAddress")]
public string SndAddress
{
get { return _sndAddress; }
set { _sndAddress = value; }
} private string _bepTime;
[XmlElement("bepTime")]
public string BepTime
{
get { return _bepTime; }
set { _bepTime = value; }
} private string _smi;
[XmlElement("smi")]
public string Smi
{
get { return _smi; }
set { _smi = value; }
} private string _dsp;
[XmlElement("dsp")]
public string Dsp
{
get { return _dsp; }
set { _dsp = value; }
} private string _rgs;
[XmlElement("rgs")]
public string Rgs
{
get { return _rgs; }
set { _rgs = value; }
} private string _msn;
[XmlElement("msn")]
public string Msn
{
get { return _msn; }
set { _msn = value; }
} private string _datagramType;
[XmlElement("datagramType")]
public string DatagramType
{
get { return _datagramType; }
set { _datagramType = value; }
} private string _icao24;
[XmlElement("icao24")]
public string Icao24
{
get { return _icao24; }
set { _icao24 = value; }
} private string _callcode;
[XmlElement("callcode")]
public string Callcode
{
get { return _callcode; }
set { _callcode = value; }
} }
}
- using System.Xml.Serialization;
- namespace XStream
- {
- /// <summary>
- /// <creator>zhangdapeng</creator>
- /// </summary>
- [XmlRootAttribute("unit")]
- public class Unit
- {
- private string _name;
- [XmlAttribute("name")]
- public string Name
- {
- get { return _name; }
- set { _name = value; }
- }
- private string _name_value;
- [XmlTextAttribute]
- public string Name_value
- {
- get { return _name_value; }
- set { _name_value = value; }
- }
- }
- }

using System.Xml.Serialization; namespace XStream
{
/// <summary>
/// <creator>zhangdapeng</creator>
/// </summary>
[XmlRootAttribute("unit")]
public class Unit
{
private string _name; [XmlAttribute("name")]
public string Name
{
get { return _name; }
set { _name = value; }
} private string _name_value; [XmlTextAttribute]
public string Name_value
{
get { return _name_value; }
set { _name_value = value; }
}
}
}
主类:
- using System;
- using System.Xml;
- namespace XStream
- {
- /// <summary>
- /// <creator>zhangdapeng</creator>
- /// </summary>
- class Program
- {
- static void Main(string[] args)
- {
- string path = System.AppDomain.CurrentDomain.BaseDirectory;
- XmlDocument xmlDoc = new XmlDocument();
- xmlDoc.Load(@path+"../../test.xml");
- Console.WriteLine(xmlDoc.OuterXml);
- AdsbEntity ad = XmlSerializeUtil.Deserialize(typeof(AdsbEntity), xmlDoc.OuterXml) as AdsbEntity;
- Console.WriteLine(ad.Head.DatagramId);
- Console.WriteLine(ad.Head.Fi);
- string xml = XmlSerializeUtil.Serializer(typeof(AdsbEntity), ad);
- Console.WriteLine(xml);
- Console.ReadKey();
- }
- }
- }

using System;
using System.Xml; namespace XStream
{
/// <summary>
/// <creator>zhangdapeng</creator>
/// </summary>
class Program
{
static void Main(string[] args)
{ string path = System.AppDomain.CurrentDomain.BaseDirectory;
XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(@path+"../../test.xml");
Console.WriteLine(xmlDoc.OuterXml); AdsbEntity ad = XmlSerializeUtil.Deserialize(typeof(AdsbEntity), xmlDoc.OuterXml) as AdsbEntity;
Console.WriteLine(ad.Head.DatagramId);
Console.WriteLine(ad.Head.Fi); string xml = XmlSerializeUtil.Serializer(typeof(AdsbEntity), ad);
Console.WriteLine(xml); Console.ReadKey(); }
}
}
原始输入:test.xml文件
- <?xml version="1.0" encoding="UTF-8"?>
- <skycenter type="ADSBResult" source="ADSB" reality="T" rcvTime="2014-02-25 07:23:31">
- <head>
- <!--报文id 注:空节点-->
- <datagramId>127</datagramId>
- <!--priority 注:空节点-->
- <priority>18</priority>
- <!--机尾号-->
- <an>B-5662</an>
- <!--航班号-->
- <fi>HU7782</fi>
- <!--接收地址 注:空节点-->
- <rcvAddress>1</rcvAddress>
- <!--发送地址 注:空节点-->
- <sndAddress>1</sndAddress>
- <!--bepTime 注:空节点-->
- <bepTime>1</bepTime>
- <!--SMI 注:空节点-->
- <smi>1</smi>
- <!--DSP服务商 注:空节点-->
- <dsp>1</dsp>
- <!--地面站-->
- <rgs>PEK</rgs>
- <!--流水号 注:空节点-->
- <msn>1</msn>
- <!--报文类型,都是POS 注:空节点-->
- <datagramType>1</datagramType>
- <!--ICAO24位地址码-->
- <icao24>7808a3</icao24>
- <!--呼号-->
- <callcode>CHH7782</callcode>
- </head>
- <data>
- <!--纬度 看前面的字母“N”或“S”,格式“DDMMSS.SS”-->
- <unit name="LAT">N31414709</unit>
- <!--经度 看前面的字母“E”或“W”,格式“DDDMMSS.SS”-->
- <unit name="LON">E118463546</unit>
- <!--气压高度,单位是米-->
- <unit name="ALT">396.24</unit>
- <!--计算空速 单位海里每小时-->
- <unit name="CAS">127.00</unit>
- <!--航向 正北是0°,顺时针,0到360°-->
- <unit name="VEC">58.18</unit>
- <!--收到报文的UTC时间 hh24mmss-->
- <unit name="UTC">072331</unit>
- </data>
- <msg>11</msg>
- </skycenter>

<?xml version="1.0" encoding="UTF-8"?>
<skycenter type="ADSBResult" source="ADSB" reality="T" rcvTime="2014-02-25 07:23:31">
<head>
<!--报文id 注:空节点-->
<datagramId>127</datagramId>
<!--priority 注:空节点-->
<priority>18</priority>
<!--机尾号-->
<an>B-5662</an>
<!--航班号-->
<fi>HU7782</fi>
<!--接收地址 注:空节点-->
<rcvAddress>1</rcvAddress>
<!--发送地址 注:空节点-->
<sndAddress>1</sndAddress>
<!--bepTime 注:空节点-->
<bepTime>1</bepTime>
<!--SMI 注:空节点-->
<smi>1</smi>
<!--DSP服务商 注:空节点-->
<dsp>1</dsp>
<!--地面站-->
<rgs>PEK</rgs>
<!--流水号 注:空节点-->
<msn>1</msn>
<!--报文类型,都是POS 注:空节点-->
<datagramType>1</datagramType>
<!--ICAO24位地址码-->
<icao24>7808a3</icao24>
<!--呼号-->
<callcode>CHH7782</callcode>
</head>
<data>
<!--纬度 看前面的字母“N”或“S”,格式“DDMMSS.SS”-->
<unit name="LAT">N31414709</unit>
<!--经度 看前面的字母“E”或“W”,格式“DDDMMSS.SS”-->
<unit name="LON">E118463546</unit>
<!--气压高度,单位是米-->
<unit name="ALT">396.24</unit>
<!--计算空速 单位海里每小时-->
<unit name="CAS">127.00</unit>
<!--航向 正北是0°,顺时针,0到360°-->
<unit name="VEC">58.18</unit>
<!--收到报文的UTC时间 hh24mmss-->
<unit name="UTC">072331</unit>
</data>
<msg>11</msg>
</skycenter>
结果:
- </pre><pre class="html" name="code"><?xml version="1.0" encoding="UTF-8"?>
- <skycenter type="ADSBResult" source="ADSB" reality="T" rcvTime="2014-02-25 07:23:31">
- <head>
- <!--报文id 注:空节点-->
- <datagramId>127</datagramId>
- <!--priority 注:空节点-->
- <priority>18</priority>
- <!--机尾号-->
- <an>B-5662</an>
- <!--航班号-->
- <fi>HU7782</fi>
- <!--接收地址 注:空节点-->
- <rcvAddress>1</rcvAddress>
- <!--发送地址 注:空节点-->
- <sndAddress>1</sndAddress>
- <!--bepTime 注:空节点-->
- <bepTime>1</bepTime>
- <!--SMI 注:空节点-->
- <smi>1</smi>
- <!--DSP服务商 注:空节点-->
- <dsp>1</dsp>
- <!--地面站-->
- <rgs>PEK</rgs>
- <!--流水号 注:空节点-->
- <msn>1</msn>
- <!--报文类型,都是POS 注:空节点-->
- <datagramType>1</datagramType>
- <!--ICAO24位地址码-->
- <icao24>7808a3</icao24>
- <!--呼号-->
- <callcode>CHH7782</callcode>
- </head>
- <data>
- <!--纬度 看前面的字母“N”或“S”,格式“DDMMSS.SS”-->
- <unit name="LAT">N31414709</unit>
- <!--经度 看前面的字母“E”或“W”,格式“DDDMMSS.SS”-->
- <unit name="LON">E118463546</unit>
- <!--气压高度,单位是米-->
- <unit name="ALT">396.24</unit>
- <!--计算空速 单位海里每小时-->
- <unit name="CAS">127.00</unit>
- <!--航向 正北是0°,顺时针,0到360°-->
- <unit name="VEC">58.18</unit>
- <!--收到报文的UTC时间 hh24mmss-->
- <unit name="UTC">072331</unit>
- </data>
- <msg>11</msg>
- </skycenter>
- 127
- HU7782
- <?xml version="1.0"?>
- <skycenter xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http
- ://www.w3.org/2001/XMLSchema" type="ADSBResult" source="ADSB" reality="T" rcvTim
- e="2014-02-25 07:23:31">
- <head>
- <datagramId>127</datagramId>
- <priority>18</priority>
- <an>B-5662</an>
- <fi>HU7782</fi>
- <rcvAddress>1</rcvAddress>
- <sndAddress>1</sndAddress>
- <bepTime>1</bepTime>
- <smi>1</smi>
- <dsp>1</dsp>
- <rgs>PEK</rgs>
- <msn>1</msn>
- <datagramType>1</datagramType>
- <icao24>7808a3</icao24>
- <callcode>CHH7782</callcode>
- </head>
- <data>
- <unit name="LAT">N31414709</unit>
- <unit name="LON">E118463546</unit>
- <unit name="ALT">396.24</unit>
- <unit name="CAS">127.00</unit>
- <unit name="VEC">58.18</unit>
- <unit name="UTC">072331</unit>
- </data>
- <msg>11</msg>
- </skycenter>

</pre><pre class="html" name="code"><?xml version="1.0" encoding="UTF-8"?>
<skycenter type="ADSBResult" source="ADSB" reality="T" rcvTime="2014-02-25 07:23:31">
<head>
<!--报文id 注:空节点-->
<datagramId>127</datagramId>
<!--priority 注:空节点-->
<priority>18</priority>
<!--机尾号-->
<an>B-5662</an>
<!--航班号-->
<fi>HU7782</fi>
<!--接收地址 注:空节点-->
<rcvAddress>1</rcvAddress>
<!--发送地址 注:空节点-->
<sndAddress>1</sndAddress>
<!--bepTime 注:空节点-->
<bepTime>1</bepTime>
<!--SMI 注:空节点-->
<smi>1</smi>
<!--DSP服务商 注:空节点-->
<dsp>1</dsp>
<!--地面站-->
<rgs>PEK</rgs>
<!--流水号 注:空节点-->
<msn>1</msn>
<!--报文类型,都是POS 注:空节点-->
<datagramType>1</datagramType>
<!--ICAO24位地址码-->
<icao24>7808a3</icao24>
<!--呼号-->
<callcode>CHH7782</callcode>
</head>
<data>
<!--纬度 看前面的字母“N”或“S”,格式“DDMMSS.SS”-->
<unit name="LAT">N31414709</unit>
<!--经度 看前面的字母“E”或“W”,格式“DDDMMSS.SS”-->
<unit name="LON">E118463546</unit>
<!--气压高度,单位是米-->
<unit name="ALT">396.24</unit>
<!--计算空速 单位海里每小时-->
<unit name="CAS">127.00</unit>
<!--航向 正北是0°,顺时针,0到360°-->
<unit name="VEC">58.18</unit>
<!--收到报文的UTC时间 hh24mmss-->
<unit name="UTC">072331</unit>
</data>
<msg>11</msg>
</skycenter> 127
HU7782
<?xml version="1.0"?>
<skycenter xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http
://www.w3.org/2001/XMLSchema" type="ADSBResult" source="ADSB" reality="T" rcvTim
e="2014-02-25 07:23:31">
<head>
<datagramId>127</datagramId>
<priority>18</priority>
<an>B-5662</an>
<fi>HU7782</fi>
<rcvAddress>1</rcvAddress>
<sndAddress>1</sndAddress>
<bepTime>1</bepTime>
<smi>1</smi>
<dsp>1</dsp>
<rgs>PEK</rgs>
<msn>1</msn>
<datagramType>1</datagramType>
<icao24>7808a3</icao24>
<callcode>CHH7782</callcode>
</head>
<data>
<unit name="LAT">N31414709</unit>
<unit name="LON">E118463546</unit>
<unit name="ALT">396.24</unit>
<unit name="CAS">127.00</unit>
<unit name="VEC">58.18</unit>
<unit name="UTC">072331</unit>
</data>
<msg>11</msg>
</skycenter>
出处:http://blog.csdn.net/philosophyatmath/article/details/28593153
C# XML反序列化与序列化举例:XmlSerializer的更多相关文章
- C# XML反序列化与序列化举例:XmlSerializer(转)
using System; using System.IO; using System.Xml.Serialization; namespace XStream { /// <summary&g ...
- <经验杂谈>C#/.Net中xml的Serialization序列化与DeSerializetion反序列化
1.先讲概念:.Net Framework提供了对应的System.Xml.Seriazliation.XmlSerializer负责把对象序列化到XML,和从XML中反序列化为对象.Serializ ...
- .NET(C#):觉察XML反序列化中的未知节点
原文 www.cnblogs.com/mgen/archive/2011/12/12/2284554.html 众所周知XML是可以扩展的,XML的元素可以靠名称识别而不是只按照未知识别.在 XML反 ...
- android-pull方式解析xml文件以及XML文件的序列化
android解析XML ---------------------------基础要像磐石 在android平台上可以使用SAX.DOM和自带的Pull解析器解析xml文件,本文主要介绍使用pull ...
- Xml反序列化记录
1.概述 公司项目遇到一个需要对接webservice的,webservice大部分用的都是xml来传输的,这里记录一下xml反序列化遇到的问题 2.xml工具类 xml序列化: public sta ...
- 让Visual Studio 2013为你自动生成XML反序列化的类
Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性.如: 1. 在代码编辑界面的右侧滚动条上显示不同颜色的标签,让开发人员可以对所编辑文档的修改.查找.定位情 ...
- wp8.1 Study11:APP里文件读写和使用XML和Json序列化
一.文件读写 1.基本操作(使用FileIO API) 这个方法在上一个stduy已经学过,那么贴出来复习下,代码如下: private async void writeTextToLocalStor ...
- 自动生成XML反序列化的类
原文地址:http://www.cnblogs.com/jaxu/p/3632077.html Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性.如: ...
- XML反序列化遇到数字型节点值为空导致反序列化异常
实体类: [XmlRoot("stream")] public class _30320DuisiFukuanQueryResponseModel : ResponseModelB ...
随机推荐
- $GitHub边用边总结
以下用法是在ubuntu系统下的用法,主要内容整理自'廖雪峰的官方网站'. #1.安装git$ sudo apt-get install git #2.声明git账号$ git config --gl ...
- [原创]spring及springmvc精简版--IOC
本篇博客为自己学习spring和springmvc的一个总结.主要以代码为主,至于文字性描述理解性东西,可以自行百度.有认识不妥的地方,还望指出,相互学习. 以前很困惑spring中的一些概念,在学习 ...
- [转]AOP那些学术概念—通知、增强处理连接点(JoinPoint)切面(Aspect)
AOP那些学术概念—通知.增强处理连接点(JoinPoint)切面(Aspect) 1.我所知道的AOP 初看起来,上来就是一大堆的术语,而且还有个拉风的名字,面向切面编程,都说是OOP的一种有益补充 ...
- 试坑不完美的 clip-path (我说的 CSS 的那个)
需求跟我说,咱们要创新,想做一个蜂巢状的列表,年少无知的我竟然一口答应了,全然因为刚接触了 clip-path: But,然而,不幸的是,这只是坎坷路途的开始.... clip-path 的教程很多了 ...
- qnx 黑莓系统
qnx 黑莓图形系统框架 http://www.360doc.com/content/07/0807/10/38907_658192.shtml http://blog.csdn.net/keyboa ...
- Prometheus Monitoring System & Time Series Database
什么是 TSDB (Time Series Database): 我们可以简单的理解为.一个优化后用来处理时间序列数据的软件,并且数据中的数组是由时间进行索引的. 时间序列数据库的特点: 大部分时间都 ...
- 如何使用REST请求风格
REST:即 Representational State Transfer.(资源)表现层状态转化.是目前最流行的一种互联网软件架构. 它结构清晰.符合标准.易于理解.扩展方便, 所以正得到越来越多 ...
- SpringCloud-分布式配置中心(config)
简介 在分布式文件系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件.在Spring Cloud中,有分布式配置中心组件spring cloud config ...
- PAT1022. Digital Library (30)
两个坑. 一个是一直用的malloc不行了.因为malloc分配的是固定大小,之前做的题没遇到过是因为一般string都不长(malloc分配string为24个Byte),这次直接报段错误,呢们了半 ...
- ubuntu/centos printk 终端中不能打印信息及解决办法
今天用ubuntu来调试信息,printk死活打印不出信息,即使把级别跳到<0>,即KERN_ALERT也不行,后再搜了好长时间网络, 这个地址:http://bbs.chinaunix. ...