使用Spring Boot+MyBatis框架做查詢操作
一.在你建立的工程下建立 Module 選擇Spring initializr建立。
二.在Type處選擇: Maven Project(專案的構建工具)
三.建立依賴時勾上web,mybatis,mysql(這個看你個人需要吧,可以自主選擇)
建立好的專案結構如下:
注意:application.properties和application.yml是同一個東西,均為專案的核心配置檔案
內容如下:
#連線資料庫 spring.datasource.url=jdbc:mysql://localhost:3306/smbms spring.datasource.username=root spring.datasource.password=1234 spring.datasource.driverClassName=com.mysql.jdbc.Driver #引入mybatis的配置檔案 mybatis: mybatis.mapper-locations=classpath:mapper/*.xml mybatis.type-aliases-package=com.example.sprboot.pojo
相應的pom.xml檔案
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>springboot</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <!--新增web依賴--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--引入spring boot包--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- Spring-Mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.0</version> </dependency> <!-- SQL/">MySQL --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!--使用json物件--> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.49</version> </dependency> <!--使用thymeleaf標籤--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
相應的介面UserMapper如下:
@Repository public interface UserMapper { List<User> getList(); }
service如下:
public interface UserService { List<User> getList(); }
impl如下:
@Service public class UserServiceImpl implements UserService { @Resource private UserMapper userMapper; @Override public List<User> getList() { return userMapper.getList(); } }
在resources中建一個資料夾mapper裡面放mapper.xml檔案,程式碼如下:
<select id="getList" resultType="User"> select * from smbms_user </select>
在templates資料夾中建html檔案(注意:Spring Boot中不能跳轉到.jsp檔案,所以只能用html)
核心程式碼如下:
<table> <th>工號</th> <th>使用者名稱</th> <th>姓名</th> <th>性別</th> <th>生日</th> <th>電話</th> <th>地址</th> <th>建立時間</th> <tr th:each="user : ${users}"> <td th:text="${user.id}"></td> <td th:text="${user.userCode}"></td> <td th:text="${user.userName}"></td> <td th:text="${user.gender}"></td> <td th:text="${user.birthday}"></td> <td th:text="${user.phone}"></td> <td th:text="${user.address}"></td> <td th:text="${user.createdBY}"></td> </tr> </table>
此處有一個th標籤,需要引入一個<html xmlns:th="http://www.thymeleaf.org">
並在pom.xml中引入對應的jar包(html中不能使用jstl表示式)
大家可以擴充套件一下thymeleaf的知識
控制器程式碼如下:
@Controller public class UserController { @Resource private UserService userService; @RequestMapping("/") public String getStuinforList(HttpServletRequest request, Model model){ List<User> list=userService.getList(); model.addAttribute("users",list); System.out.println(list); return "/index.html"; } }
注:在調通的時候,可能會報很多的錯,基本上都是註解的使用出錯,希望各位能夠細心點