目录
修改编辑与控制台字体大小
二、sprintboot项目入门
【1】直接开始配置Controller
【2】直接请求数据库中的数据,返回json格式
(0)整合PostgreSQL框架
(2)实体entity类
(3)控制类MainController
(4)测试
【3】使用mapper请求数据库中的数据
(1)UserMapper.java代码:
(2)UserController.java代码:
(3)测试
修改编辑与控制台字体大小
可以将编辑窗口的字体大小设置为固定值,
还可以通过Ctrl+鼠标滚轮改变编辑窗口的字体大小,设置如下:
这样就可以通过Ctrl+鼠标滚轮来改变编辑窗口和控制台的字体大小了。
二、sprintboot项目入门
【1】直接开始配置Controller
我们可以直接开始配置Controller。
(1)由于SpringBoot是自动扫描的,因此我们直接创建一个Controller即可被加载,MainController.java代码:
package com.example.demotwo.controller;
import com.example.demotwo.entity.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
@Controller
public class MainController {
@RequestMapping("/index")
@ResponseBody
public String index() {
return "欢迎访问你的第一个Sprintboot项目";
}
}
(2)启动项目之后,浏览器访问http://localhost:8088/index,返回字符串“欢迎访问你的第一个Sprintboot项目”,说明成功了。
【2】直接请求数据库中的数据,返回json格式
它还可以自动识别类型,如果我们返回的是一个对象类型的数据,那么它会自动转换为JSON数据格式,无需配置。
(0)整合PostgreSQL框架
Mybatis框架整合:
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
与Mybatis框架整合类似,我们只需要在pom文件中,导入PostgreSQL对应的starter依赖即可,
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
导入依赖后,直接启动会报错,是因为有必要的配置我们没有去编写,我们需要指定数据源的相关信息。
(2)数据库连接配置
在application.properties配置文件中,为PostgreSQL数据库配置数据源等信息。此处我是用的PostgreSQL数据库。
详情请移步至这篇博客基于vscode创建SpringBoot项目,连接postgresql数据库 2
然后,在PostgreSQL数据库中创建【my_user】表,并插入了几条数据,
(2)实体entity类
定义一个实体entity类,User.java代码:
package com.example.demotwo.entity;
//@TableName("my_user")
public class User {
private String username;
private String password;
public void setUsername(String username) {
this.username = username;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
@Override
public String toString() {
return "User{" +
"username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
(3)控制类MainController
控制类MainController.java代码:
package com.example.demotwo.controller;
import com.example.demotwo.entity.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
@Controller
public class MainController {
@RequestMapping("/index")
@ResponseBody
public String index() {
return "欢迎访问你的第一个Sprintboot项目";
}
@RequestMapping("/student")
@ResponseBody
public User user() {
User user = new User();
user.setUsername("小明");
user.setPassword("123456");
return user;
}
}
(4)测试
浏览器访问http://localhost:8088/student,浏览器能够直接得到application/json
的响应数据。
【3】使用mapper请求数据库中的数据
(1)UserMapper.java代码:
package com.example.demotwo.mapper;
//import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.demotwo.entity.User;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper
public interface UserMapper{
// 查询所有用户
@Select("select * from my_user")
public List<User> find();
}
(2)UserController.java代码:
package com.example.demotwo.controller;
import com.example.demotwo.entity.User;
import com.example.demotwo.mapper.UserMapper;
import org.apache.ibatis.annotations.Insert;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@CrossOrigin
public class UserController{
@Autowired
private UserMapper userMapper;
@GetMapping("/user/findAll")
public List query(){
List <User> list = userMapper.find();
System.out.println(list); // 快捷键:so
return list;
}
}
(3)测试
当前目录结构如下图所示:
再次启动项目,成功,没有报错。
浏览器访问http://localhost:8088/user/findAll,可以看到,浏览器能够直接得到application/json
的响应数据。