在上篇文章中,我建立了工程并配置了spring + hibernate。今天我们检验下上篇文章的成果,如何检查呢?那就是进行单元测试。本篇文章就让大家和我一起来就前面的建的工程进行单元测试。

本项目使用Junit进行单元测试,需要引用单元测试的包,在的工程建立中已有了如何引入单元测试的依赖,这里就不多说了。要进行单元单元测试,我们就按下面的步骤进行
一:建立实体
    本例是刚弄开始学习,所以表不弄得太复杂,我们就以用户登录为例:建立一个用户对象,拥有用户名和密码两个属性,密码开始也使用名文的方式。
    在com.ympcsoft.sys.domain包中建立SysUser.java。代码如下
  1. package com.ympcsoft.sys.domain;
  2. import javax.persistence.Column;
  3. import javax.persistence.Entity;
  4. import javax.persistence.GeneratedValue;
  5. import javax.persistence.GenerationType;
  6. import javax.persistence.Id;
  7. import javax.persistence.Table;
  8. //注解,说明这是实体类
  9. @Entity
  10. @Table(name = "SysUser")
  11. public class SysUser {
  12. //定义字段
  13. //主键字段,统一叫id
  14. @Id
  15. @GeneratedValue(strategy=GenerationType.IDENTITY) //字段自增长
  16. @Column(name = "id")
  17. private Long id;
  18. //用户名,32长度,不能为空
  19. @Column(name="USER_NAME", length=32, nullable = false)
  20. private String userName;
  21. //用户密码,32长度,不能为空
  22. @Column(name="USER_PWD", length=32, nullable=false)
  23. private String userPwd;
  24. //构造函数
  25. public SysUser() {
  26. super();
  27. // TODO Auto-generated constructor stub
  28. }
  29. public Long getId() {
  30. return id;
  31. }
  32. public void setId(Long id) {
  33. this.id = id;
  34. }
  35. public String getUserName() {
  36. return userName;
  37. }
  38. public void setUserName(String userName) {
  39. this.userName = userName;
  40. }
  41. public String getUserPwd() {
  42. return userPwd;
  43. }
  44. public void setUserPwd(String userPwd) {
  45. this.userPwd = userPwd;
  46. }
  47. }
二:建立SysUserDao文件
  1. package com.ympcsoft.sys.dao;
  2. import javax.annotation.Resource;
  3. import org.hibernate.Session;
  4. import org.hibernate.SessionFactory;
  5. import org.springframework.stereotype.Repository;
  6. import com.ympcsoft.sys.domain.SysUser;
  7. /**
  8. * 此处分层来讲应该是SysUserDao接口,然后实现,现在学习的需要,直接访问SessoinFactory
  9. * */
  10. @Repository
  11. public class SysUserDao{
  12. //注解来源
  13. @Resource(name="sessionFactory")
  14. private SessionFactory sessionFactory;
  15. //保存用户
  16. public void addUser(SysUser sysUser) {
  17. //获取Session
  18. Session session = sessionFactory.getCurrentSession();
  19. //持久到数据库
  20. session.persist(sysUser);
  21. }
  22. }
三:建立 SysUserService文件
  1. package com.ympcsoft.sys.service;
  2. import javax.annotation.Resource;
  3. import org.springframework.stereotype.Service;
  4. import org.springframework.transaction.annotation.Transactional;
  5. import com.ympcsoft.sys.dao.SysUserDao;
  6. import com.ympcsoft.sys.domain.SysUser;
  7. @Transactional
  8. @Service
  9. public class SysUserService {
  10. private SysUserDao sysUserDao;
  11. @Resource
  12. public void setSysUerDao(SysUserDao sysUserDao){
  13. this.sysUserDao = sysUserDao;
  14. }
  15. public void addUser(SysUser sysUser){
  16. sysUserDao.addUser(sysUser);
  17. }
  18. }
四:建立测试文件SysUserTest(src/test/jav)
  1. package services;
  2. import javax.annotation.Resource;
  3. import org.junit.Before;
  4. import org.junit.Test;
  5. import org.junit.runner.RunWith;
  6. import org.springframework.test.context.ContextConfiguration;
  7. import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
  8. import com.ympcsoft.sys.dao.SysUserDao;
  9. import com.ympcsoft.sys.domain.SysUser;
  10. import com.ympcsoft.sys.service.SysUserService;
  11. @RunWith(SpringJUnit4ClassRunner.class)
  12. @ContextConfiguration({ "classpath:spring.xml" })
  13. public class SysUserTest {
  14. @Resource
  15. private SysUserDao sysUserDao;
  16. @Resource
  17. private SysUserService sysUserService;
  18. @Before
  19. public void setUp() throws Exception {
  20. }
  21. @Test
  22. public final void testSave() {
  23. SysUser sysUser = new SysUser();
  24. sysUser.setUserName("admin");
  25. sysUser.setUserPwd("123456");
  26. sysUserService.addUser(sysUser);
  27. }
  28. }
五:运行测试

如果测试通过,则数据表自动建好,数据也已插入
来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/ympcsoft/p/5244195.html

spring mvc+spring + hibernate 整合(二)相关推荐

  1. Spring MVC + Spring + Hibernate + mysql 注册登陆入门实例

    Spring MVC + Spring + Hibernate + mysql 注册登陆入门实例 (1) 结构 (说明目的是要做在线聊天室的,也包含登陆注册部分,先用这部分做个例子)开发环境用的是ST ...

  2. Spring MVC 学习总结(二)——控制器定义与@RequestMapping详解

    Spring MVC 学习总结(二)--控制器定义与@RequestMapping详解 目录 一.控制器定义 1.1.实现接口Controller定义控制器 1.2.使用注解@Controller定义 ...

  3. Spring MVC+Spring +Hibernate配置事务,但是事务不起作用

    最近做项目,被一个问题烦恼了很久.使用Spring MVC+Spring +Hibernate开发项目,在使用注解配置事务管理,刚开始发现无论如何数据库都无法更新,但是可以从数据库查询到数据.怀疑是配 ...

  4. Spring MVC+Spring+Mybatis实现支付宝支付功能(图文详解)(转载)

    Spring MVC+Spring+Mybatis实现支付宝支付功能(图文详解) 前言 本教程详细介绍了如何使用ssm框架实现支付宝支付功能.本文章分为两大部分,分别是「支付宝测试环境代码测试」和「将 ...

  5. Spring MVC+Spring+Mybatis+MySQL(IDEA)入门框架搭建

    目录 Spring MVC+Spring+Mybatis+MySQL(IDEA)入门框架搭建 0.项目准备 1.数据持久层Mybatis+MySQL 1.1 MySQL数据准备 1.2 Mybatis ...

  6. Spring Mvc + Spring + Mybatis3 搭建Web工程详解

    Spring MVC + Spring + Mybatis3 搭建Web工程原理 可能需要用到参考: Maven创建web项目:http://blog.csdn.net/liangmaoxuan/ar ...

  7. spring mvc+spring+mybatis+ajax实现登录验证

    <h1>Spring Mvc+Spring+Mybatis+Ajax 实现异步登录的例子,和大家分享一下.</h1><div>login.js代码:</div ...

  8. mybaits二十七:spring, spring mvc,mybatis(ssm) 整合

    配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version=" ...

  9. SSM(Spring+Spring MVC+Mybatis)整合 1:整体概述、目录内容及实验环境介绍

    文章目录 前言 一.概述 二.系列文章全目录 三.实验环境 总结 前言 通过本次 Java EE 三大框架(Spring.Spring MVC.MyBatis)原理.技术和方法的整合,大量的项目实践实 ...

  10. java spring hiberate_Spring+SpringMVC+Hibernate整合实例讲解

    使用Maven构建项目,用pom.xml引入相应jar,配置以下文件 创建spring.xml: xmlns="http://www.springframework.org/schema/b ...

最新文章

  1. HTML-CSS-JS-PHP的顺序及相关网址(转)
  2. Python的构造函数和析构函数,对象和类的不一样
  3. python爬虫十二种方法_Python爬虫的N种姿势
  4. L1-031. 到底是不是太胖了-PAT团体程序设计天梯赛GPLT
  5. PuTTY 私钥'putty/sshdss.c' 多个信息泄露漏洞
  6. u盘魔术师装linux,u盘魔术师下载 u盘魔术师v6(USMv6) v6.0.2019.06.18 正式特别版 下载-脚本之家...
  7. Java 后台开发实习经历
  8. 简单的酒店管理系统(纯属练手)
  9. 华氏温度和摄氏温度互相转换
  10. appStore上传苹果应用程序软件发布流程
  11. mysql中字符串拼接函数_MySQL 字符串连接CONCAT()函数
  12. 面试专题:QTrade(苹果树)面试复盘
  13. (n++)+(n++)+(n++)与(++n)+(++n)+(++n)的区别
  14. 前端js实现本地模糊搜索
  15. 英语不好计算机学不会,英语和数学不好的人是不是学不会编程?
  16. EXCEL表格倒三角标志下拉选择的设置、取消限制方法
  17. 叮当桌面助手使用教程
  18. 从电子请柬切入,顺利融资3000万美金,“低频”的婚庆市场应该怎么做?
  19. [深入SystemUI]-了解SystemUI的大致架构
  20. 20200425观《玄奘之路》心得

热门文章

  1. android不能使用udp获取数据解决
  2. 正则表达式真的很骚,可惜你不会写!
  3. spring 涉及到注解说明
  4. C语言 什么时候用取地址什么时候不用取地址,符号讲解
  5. 怎么样用vue ui来创建一个vue项目
  6. php中new运算符的作用,C++_C++编程中new运算符的使用学习教程,new运算符用作从自由存储为 typ - phpStudy...
  7. 怎么修改_PDF怎么修改文字?其实修改PDF内容很简单
  8. jsonutil java_Java实现的JSONUtil工具类与用法示例
  9. 未来数据中心最需要的5种技能
  10. 5G边缘计算与算力网络(PPT)