IDEA-spring boot简单的数据库添加和查询操作

创建Person类`

与数据库相对
可加上一些提示信息,添加时如不安要求发出提醒

package com.example.kini.po;
import javax.persistence.*;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotEmpty;

@Entity
@Table(name="t_person")
public class Person {
    @Id
    @GeneratedValue
    private Integer id;

    @NotEmpty(message="名字不能为空")
    @Column(length=30)
    private String name;

    @Min(value=16,message="年龄应大于16岁")
    @Column(length=30)
    private String age;

    @Max(value=12,message="号码小于12")
    @Column(length=50)
    private String number;

    @Override
    public String toString() {
        return "Person{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age='" + age + '\'' +
                ", number='" + number + '\'' +
                '}';
    }

    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 String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }
}

创建PersonDao
继承 Repository类
数据库一些简单的操作方法:如save,可直接调用

package com.example.kini.dao;


import com.example.kini.po.Person;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.Repository;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

public interface PersonDao extends Repository<Person,Integer> {

    void save(Person person);

    @Query("select all from t_person ")
    @Transactional(readOnly = true)
    List<Person> findAll();
}

创建控制层
判断传入的数据,如符合则处理,否则则报出相应错误信息

package com.example.kini.controller;


import com.example.kini.dao.PersonDao;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.example.kini.po.Person;

import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.List;

@RestController
@RequestMapping("/person")
public class PersonController {
    @Resource
    private PersonDao personDao;

    @RequestMapping("/add")
    public String add(@Valid Person person, BindingResult bindingResult) {
        if (bindingResult.hasErrors()) {
            return bindingResult.getFieldError().getDefaultMessage();
        } else {
            personDao.save(person);
            return "添加人物信息成功";
        }
    }
    @RequestMapping("/query")
    public String Query(Model model){
        List list =personDao.findAll();
        model.addAttribute("q",list);
            return "query";
        }
}

配置

spring.profiles.active=dev
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/person
spring.datasource.username=root
spring.datasource.password=123456
    spring.jpa.hibernate.ddl-auto=create
    spring.jpa.show-sql=true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值