4 spring boot 入门之 整合spring data

作者: 半盏茶灯 | 来源:发表于2018-04-12 17:52 被阅读35次

本文内容,基于前面文章基础之上编写,比如建表,如果搭建环境这些不知道,可以查看前面的。
1 springboot入门之 Hello World
2 springboot入门之 整合thymeleaf
3 springboot入门之 使用JdbcTemplate

添加pom依赖

<!-- mysql驱动:com.mysql.jdbc.Driver -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- SpringData-Jpa依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

建表,编写实体

建表语句在前面博客提到了,这里就不啰嗦了。
User.java


@Entity(name = "user")
public class User implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    Long id;
    @Column(name = "name")
    String name;
    @Column(name = "age")
    Integer age;

    public Long getId() {
        return id;
    }
    public void setId(Long 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;
    }
}

编写dao和service

@Repository
public interface UserRepository extends JpaRepository<User, Long> {
    @Query("select p from user p where p.name=:name ")
    List<User> findByName(@Param(value = "name") String name);
}

UserService 接口

public interface UserService {
    List<User> findListByName(String name);
}

UserServiceImpl 实现类

@Service
@Transactional(rollbackFor = Exception.class)
public class UserServiceImpl implements UserService {

    @Autowired
    private UserRepository userRepository;

    @Override
    public List<User> findListByName(String name) {
        if (name == null || name.trim().isEmpty()) {
            return null;
        }
        return userRepository.findByName(name);
    }
}

编写controller和页面

@Controller
@RequestMapping("/user")
public class UserController {
    @Autowired
    UserService userService;

    @RequestMapping(value = "/")
    public String user() {
        return "/user";
    }

    @ResponseBody
    @RequestMapping(value = "/findListByUserName")
    public Map<String, Object> findListByUserName(@RequestParam(name = "uname") String name) {
        Map<String, Object> map = new HashMap<>();
        List<User> userList = userService.findListByName(name);
        map.put("msg", "处理成功");
        map.put("data", userList);
        return map;
    }

}

user.html 页面代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>用户界面</title>
</head>
<body>
<h2>添加用户</h2>
<form method="post" action="./addUser">
    <label>用户名:</label><input type="text" name="uname">
    <label>年龄:</label><input type="number" name="age">
    <input type="submit" value="添加"/>
</form>

<form method="post" action="./findListByUserName">
    <label>用户名:</label><input type="text" name="uname">
    <input type="submit" value="查找用户"/>
</form>
</body>
</html>

基于上篇文章,先添加几个用户实体,再查找。效果如下图:


查找用户.png
查找结果.png

整合成功

相关文章

网友评论

    本文标题:4 spring boot 入门之 整合spring data

    本文链接:https://www.haomeiwen.com/subject/ucjfkftx.html