环境:
框架:springboot+mybatis
工具:IDEA
数据库:sqlserver
构建maven项目、添加依赖
添加sprignboot依赖使maven变成springboot项目
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
添加sqlserver依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
数据库驱动依赖
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
</dependency>
mybatis依赖
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.0</version>
</dependency>
总文件:
<?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>org.xwc</groupId>
<artifactId>mvtest</artifactId>
<version>1.0-SNAPSHOT</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--mybatis相关-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.0</version>
</dependency>
<!--mysql相关-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>mysql</groupId>-->
<!-- <artifactId>mysql-connector-java</artifactId>-->
<!-- <scope>runtime</scope>-->
<!-- </dependency>-->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
</dependency>
</dependencies>
</project>
新建包和各层文件
Java下新建bean
package com.xwctest.bean;
public class WuserBean {
private Long id;
private String userName;
private String passWord;
private String realName;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
}
controller、
package com.xwctest.controller;
import com.xwctest.bean.WuserBean;
import com.xwctest.dao.WUserDao;
import com.xwctest.service.WUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class WUserController {
@Autowired
private WUserService userService;
@GetMapping("/xwctest/wuser/{id}")
public WuserBean getUserById(@PathVariable("id") Long id){
return userService.getUserById(id);
}
}
service、
package com.xwctest.service;
import com.xwctest.bean.WuserBean;
import com.xwctest.dao.WUserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class WUserService {
@Autowired
private WUserDao wUserDao;
public WuserBean getUserById(Long id){
return wUserDao.getUserById(id);
}
}
dao
package com.xwctest.dao;
import com.xwctest.bean.WuserBean;
public interface WUserDao {
public WuserBean getUserById(Long id);
}
MainApplication类
package com.xwctest;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@MapperScan("com.xwctest.dao")
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class);
}
}
另外那个config包不用管,包括那个MainClass类、JavaConfig类都不用管
resource下新建mapping包。再新建映射文件WUserMapping.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xwctest.dao.WUserDao">
<resultMap id="BaseResultMap" type="com.xwctest.bean.WuserBean">
<result column="id" jdbcType="BIGINT" property="id" />
<result column="userName" jdbcType="VARCHAR" property="userName" />
<result column="passWord" jdbcType="VARCHAR" property="passWord" />
<result column="realName" jdbcType="VARCHAR" property="realName" />
</resultMap>
<select id="getUserById" resultType="com.xwctest.bean.WuserBean">
select * from WUSER where id = #{id}
</select>
</mapper>
config下的application.yml配置文件
server:
port: 8082
spring:
datasource:
password: *******
username: ******
url: jdbc:sqlserver://******;DatabaseName=******
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
mybatis:
mapper-locations: classpath:mapping/*Mapping.xml
type-aliases-package: com.xwctest.bean
总的结构如下图:图中可能有多余的文件,这是测试其他的。不管
数据库
CREATE TABLE DBO.WUSER (
id BIGINT NOT NULL,
userName varchar(60) NULL,
passWord varchar(60) NULL,
realName varchar(60) NULL,
CONSTRAINT PK_USER PRIMARY KEY(ID));
手动插入数据
运行