转载请注明出处:https://www.cnblogs.com/by-dream/p/10486117.html
搭起一个简单的服务后,接下来我们加入数据库,通过服务去读取DB中的数据进行显示。顺便将模块划分再清晰一些。
不说太多了,直接说代码吧。
1、pom.xml的dependencies中入依赖
org.mybatis.spring.boot mybatis-spring-boot-starter1.3.2 mysql mysql-connector-java
注意这里我们引入mybatis,所有和数据库之间的操作都借助它来完成。
2、resource中加入数据库配置和mapper的配置:
# 数据库配置spring.datasource.url=jdbc:mysql:/
private Long id; private String nick; private int age; public String getNick() { return nick;
} public void setNick(String nick) { this.nick = nick;
} public int getAge() { return age;
} public void setAge(int age) { this.age = age;
}
}UserMapper类的作用就是提供数据库操作的方法,UserDO类的作用就是将数据库中的数据转化为Java数据类型;
5、接下来Service层的实现:
定义接口:
package com.bryan.demo.service;import com.bryan.demo.dal.entity.UserDO;public interface UserService {
UserDO findById(Long id);
}接口的实现:
package com.bryan.demo.service.impl;import com.bryan.demo.dal.dao.UserMapper;import com.bryan.demo.dal.entity.UserDO;import com.bryan.demo.service.UserService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;
@Servicepublic class UserServiceImpl implements UserService {
@Autowired public UserMapper userMapper;
@Override public UserDO findById(Long id) {
UserDO userDO = userMapper.findById(1L); return userDO;
}
}6、最终Controller层直接调用service的接口返回:
@RestControllerpublic class MachineInfoController {
@Autowired
UserService userService;
@RequestMapping("/")
String homePage() {
UserDO userDO = userService.findById(1L); return "name:"+userDO.getNick() + " age:"+userDO.getAge();
}
}此时我们在浏览器情况,查看:
好,看下整体的目录结构:
整理了一下关系链:
由于本节只说数据库,所以整体的服务端的架构还没有特别的完善,下一节我会针对整体服务端架构进行分层,然后详细说明。
代码我传到git上:



