你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

Spring Boot基础教程十四:使用 SQL 关系型数据库 spring-data-jpa

2021/11/14 5:05:04

#开发环境

#端口配置

server.port=8080

#数据库连接配置

spring.datasource.url=jdbc:mysql://localhost/spring_boot_demo?useUnicode=true&characterEncoding=utf-8

spring.datasource.username=root

spring.datasource.password=123456

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

JPA

spring.jpa.hibernate.ddl-auto= update

spring.jpa.show-sql=true

3、实体类

=====

@Entity

public class RoncooUserLog {

@Id

@GeneratedValue

private Integer id;

@Column

private Date createTime;

@Column

private String userName;

@Column

private String userIp;

public Integer getId() {

return id;

}

public void setId(Integer id) {

this.id = id;

}

public Date getCreateTime() {

return createTime;

}

public void setCreateTime(Date createTime) {

this.createTime = createTime;

}

public String getUserName() {

return userName;

}

public void setUserName(String userName) {

this.userName = userName;

}

public String getUserIp() {

return userIp;

}

public void setUserIp(String userIp) {

this.userIp = userIp;

}

@Override

public String toString() {

return “RoncooUserLog [id=” + id + “, createTime=” + createTime + “, userName=”

  • userName + “, userIp=” + userIp + “]”;

}

}

4、定义接口(继承 JpaRepository)

=========================

public interface RoncooUserLogDao extends JpaRepository<RoncooUserLog, Integer> {

/**

  • @param string

  • @return

*/

@Query(value = “select u from RoncooUserLog u where u.userName=?1”)

List findByUserName(String userName);

/**

  • @param string

  • @param string2

  • @return

*/

List findByUserNameAndUserIp(String string, String string2);

/**

  • @param exampl

  • @param pageable

  • @return

*/

Page findByUserName(String userName, Pageable pageable);

}

5、测试

====

@RunWith(SpringRunner.class)

@SpringBootTest

public class SpringBootDemo141ApplicationTests {

@Autowired

private RoncooUserLogDao roncooUserLogDao;

@Test

public void insert() {

RoncooUserLog entity = new RoncooUserLog();

entity.setUserName(“无境”);

entity.setUserIp(“192.168.0.1”);

entity.setCreateTime(new Date());

roncooUserLogDao.save(entity);

}

@Test

public void delete() {

roncooUserLogDao.delete(1);

}

@Test

public void update() {

RoncooUserLog entity = new RoncooUserLog();

entity.setId(2);

entity.setUserName(“无境2”);

entity.setUserIp(“192.168.0.1”);

entity.setCreateTime(new Date());

roncooUserLogDao.save(entity);

}

@Test

public void select() {

RoncooUserLog result = roncooUserLogDao.findOne(1);

System.out.println(result);

}

@Test

public void select2() {

List res

【一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义】

浏览器打开:qq.cn.hn/FTf 开源分享

ult = roncooUserLogDao.findByUserName(“无境”);

System.out.println(result);

}

@Test

public void select3() {

List result = roncooUserLogDao.findByUserNameAndUserIp(“无境”, “192.168.0.1”);

System.out.println(result);

}

// 分页

@Test

public void queryForPage() {

Pageable pageable = new PageRequest(0, 20, new Sort(new Order(Direction.DESC, “id”)));

Page result = roncooUserLogDao.findByUserName(“无境”, pageable);

System.out.println(result.getContent());

}

}