Spring Boot:利用JPA进行数据库的增改

目录

  • JPA介绍
  • Service接口
    • @Service和@Autowired
    • 示例代码
  • Dao数据库操作层
    • @Repository
    • 示例代码
  • 控制器文件
    • 示例代码-增加
    • 增加成功
    • 示例代码-修改
    • 修改成功

JPA介绍

  • JPA(Javaa Persistence API)一种用于持久化 Java 对象到关系型数据库的标准规范。它提供了一种统一的方式来操作数据库,包括增删改查等操作。

Service接口

  • Service 接口是一些方法,定义需要提供的服务方法和输入输出参数,以提供某种服务或功能。

@Service和@Autowired

  • @Service用于在类定义中标识服务类、在控制器中注入服务类。

  • 可以使用@Autowired 注解来注入新的类,以便调用它的方法。

示例代码

package hanshuhuan.test.service.admin;

import hanshuhuan.test.dao.admin.OperatorLogDao;
import hanshuhuan.test.entity.admin.OperaterLog;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * 数据库操作service
 * @author shuhu
 *
 */
@Service
public class OperatorLogService {
	
	@Autowired
	private OperatorLogDao operatorLogDao;
	/**
	 * 添加/修改操作日志
	 * @param operaterLog
	 * @return
	 */
	public OperaterLog save(OperaterLog operaterLog){
		return operatorLogDao.save(operaterLog);
	}
}

Dao数据库操作层

  • Dao 数据库操作层负责与数据库进行交互并实现对数据库的增删改查等操作

@Repository

  • 用于标记一个类为数据访问层(DAO)的接口。
  • 它表示一个仓库,主要用于封装对于数据库的访问。
  • 当我们在一个接口上使用@Repository 注解时,Spring 会自动扫描并找到该接口的实现类,并将其实例化为一个 Bean。

示例代码

package hanshuhuan.test.dao.admin;
/**
 * 后台操作日志类数据库操作层
 */
import hanshuhuan.test.entity.admin.OperaterLog;

import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;


@Repository//表示这是一个Dao层,可以直接调用jpa来操作数据库
public interface OperatorLogDao extends JpaRepository<OperaterLog, Long> {
	
}

控制器文件

示例代码-增加

//List类型遍历
List<OperaterLog>operaterLogs=new ArrayList<OperaterLog>();
OperaterLog ol1=new OperaterLog();
ol1.setOperator("han");
ol1.setContent("text1");
ol1.setCreateTime(new Date());
ol1.setUpdateTime(new Date());
operaterLogs.add(ol1);

OperaterLog ol2=new OperaterLog();
ol2.setOperator("shu");
ol2.setContent("text2");
ol2.setCreateTime(new Date());
ol2.setUpdateTime(new Date());
operaterLogs.add(ol2);	

OperaterLog ol3=new OperaterLog();
ol3.setOperator("huan");
ol3.setContent("text3");
ol3.setCreateTime(new Date());
ol3.setUpdateTime(new Date());
operaterLogs.add(ol3);	

//数据库操作
OperaterLog operaterLog=new OperaterLog();
operaterLog.setOperator("shuhuan");
operaterLog.setContent("play");
operaterLog.setCreateTime(new Date());
operaterLog.setUpdateTime(new Date());

operatorlogservice.save(operaterLog);
operatorlogservice.save(ol1);
operatorlogservice.save(ol2);
operatorlogservice.save(ol3);

增加成功

在这里插入图片描述

示例代码-修改

operaterLog.setId(Long.valueOf(1));
operaterLog.setOperator("【hanshuh】");

修改成功

在这里插入图片描述文章来源地址https://www.uudwc.com/A/0kje9/

原文地址:https://blog.csdn.net/weixin_45880844/article/details/133380790

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年10月07日 20:14
小米云原生文件存储平台化实践:支撑 AI 训练、大模型、容器平台多项业务
下一篇 2023年10月07日 21:14