基于h2和Spring测试的几个要点
========H2====
下载H2的zip包,解压,运行bin下的批处理文件,自动打开连接页面,注意选择Embedded、Server ,两者的连接方式是不一样的(弄了半天发现写不进数据,就是因为这点)。
h2 的几种Database URLs
Database URLs
Embedded
jdbc:h2:~/test 'test' in the user home directory 在我的文档下用户下建立数据文件
jdbc:h2:/data/test 'test' in the directory /data
jdbc:h2:test in the current(!) working directory
In-Memory
jdbc:h2:mem:test multiple connections in one process
jdbc:h2:mem: unnamed private; one connection
Server Mode
jdbc:h2:tcp://localhost/~/test user home dir 在我的文档下用户下建立数据文件,只有运行时存在
jdbc:h2:tcp://localhost//data/test absolute dir
Server start:java -cp *.jar org.h2.tools.Server
Settings
jdbc:h2:..;MODE=MySQL compatibility (or HSQLDB,...)
jdbc:h2:..;TRACE_LEVEL_FILE=3 log to *.trace.db
=========spring 测试========
测试数据库免不了增删改查,这样会改动数据库,在这里用Spring测试框架可以避免数据库改动。
参考http://zmfkplj.iteye.com/blog/370921
我写了个简单的测试例子 ,用的是springSide,其实也可以继承AbstractTransactionalJUnit4SpringContextTests
如:
public class ArticleDaoTest extends AbstractTransactionalJUnit4SpringContextTests{
package com.xx.unit.dao.account;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springside.modules.test.spring.SpringTxTestCase;
import com.xx.dao.account.ArticleDao;
import com.xx.entity.account.Article;
@ContextConfiguration(locations = {"/applicationContext-test.xml"})
public class ArticleDaoTest extends SpringTxTestCase{
@Autowired
private ArticleDao ad;
@Test
// @Rollback(false)//写入数据库不回滚
// @Repeat(10)//重复执行10次
public void daoTest(){
//保存文章
Article a = new Article();
a.setSubject("dowload");
a.setContent("kkkktest");
ad.save(a);
ad.flush();
//查找文章
a = ad.get(1L);
assertEquals("dowload",a.getSubject());
//删除文章
ad.delete(1L);
ad.flush();
Article a1 = ad.findUniqueBy("id", 1L);
assertNull(a1);
}
}
这样就省得每个类都加入下面类似代码了
public class UserDaoTest {
private ApplicationContext ctx;
@Before
public void before()throws Exception{
ctx = new ClassPathXmlApplicationContext("beans.xml");
}
@After
public void tearDown() throws Exception {
System.out.println("end");
}
@Test
public void saveTest(){
UserDao userDao = (UserDao)ctx.getBean("userDao");
userDao.save();
}
分享到:
相关推荐
网上找不到这样的例子,只好我自已整理一份了。 该demo是基于maven集成spring5、hibernate5、spring-data-jpa2、H2的可以运行的最基本的main例子。 希望能对大家有帮助。
springboot+h2+mybatisplus+swagger使用例子 h2数据库例子 H2是一个开源的嵌入式数据库引擎,采用java语言编写,不受平台的...因此采用H2作为开发期、测试期和演示的数据库非常方便,不太适合作为大规模生产数据库。
基于H2和H∞鲁棒控制的资料,哈工大, 王德进编著。欢迎下载
具体包括添加H2数据库依赖、配置Spring Boot的数据源连接信息、对Mybatis进行基本设置,以及如何初始化和操作数据库。 适用人群:该教程适合已具备基础Java和Spring Boot开发经验的开发者,尤其是需要快速构建轻量...
国际H2真假U盘测试软件,专业测试U盘容量,读写速度。USB闪存测试,
本设计源码提供了一个基于Spring Boot的mblog开源博客系统。项目包含761个文件,主要使用Java编程语言,并包含了JavaScript、CSS、HTML和Shell。文件类型包括226个Java源代码文件、154个JavaScript脚本文件、121个...
通过java配置的方式搭建了一个基本的web项目,主要用于单元测试示例,使用了spring支持h2内存数据库,不需要额外安装数据库,可以测试controller层、service层
一个类似于Spring Boot Admin的轮子,但该项目不仅仅是一个轮子,后续将会对接spring4all社区版的微服务脚手架应用实现对使用了Spring Cloud构建的微服务系统全面的监控管理等功能。 ![](statics/images/001.jpeg) ...
嵌入Spring Boot数据H2 在此应用中,我使用H2内存数据库进行演示 Application.properties spring.datasource.url=jdbc:h2:mem:TEST;DB_CLOSE_DELAY=-1; spring.datasource.username=sa spring.datasource....
一般使用mybatis的环境,大多都是别人已经配置...我文章中的方法不基于spring,一般很少会在真实项目中直接使用。我把我的搭建过程记录下来给有用的人吧。 https://blog.csdn.net/lxyoucan/article/details/126162493
该存储库包含一个库,用于为 spring/spring 启动项目启用完整的服务器可嵌入 H2 数据库。 项目结构 该项目为 2 个模块。 第一个简单地称为“lib”,是用于将 H2 公开给示例 Spring Boot 应用程序的实际库。 第二个...
H2就不做很多介绍了。资源包内容列表是我进行H2预研是收集的H2资料,应该是最全面的的了: 1、h2.pdf (H2 API) 2、h2-1.3.173.jar (截止2013-8-15最新的H2.jar) 3、h2-2013-07-28.zip (截止2013-8-15最新的H2服务...
基于Spring Boot+MyBatis+MySQL/H2+Bootstrap实现的社区论坛,含问答系统 提问、回复、通知、最新、最热、消除零回复功能。技术栈 Spring、Spring Boot、MyBatis、MySQL/H2、Bootstrap
U盘数据对比测试软件,可以快速测试闪存类产品的速度,是否存在数据丢失等!
ha_h2testw-测试U盘 检测U盘很有用,不妨试试
使用Spring Boot H2构建的空间数据中心。 使用Spring的mockmvc进行测试 要运行测试并编译,请在主目录中运行mvn clean install
spring-h2-isolation-db-test
spring-boot-oauth2, 带H2数据库的Spring Boot Oauth2 构建和运行mvn clean install -DskipTests spring-boot:run用法检查应用已经部署 sucessfulllycurl -i http://localhos
H2通过往待测目录写入数据的方式测试u盘等被测物的实际写入速度,并将写入的数据回读出来校验此前写入的数据是否正确,以此判断进行读写操作的存储块是不是坏块,所以以也是基于这个,H2可以用来测速度的,而假如你...
为Spring mvc、Thymelaaf模板引擎、H2数据库、Lombok和消息传递的深度探索打造Spring Boot应用程序.zip