`
文章列表
一、从数据库导出数据文件 1.将数据库mydb导出到e:\mysql\mydb.sql文件中: 打开开始->运行->输入cmd 进入命令行模式 c:\>mysqldump -h localhost -u root -p mydb >e:\mysql\mydb.sql   2.将数据库mydb中的mytable导出到e:\mysql\mytable.sql文件中: c:\>mysqldump -h localhost -u root -p mydb mytable>e:\mysql\mytable.sql 3.将数据库mydb的结构导出到e:\m ...
五、使用事务模板编程式地管理事务 事务模板是在事务管理器上创建的,就像JDBC模板是在数据源上创建的一样。 事务模板执行 封装了事务代码块的 事务回调对象。   private PlatformTransactionManager transactionManager; private TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager);   transactionTemplate.execute(new TransactionCallbackWithoutR ...
四、用事务管理器API编程式管理事务 spring的事务管理器提供了一套独立于技术的API,你能通过getTransaction()方法启动新事务,并通过commit()和rollback()方法来管理它。   private PlatformTransactionManager transaction;   TransactionDefinition def = new DefaultTransactionDefinition(); TransactionStatus status = transactionManager.getTransaction(def);   tr ...
一、事务的概念 可以用4个关键属性来描述事务的概念,即原子性,一致性,隔离性,以及持久性。 原子性:事务是一种原子操作,由一系列动作组成。事务的原子性确保了动作要么全部完成,要么完全不起作用。 一致性:一旦所有的事务动作完成,事务就被提交。数据和资源就处于一种满足业务规则的一致状态中。 隔离性:可能有许多事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,以防止数据损坏。 持久性:一旦事务完成,无论发生什么系统错误,它的结果都应该不受影响。   二、使用JDBC提交和回滚管理事务 在使用JDBC更新数据库时,默认是每个SQL语句在执行之后都立即提交。这种行为称为自 ...

spket的安装

第一步,安装spket最新版spket-1.6.18 spket下载地址:http://www.agpad.com/downloads/spket-1.6.18.zip,myeclipse插件在线安装地址:http://www.spket.com/update,安装好之后,会在Myeclipse菜单栏“Window”-------" Preferences"下看到多出的一个skept项,如下图所示   第二步,下载extjs4所需的jsb文件,见附件文件ext-4.0.0.jsb2.rar 第三步, 1、打开Myeclipse,找到Myeclipse菜单栏   ...
在Ibatis中,insert()的返回值为一个Object的主键,其实这个Object的主键是这样的来的:如果在bean的xml文件中设置了插入的keyProperty,则insert()方法返回的就是这个主键的值。     例如,所以我们想要在插入时想要插入一个sequence值到数据库的某个字段(当然,这个字段的类型为Number的),我们可以在xml文件中做如下配置(以下为在DB服务器是Oracle的前提下): <insert id="insertUser" parameterClass="po.User">     <sel ...

Java进行数据加密

    博客分类:
  • java
本文主要谈一下密码学中的加密和数字签名,以及其在java中如何进行使用。对密码学有兴趣的伙伴,推荐看Bruce Schneier的着作:Applied Crypotography。在jdk1.5的发行版本中安全性方面有了很大的改进,也提供了对RSA算法的直接支持, ...

常见加密算法

    博客分类:
  • java
DES(Data Encryption Standard):对称算法,数据加密标准,速度较快,适用于加密大量数据的场合;   3DES(Triple DES):是基于DES的对称算法,对一块数据用三个不同的密钥进行三次加密,强度更高;   RC2和 RC4:对称算法,用变长密钥对大量数据进行加密,比 DES 快;   IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性;   RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的,非对称算法; ...
  消息摘要(Message Digest)又称为数字摘要(Digital Digest)。它是一个唯一对应一个消息或文本的固定长度的值,它由一个单向Hash加密函数对消息进行作用而产生。如果消息在途中改变了,则接收者通过对收到消息的新产生的摘要与原摘要比较,就可知道消息是否被改变了。因此消息摘要保证了消息的完整性。 消息摘要采用单向Hash 函数将需加密的明文"摘要"成一串128bit的密文,这一串密文亦称为数字指纹(Finger Print),它有固定的长度,且不同的明文摘要成密文,其结果总是不同的,而同样的明文其摘要必定一致。这样这串摘要便可成为验证明文是否是" ...
一、引子话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰)、Bmw(宝马)、Audi(奥迪)看来这人比较爱国,没有日本车),还雇了司机为他开车。不过,爆发户坐车时总是这样:上Benz车后跟司机说"开奔驰车!",坐上Bmw后他说"开宝马车!",坐上Audi后他说"开奥迪车!"。你一定说:这人有病!直接说开车不就行了?! 而当把这个爆发户的行为放到我们程序语言中来,我们发现C语言一直是通过这种方式来坐车的!幸运的是,这种有病的现象在OO语言中可以避免了。下面以Java语言为基础来引入我们本文的主题:工厂模式!! 二、简介工厂模 ...
前面说提到的五种创建模式,主要解决的问题是如何创建对象,获得产品。而单例模式最要关心的则是对象创建的次数以及何时被创建。 Singleton模式可以是很简单的,它的全部只需要一个类就可以完成(看看这章可怜的UML图)。但是如果在“对象创建的次数以及何时被创建”这两点上较真起来,Singleton模式可以相当的复杂,比头五种模式加起来还复杂,譬如涉及到DCL双锁检测(double checked locking)的讨论、涉及到多个类加载器(ClassLoader)协同时、涉及到跨JVM(集群、远程EJB等)时、涉及到单例对象被销毁后重建等。对于复杂的情况,本章中会涉及到其中一些[1] ...
Command模式(命令)   Java深入到一定程度,就不可避免的碰到设计模式这一概念,了解设计模式,将使自己对java中的接口或抽象类应用有更深的理解.设计模式在java的中型系统中应用广泛,遵循一定的编程模式,才能使自己的代码便于理解,易于交流,Command(命令模式)模式是比较常用的一个模式.   Command命令模式: Command模式通过被称为Command的类封装了对目标对象的调用行为以及调用参数。将一个请求封装为一个对象,从而使你不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。   优点: 解耦了调用者和接受者之间联系。调用者调用一个操作,接受者 ...
桥梁模式的用意是将问题的抽象和实现分离开来实现,通过用聚合代替继承来解决子类爆炸性增长的问题。 比如我们有一个画图程序 有2个图形(Circle Rectangle )和2种画图方法(Drawing1 Drawing2) 图形可能会使用Drawing1来画图也可能使用Drawing2来画图 在这个画图程序中有两个可变因素 一个是图形的种类 有可能会增加新的图形 另一个是画图方法可能会有Drawing3出现 。当系统有两个可变因素时 我就应该考虑到桥梁模式,至少它应该在你的脑子里闪过 。   在面向对象设计中有两条重要原则 1.找出变化并封装之 2.优先使用聚合而不是继承 这两条将在桥梁模 ...
<1>依赖 依赖关系用虚线加箭头表示,如图所示: 上图表示:Animal类依赖于Water类(动物依赖于水)。 依赖是类的五种关系中耦合最小的一种关系。因为依赖关系在生成代码的时候,这两个关系类都不会增加属性。这种微弱的关系可以用类之间的相互了解的程度来说明。(下图为代码生成图)                        由上图可见生成的代码中Animal类的属性中没有增加Water类。那么Animal类如何使用Water类呢,有三种方式: 依赖关系的三种表现形式: ①     Water类是全局的,则Animal类可以调用它 ②     Water类是Ani ...
org.apache.commons.beanutils.BeanUtils    BeanUtils.cloneBean(group) 实现浅复制,group不需要实现Cloneable接口   BeanUtils.copyProperties(group2,group); 复制group的所有属性到group2中   BeanUtils.copyProperty(group2, "createDate",new Date()); 为group2的createDate属性赋值   Map map = BeanUtils.describe(group); ...
Global site tag (gtag.js) - Google Analytics