9.jpa操作、作业讲解、xml打包
jpa操作
依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
yml配置
spring:
#jpa配置
jpa:
# 更新或创建表结构
hibernate:
ddl-auto: update
# 控制台显示sql语句
show-sql: true
实体类
package com.lcywings.sbt.beans;
import lombok.Data;
import lombok.Generated;
import javax.persistence.*;
/**
* Created on 2021/7/29.
* <p>
* Author : Lcywings
* <p>
* Description :
*/
@Data
@Entity // 告诉jpa,当前是一个实体类
@Table(name = "air_user") // 指定跟数据库表的对应,如果胜率属性,就是AirUser作为表名
public class AirUser {
@Id //代表是一个主键
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column(name = "user_name", length = 30)// 数据表中的列名字
private String userName;
@Column(name = "user_pwd", length = 18)
private String userPwd;
}
Controller
package com.lcywings.sbt.controller;
import com.lcywings.sbt.beans.AirUser;
import com.lcywings.sbt.repository.AirUserRepository;
import com.lcywings.sbt.util.RequestResult;
import com.lcywings.sbt.util.ResultBuildUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* Created on 2021/7/29.
* <p>
* Author : Lcywings
* <p>
* Description :
*/
@RestController
@Slf4j
@Api()
public class AirUserController {
@Autowired
private AirUserRepository airUserRepository;
/**
* @return :
* @author : zhukang
* @date : 2021-07-29
* @description : 根据用户id,查询用户详情
*/
@GetMapping("/airUserInfo")
@ApiOperation(value = "查询用户详情", notes = "支持jpa操作")
public RequestResult<AirUser> airUserInfo(@RequestParam @ApiParam(name = "userId", value = "用户编号", required = true) Integer userId) {
log.info("------ 根据用户编号{},查询用户详情 ------", userId);
// 直接进行数据查询操作,jpa自动的
AirUser airUser = airUserRepository.findOne(userId);
// 返回结果
return ResultBuildUtil.success(airUser);
}
/**
* @return : com.kgc.sbt.util.RequestResult<com.kgc.sbt.domain.AirUser>
* @author : zhukang
* @date : 2021-07-29
* @description : 添加用户
*/
@GetMapping("/addAirUser")
@ApiOperation(value = "添加用户详情", notes = "支持jpa操作")
public RequestResult<AirUser> addAirUser(AirUser addAirUser) {
log.info("------ 添加用户详情,{} ------", addAirUser);
// 直接进行数据查询操作,jpa自动的
AirUser airUser = airUserRepository.save(addAirUser);
// 返回结果
return ResultBuildUtil.success(airUser);
}
}
xml打包
<!-- 指定打包读取的配置目录及文件格式 -->
<resources>
<!-- 将src/main/java下所有包中的xml文件编译打包到最终项目包中,解决xml映射文件和mapper接口在 -->
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<!-- 如果上面配置了resources,默认的resurces目录就失效了,所以必须重新指定resources目录 -->
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
Q.E.D.