打开IDEA,选择File->New->Project->Spring Initialer->点击Next
上述操作搞完后,开始勾选依赖,Springboot为我们提供了常见的依赖,可以勾选自己需要的,一般选择Lombok、Spring Web、Mybatis Framework、MySQL Driver。勾选之后,springboot会 自动帮你把依赖加入pom文件。
勾选后点击next下一步。
最后确认项目名称,和文件地址,点击finish就结束了springboot的创建。
springboot项目帮我们创建好java source目录和resource资源目录,项目源码类DemoApplication.java,全局配置文件application.properties,并且帮我们导入了之前勾选的依赖:
DemoApplication.java是一个带有main()方法的类,用于启动应用程序。
@SpringBootApplication开启了Spring的组件扫描和springboot的自动 配置功能,相当于将以下三个注解组合在了一起
(1)@Configuration:表名该类使用基于Java的配置,将此类作为配 置类。
(2)@ComponentScan:启用注解扫描。
(3)@EnableAutoConfiguration:开启springboot的自动配置功能。
SpringBootApplication的默认扫描范围为本包及其子包,因此启动类一般放在最外层。
同时,我们需要在@SpringBootApplication注解上方开启mapper层的扫描。
记得!!!@MapperScan()一定要放在@SpringBootApplication注解上方!!!
package com.hkj.demo;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@MapperScan("com.example.demo.mapper")
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
application.properties是一个全局配置文件,springboot项目启动时会默 认加载此文件的配置信息。
我们也可以在application.properties指定其他 配置文件在项目时自动加载。
#端口号
server.port=8080
#访问路径
server.servlet.context-path=/demo
#mybatis配置路径
mybatis.config-location=classpath:mybatis/mybatis-config.xml
#mapper文件路径
mybatis.mapper-locations=classpath:mybatis/mapper/*.xml
#日志文件
logging.file.path=/demo_log/log
#日志输出等级
logging.level.com.example.demo=debug
#数据库连接池
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.druid.filter.wall.config.multi-statement-allow=true
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
其中mybatis.config-location和mybatis.mapper-locations根据自己的最终创建位置改进路径
在resources下新建一个文件夹mybatis,用于存放mybatis配置文件文件 及mapper.xml文件。在mybatis下新建一个mybatis-config.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="defaultStatementTimeout" value="3000"/>
<!-- 开启驼峰命名规则-->
<setting name="mapUnderscoreToCamelCase" value="true"/>
<setting name="logImpl" value="SLF4J"/>
<setting name="lazyLoadingEnabled" value="true"/>
</settings>
</configuration>
application.properties中基本配置完成后我们就可以开始编写代码了。在 编写代码之前,我们同样需要创建项目包结构。
在java目录右击鼠标, New->Package,新建项目的包名,将需要用到的包名建好,分别为为 controller,service,mapper,bean等子包 。
这时候看下我的resource文件夹下的mapper文件夹,再看我上方启动类那边的位置,可以根据自己的实际情况写路径。
package com.example.demo.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class JsonResult<E> {
private int code; //接口状态码
private String massage; //接口返回消息2、User.java
private E content; //响应内容
}
package com.example.demo.bean;
import lombok.Data;
@Data //注解自动getter+setter
public class User {
private int id;
private String userName;
private String password;
}
package com.example.demo.controller;
import com.example.demo.bean.JsonResult;
import com.example.demo.bean.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
UserService userService;
@RequestMapping(value = "/login", method = RequestMethod.POST)
public JsonResult login(@RequestBody User user){
User res = userService.login(user);
if (res != null) {
return new JsonResult(200, "登陆成功", res);
}
return new JsonResult(500, "登陆失败", null);
}
}
package com.example.demo.mapper;
import com.example.demo.bean.User;
import org.springframework.stereotype.Repository;
@Repository
public interface UserMapper {
User login(User user);
}
//PS:这个文件你应该创建的是一个接口类型文件,记得!
package com.example.demo.service;
import com.example.demo.bean.User;
public interface UserService {
User login(User user);
}
//PS:这个文件你应该创建的是一个接口类型文件,记得!
package com.example.demo.service;
import com.example.demo.bean.User;
import com.example.demo.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements UserService{
@Autowired
UserMapper userMapper;
@Override
public User login(User user) {
return userMapper.login(user);
}
}
<?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.example.demo.mapper.UserMapper">
<select id="login" resultType="com.example.demo.bean.User">
select * from `user` where name=#{userName}
and password=#{password}
</select>
</mapper>
根据自己的数据库写sql语句。
因为springboot内置Tomcat,因此我们无需配置Tomcat,在上述代码完成之后进入DemoApplication.java,右键->Run ‘DemoApplication‘,项目就可以启动了
新建一个测试请求,按照下图填好相关的接口URL和参数和请求方式 ,点 击send发送请求:
看好图中勾选的键,自此就完成了!
代码已上传到github,可以参考git@github.com:hkj-07/SpringBoot-Mybatis.git
原文:https://www.cnblogs.com/HKnight/p/14653288.html