博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringData入门笔记(三) - SpringData初尝鲜
阅读量:6437 次
发布时间:2019-06-23

本文共 3463 字,大约阅读时间需要 11 分钟。

hot3.png

目标

用sring data方式创建一张employee表,包含id/name/age字段,id自增,name长度20,name/age不能为空。

创建一个通过name查询employee的方法,并测试之。

项目结构

输入图片说明

Maven依赖

mysql
mysql-connector-java
5.1.38
org.springframework.data
spring-data-jpa
1.8.0.RELEASE
org.hibernate
hibernate-entitymanager
4.3.6.Final

代码编写

建立对象模型

Employee.java

package com.dotleo.entity;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;/** * 雇员 : 先开发实体类 ---> 自动生成数据库 * @author LiuFei * @create 2017-11-06 21:23 */@Entitypublic class Employee {    @GeneratedValue    @Id    private Integer id;    @Column(length = 20 ,nullable = false)    private String name;    @Column(nullable = false)    private Integer age;    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }    @Override    public String toString() {        return "Employee{" +                "id=" + id +                ", name='" + name + '\'' +                ", age=" + age +                '}';    }}

spring配置文件 - beans.xml 创建

此文件为最终版,可能由于部分类还没创建报错,暂时不用管

beans.xml

org.hibernate.cfg.ImprovedNamingStrategy
org.hibernate.dialect.MySQL5InnoDBDialect
true
true
update

EmployeeRepository接口创建

package com.dotleo.repository;import com.dotleo.entity.Employee;import org.springframework.data.repository.Repository;/** * @author LiuFei * @create 2017-11-06 22:44 */public interface EmployeeRepository extends Repository
{ public Employee findByName(String name);}

测试类创建

package com.dotleo.repository;import com.dotleo.entity.Employee;import org.junit.After;import org.junit.Before;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;/** * @author LiuFei * @create 2017-11-06 22:48 */public class EmployeeRepositoryTest {    ApplicationContext ctx = null;    EmployeeRepository employeeRepository = null;    @Before    public void setup() {        ctx = new ClassPathXmlApplicationContext("beans.xml");        employeeRepository = ctx.getBean(EmployeeRepository.class);    }    @After    public void tearDown() {        ctx = null;    }    @Test    public void testFindByName() {        Employee employee = employeeRepository.findByName("zhangsan");        if (employee != null) {            System.out.println(employee.toString());        }    }}

转载于:https://my.oschina.net/u/2930289/blog/1563454

你可能感兴趣的文章
虚拟机安装CentOS
查看>>
Idea里面老版本MapReduce设置FileInputFormat参数格式变化
查看>>
在 win10 环境下,设置自己写的 程序 开机自动 启动的方法
查看>>
Unity3d游戏开发之-单例设计模式-多线程一
查看>>
通过jquery定位元素
查看>>
Tooltip表单验证的注册表单
查看>>
UWP开发中两种网络图片缓存方法
查看>>
超8千Star,火遍Github的Python反直觉案例集!
查看>>
【msdn wpf forum翻译】如何在wpf程序(程序激活时)中捕获所有的键盘输入,而不管哪个元素获得焦点?...
查看>>
全球首家!阿里云获GNTC2018 网络创新大奖 成唯一获奖云服务商
查看>>
Python简单HttpServer
查看>>
Java LinkedList工作原理及实现
查看>>
负载均衡SLB的基本使用
查看>>
Centos 7 x86 安装JDK
查看>>
微信小程序的组件用法与传统HTML5标签的区别
查看>>
Hangfire 使用笔记
查看>>
(C#)Windows Shell 外壳编程系列8 - 同后缀名不同图标?
查看>>
教你彻底学会c语言基础——文件操作
查看>>
如何使用免费控件将Word表格中的数据导入到Excel中
查看>>
seafile服务器配置
查看>>