SpringBoot入门-实现简单的表查询

Spring boot 入门

  • 本文基于图灵学院公平开课
  • 开发工具: IDEA + MySQL
  • 项目使用 Mybatis 的注解方式开发
  • 项目快速创建地址: 快速创建 Springboot 项目

1. Spring boot 特点

  • 创建独立的 Spring 容器应用程序
  • 嵌容器 (tomcat , jetty , undertow) 无需 War 部署
  • 自动配置 Spring 配置
  • 简化 maven 配置

2. 项目搭建

点击上面的快速创建项目链接, 输出以下内容, 然后用 idea 导入

这里写图片描述
这里写图片描述
这里写图片描述

导入后里面会有一个带有 main 方法的项目名 Application.java 文件, 后面启动项目就是启动里面的 main 方法

2. 导入后等待一段时间的项目构建, 等到基本项目骨架搭建完毕后, 创建各个包; 完成后项目结构如下:

这里写图片描述

创建数据表:

DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` bigint(20) NOT NULL,
  `username` varchar(255) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `phone` bigint(20) DEFAULT NULL,
  `email` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

导入数据

INSERT INTO `user` VALUES ('1', '悟空', '31', '133', '123123@qq.com');
INSERT INTO `user` VALUES ('2', 'luban', '31', '133', '123123@qq.com');

3. 写各个文件:

application.properties

#修改端口号:自己随便改,找个不被占用的就行
server.port=8081

#修改项目访问地址:自己随便改
server.context-path=/springboot

#修改项目启动logo:在resource下新建 : banner.txt,里面修改
banner.location=classpath:tl.txt

#配置数据库连接
spring.datasource.url=jdbc:mysql://localhost/ssm
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

User.java

public class User {

    private int id;
    private String username;
    private String email;
    private int age;
    private int phone;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getPhone() {
        return phone;
    }

    public void setPhone(int phone) {
        this.phone = phone;
    }

}

UserMapper.java

/**
 * 使用注解开发dao层,不用配置mapper.xml
 * Created by 框 on 2018/4/19.
 */

@Mapper
public interface UserMapper {

    /**
     * 根据年龄查询
     * @param age
     * @return
     */
    @Select("SELECT * FROM USER WHERE AGE=#{age}")
    public List<User> getUser(int age);

}

UserService.java

public interface UserService {

    public List<User> getUser(int age);

}

USerServiceImpl.java(这里的注解一定不能丢)

@Service
public class UserServiceImpl implements UserService{

    @Autowired
    UserMapper userMapper;

    @Override
    public List<User> getUser(int age) {
        return userMapper.getUser(age);
    }
}

UserController.java

/**
 * 使用RestController注解, 可以不用ResponseBody注解来表示返回视图
 * Created by 框 on 2018/4/19.
 */


@RestController
public class UserController {

    @Autowired
    UserService userService;

    @GetMapping("show")
    public List<User> getUser(int age){
        return userService.getUser(age);
    }

}

项目的 Application.java(这个不用自己创建, 他自己就有的)

/**
 * ComponentScan注解扫描处理器和业务层
 * MapperScan注解扫描dao层
 */

@SpringBootApplication
@EnableAutoConfiguration
@ComponentScan(basePackages = {"cn.kuang.controller","cn.kuang.service"})
@MapperScan(basePackages = "cn.kuang.dao")
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

3. 启动测试

点击右上角的运行 (或者直接打开项目名 Application.java 运行里面的 main 方法)

状态栏会显示项目启动情况

这里写图片描述

接下来在浏览器地址栏输入:http://localhost:8081/springboot/show?age=31

  • 8081: 之前配置文件里面设置的端口
  • springboot: 配置文件里设置的项目地址
  • /show:controller 里面设置的访问地址
  • ?age=31: 因为没有写前端, 所以直接通过地址栏吧参数传进去

此时就会显示出从数据库里查询出的记录 (这里我吧两条记录的 age 都弄一样了)

这里写图片描述

最后: 佛祖保佑那个启动 logo. 修改 resource 下的 tl.txt 里面的图案就可以

  • 9
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值