JSON字符串与java对象的转换

Posted by & filed under Uncategorized.

所需的jar包: 

1. 把java 对象列表转换为json对象数组,并转为字符串

2.把java对象转换成json对象,并转化为字符串

3.把JSON字符串转换为JAVA 对象数组

4.把JSON字符串转换为JAVA 对象

Read more […]

Java版将EXCEL表数据导入到数据库中

Posted by & filed under Uncategorized.

   

Highcharts 本地导出图片 Java

Posted by & filed under Uncategorized.

下载的 Highcharts-2.3.5.zip 解压后 有 E:\Highcharts\Highcharts-2.3.5\exporting-server\java 目录 提供了Java实现的导出应用。 1)安装maven,配置环境变量. (http://maven.apache.org/download.cgi) 1.jdk 我装的是E:\java\jdk\jdk1.6.0_02-windows.exe 2.我的电脑—–属性—-高级—–环境变量—–环境变量—–新建 3.变量名:M2_HOME 4.变量值:E:\maven\apache-maven-3.0.3 5.找到path 在环境变量值尾部加入:;%M2_HOME%\bin;—前面注意分号 6.打开命令提示符(开始—运行—cmd),检查我们的java环境和maven环境是否有误。 java -version mvn -v 7.修改仓库位置 1> E:\maven\apache-maven-3.0.5\conf\settings.xml 2> 修改 <localRepository>E:/maven/repo</localRepository> 3> Read more […]

ssh搭建

Posted by & filed under Uncategorized.

1、new一个web project。 2、右键项目,为项目添加Struts支持。 点击Finish。src目录下多了struts.xml配置文件。 3、使用MyEclipse DataBase Explorer建立数据源。 new一个数据源。填入数据源信息。 点击test Driver,如果成功显示: 点击OK,点击Finish。 4、为项目添加Spring支持。 选择五个包,之后JAR Library Installation为如下图。 点击Next。 默认点击Finish。 5、为项目添加Hibernate支持。 默认的包,更改JAR Library Installation。 点击Next。 选择是建立Hibernate自己的配置文件,还是合并到Spring的配置文件。选择合并,即更改点选框,点击Next。 选择Existing Spring Configration File,点击Next。 选择我们刚刚创建的数据源。点击Next。 去掉复选框的勾勾,点击Finish。 6、发布项目,此时已经可以访问这个项目的jsp页面了。 7、后续工作。 在web.xml里面加入spring配置与监听如下。 <!– Read more […]

Java导出Highcharts生成的图表为图片源码

Posted by & filed under Uncategorized.

需要的jar包: 需要的js文件:(可以通过http://www.highcharts.com/download下载highcharts对应的js文件) 下面是一些主要部分 web.xml

servlet部分

jsp

  项目源码可以通过点此下载 注意:请下载源码的同学,将源码中的

上面的注释去掉,程序是可以成功导出pdf的。 Read more […]

Spring事务配置的五种方式

Posted by & filed under Uncategorized.

前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。     总结如下:     Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。     DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问时,DataSource实际为SessionFactory,TransactionManager的实现为HibernateTransactionManager。     具体如下图:     根据代理机制的不同,总结了五种Spring事务的配置方式,配置文件如下:     Read more […]

SNMP PDU Format总结

Posted by & filed under Uncategorized.

  最近因为项目的关系学习了许多SNMP协议方面的知识,想把它们做一个总结。其中这一部分,主要是涉及SNMP协议中通讯的最小协议单元数据PDU报文的格式。在SNMP协议中主要的操作有GET,GETNEXT,SET,TRAP等,每种操作都有对应的request和response格式,这些请求和回复的消息都称之为PDU。   1. 先来看一个SNMP v1 & v2c版本下的报文格式:由于v1 & v2c的安全机制是仅通过一个community string来验证工作的,所以报文格式也相对简单 查看文本打印 SNMP Version – It is an Integer that identifies the version of SNMP. For SNMPv1, it is 0.   Community String – An Octet String that may contain a string used to add security to SNMP devices.   SNMP PDU – The SNMP PDU (Protocol Data Unit) is used for communication between the SNMP enities.   2. Read more […]

【转】SMI-S 简介

Posted by & filed under Uncategorized.

  什么是SMI-S SMI-S(Storage Management Initiative Specification存储管理主动)是SNIA(全球网络存储工业协会)发起并主导,众多存储厂商共同参与开发的一种标准管理接口。其目标是在存储网络中的存储设备和管理软件之间提供标准化的通信方式,从而使存储管理实现厂商无关性,提高管理效率、降低管理成本,促进存储网络的发展。 一方面,SMI-S为存储管理提供了一个统一的理界面,使用户能够在SAN中轻松的集成和管理来自多个厂商的产品,从而提升了灵活性、可管理性和可靠性;同时,用户的资源利用率也将获得极大的提高。 另一方面,它为网络存储行业定义了一个全新、开放的开发模式,使存储厂商能够专注于附加值功能上,而省去了异构和专有接口开发整合所需的技术支持。SMI-S在统一理解存储管理上对所有厂商都是至关重要的。有了一个公共平台,厂商就可以加速产品的开发进程,并且终端用户可以更自由地选择厂商,同时也降低了复杂性。 技术背景 SMI-S是建立在一些已有的标准基础上,主要是CIM(Common Read more […]

【转】.Net中的加密解密

Posted by & filed under Uncategorized.

引言 在一些比较重要的应用场景中,通过网络传递数据需要进行加密以保证安全。本文将简单地介绍了加密解密的一些概念,以及相关的数字签名、证书,最后介绍了如何在.NET中对数据进行对称加密和解密。 加密和解密 说到加密,可能大家最熟悉的就是MD5了,记得几年前我刚开始接触Web编程的时候,研究的一个ASP论坛程序,它的用户密码就是采用的MD5进行加密。MD5实际上只是一种散列运算,或者可以称为单向的加密,即是说无法根据密文(加密后的数据),推导出明文(原数据)。而我们下面要说明的,是在加密后可以进行解密、还原数据的。对于欲进行加密的对象,有的人称为消息,有的人称为数据,有的人称为信息,为了避免混淆,在本文后面部分,我统一将其称为消息。那么加密是什么呢?加密是通过对消息进行编码,建立一种安全的交流方式,使得只有你和你所期望的接收者能够理解。 那么怎么样才能叫安全呢?消息在接收方和发送方进行安全传递,一般要满足下面三个要点: 消息的发送方能够确定消息只有预期的接收方可以解密(不保证第三方无法获得,但保证第三方无法解密)。 消息的接收方可以确定消息是由谁发送的(消息的接收方可以确定消息的发送方)。 消息的接收方可以确定消息在途中没有被篡改过(必须确认消息的完整性)。 加密通常分为两种方式:对称加密和非对称加密,接下来我们先看看对称加密。 对称加密 对称加密的思路非常简单,就是含有一个称为密钥的东西,在消息发送前使用密钥对消息进行加密,在对方收到消息之后,使用相同的密钥进行解密。根据密钥来产生加密后的消息(密文)的这一加工过程,由加密算法来完成,加密算法通常是公开的。它的流程如下: 发送方使用密钥对消息进行加密。 接收方使用同样的密钥对消息进行解密。 可以使用下面一副图来表示: 对称加密存在这样两个问题: 虽然可以通过密钥来保证消息安全地进行传递,但是如何确保密钥安全地进行传递?因为发送者和接收者总有一次初始的通信,用来传递密钥,此时的安全如何保证? 接收者虽然可以根据密钥来解密消息,但因为存在上面的问题,消息有可能是由第三方(非法获得密钥)发来的,而接收方无法辨别。 为了解决上面两个问题,就需要介绍一下非对称加密。 非对称加密 非对称加密的接收者和发送者都持有两个密钥,一个是对外公开的,称为公钥,一个是自行保管的,称为私钥。非对称加密的规则是由某人A的公钥加密的消息,只能由A的私钥进行解密;由A的私钥加密的消息只能由A的公钥解密。此时我们可以得出接收方、发送方有两个公钥两个私钥一共四个密钥,我们先看看两种简单的方式,这两种方式都是只使用两个密钥。 第一种模式只使用接收方的公钥和私钥,称为加密模式。 加密模式 在加密模式中,由消息的接收方发布公钥,持有私钥。比如发送方要发送消息“hello,jimmy”到接收方,它的步骤是: 发送方使用接收者的公钥进行加密消息,然后发送。 接收方使用自己的私钥对消息进行解密。 可以使用下面一幅图来描述: 在这种模式下,如果第三方截获了发送者发出的消息,因为他没有接收者的私钥,所以这个消息对他来说毫无意义。可见,它能够满足本文最开始提出的消息安全传递的要点一:消息的发送方能够确定消息只有预期的接收方可以解密(不保证第三方无法获得,但保证第三方无法解密)。 除此以外,因为接收方的公钥是公开的,任何人都可以使用这个公钥来加密消息并发往接收者,而接收者无法对消息进行判别,无法知道是由谁发送来的。所以,它不满足我们开始提出的消息安全传递的要点二:消息的接收方可以确定消息是由谁发送的(消息的接收方可以确定消息的发送方)。 这个问题可以在下面的认证模式中得到解决。 认证模式 在认证模式中,由消息的发送方发布公钥,持有私钥。比如发送者要发送消息“Welcome Read more […]

【转】.NET应用程序与数据库交互的优化

Posted by & filed under Uncategorized.

我们知道,在应用程序中与数据库进行交互是一个比较耗时的过程,首先应用程序需要与应用程序建立连接,然后将请求发送到数据库,数据库执行操作,然后将结果集返回。所以在程序中,要尽量晚的与数据库建立连接,并且较早的释放连接。 然而在很多时候,我们需要频繁的查询和更新数据库中的记录,比如我们的一张表中有1000条记录,假设有一个场景,需要一条一条的判断这1000条记录,如果不存在,插入;如果存在,更新某一个字段。这种场景很常见,比如银行的用户转账或者汇款,在完成之后需要更新账户余额等操作。 最近项目中也遇到了类似的情况,通过实践也简单总结了一些如何提高应用程序执行效率的方法,当然这些都是通过减少和数据库进行交互以及当数据达到一定程度,通过批量实现的。下面就简要介绍一下。 一 Read more […]