創(chuàng)建SpringBoot Web工程

進(jìn)入Spring腳手架 創(chuàng)建Web工程

SpringInitialize.png

還有其他功能可以選擇性勾選

  • 點(diǎn)擊Generate Project后得到一個(gè)壓縮包,解壓,然后導(dǎo)入解壓后的工程

  • 添加Maven依賴(lài),配置pom.xml

        <!-- 熱部署 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
            <scope>true</scope>
        </dependency>

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
  • 配置application.properties
#數(shù)據(jù)庫(kù)連接配置
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=UTF-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=******
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

#mybatis.typeAliasesPackage:為實(shí)體對(duì)象所在的包,跟數(shù)據(jù)庫(kù)表一一對(duì)應(yīng)
#mybatis.mapperLocations:mapper文件的位置
mybatis.mapperLocations=classpath:mapper/*.xml
mybatis.typeAliasesPackage=com.example.demo.model

#配置執(zhí)行SQL語(yǔ)句打印
logging.level.com.example.demo.dao=DEBUG
  • SpringBoot Application
package com.example.demo;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan("com.example.demo.dao")
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}
  • Controller
package com.example.demo.controller;

import com.example.demo.model.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/test")
public class TestController {

    @Autowired
    private UserService userService;

    @RequestMapping(value = "/hello", method = RequestMethod.GET)
    public String hello() {
        return "Hello Spring";
    }

    @RequestMapping(value = "/insertUser", method = RequestMethod.POST)
    public void insertUser(@RequestParam("name") String name, @RequestParam("sex") String sex) {
        User user = new User();
        user.setName(name);
        user.setSex(sex);
        userService.insertUser(user);
    }
}
  • Service
package com.example.demo.service;

import com.example.demo.model.User;

public interface UserService {

    public void insertUser(User user);

}
  • Service Impl
package com.example.demo.service.impl;

import com.example.demo.dao.UserDao;
import com.example.demo.model.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private UserDao userDao;

    @Override
    public void insertUser(User user) {
        userDao.addUserInfo(user);
    }
}

  • Dao

package com.fluently.blog.dao;

import com.fluently.blog.model.User;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface UserDao {
    public void addUserInfo(User user);
}

  • Model
package com.example.demo.model;

public class User {
    private String name;
    private String sex;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }
}

  • Mapper
<?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.dao.UserDao">
    <insert id="addUserInfo" parameterType="com.example.demo.model.User">

        insert into user (name, sex) values (#{name,jdbcType=VARCHAR}, #{sex,jdbcType=VARCHAR})

    </insert>
</mapper>
  • 最后目錄如下
目錄.png

至此,完成了一個(gè)具有Restful接口、集成Mybatis的Spring Boot Web工程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評(píng)論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,272評(píng)論 6 342
  • springboot 概述 SpringBoot能夠快速開(kāi)發(fā),簡(jiǎn)化部署,適用于微服務(wù) 參考嘟嘟大神SpringBo...
    一紙硯白閱讀 5,751評(píng)論 2 20
  • 1.運(yùn)動(dòng)養(yǎng)護(hù): 健身房2次/美容院2次 每天晚上3KM走路 2.閱讀/線(xiàn)下活動(dòng) 《我是爬行者小江》放松型閱讀,幾天...
    Celia足跡閱讀 294評(píng)論 0 0
  • 寫(xiě)在前面 代碼放到 git 倉(cāng)庫(kù),然后本地修改同步推送至倉(cāng)庫(kù),這在生活中是很常見(jiàn)的,下面是一個(gè)最簡(jiǎn)單的案例。 遠(yuǎn)程...
    athlonreg閱讀 8,130評(píng)論 0 0

友情鏈接更多精彩內(nèi)容