1、Intellij idea菜单栏File->new->project。
2、选择左侧栏中spring initializr,右侧选择jdk版本,以及默认的Service URL,点击next。
3、然后填写项目的Group、Artifact等信息,点击next。
4、左侧点击Web,中间一侧选择Web,然后左侧选择SQL,中间一侧选择JPA、Mybatis、MYSQL,点击next。
5、填写Project name 等信息,然后点击Finish。
项目构建完成,目录结构如下:
接下来测试一下项目
1、在src/main/java下新建目录com/demo/entity/User。
package com.demo.entity;
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
相同目录下新建com/demo/controller/TestBootController。
package com.demo.controller;
import com.demo.entity.User;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
@RequestMapping("/testboot")
public class TestBootController {
@RequestMapping("getuser")
public User getUser() {
User user = new User();
user.setName("test");
return user;
}
}
spring boot启动DemoAplication是需要扫描它下面的Controller等类的,所以将DemoApplication移动到com/demo目录下。还有就是Spring boot启动默认是要加载数据源的,所以我们在src/main/resources下新建application.yml(注意空格)
或者在application.properties中配置
项目目录结构:
启动DemoApplication的main方法,访问http://localhost:8080/testboot/getuser即可
3.整合mybatis
先看项目结构
TestBootController
package com.demo.controller;
import com.demo.entity.User;
import com.demo.service.UserService;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@Controller
@RequestMapping("/user")
public class TestBootController {
@Resource
private UserService userService;
@RequestMapping("/showUser")
@ResponseBody
public User toIndex(HttpServletRequest request, Model model){
int userId = Integer.parseInt(request.getParameter("id"));
User user = this.userService.getNameById(userId);
return user;
}
}
User:
package com.demo.controller;
import com.demo.entity.User;
import com.demo.service.UserService;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@Controller
@RequestMapping("/user")
public class TestBootController {
@Resource
private UserService userService;
@RequestMapping("/showUser")
@ResponseBody
public User toIndex(HttpServletRequest request, Model model){
int userId = Integer.parseInt(request.getParameter("id"));
User user = this.userService.getNameById(userId);
return user;
}
}
UserMapper:
package com.demo.mapper;
import com.demo.entity.User;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface UserMapper {
User getNameById(Integer id);
}
UserService:
package com.demo.service;
import com.demo.entity.User;
public interface UserService {
public User getNameById(int userId);
}
UserServiceImpl:
package com.demo.service.impl;
import com.demo.entity.User;
import com.demo.mapper.UserMapper;
import com.demo.service.UserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class UserServiceImpl implements UserService {
@Resource
private UserMapper userMapper;
@Override
public User getNameById(int userId) {
return userMapper.getNameById(userId);
}
}
UserMapper.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.demo.mapper.UserMapper" >
<select id="getNameById" parameterType="com.demo.entity.User" resultType="com.demo.entity.User" >
select * from user_t where id = #{id}
</select>
</mapper>
最后访问url
致此,整个环境已经搭好了,项目中配置了mybatis的generator,还有点问题,还没有调试好。