1. 程式人生 > >Speing-Boot學習 搭建一個簡單的Spring-boot + mybatis

Speing-Boot學習 搭建一個簡單的Spring-boot + mybatis

首先先來認識一下Spring-boot框架,該框架是對Spring框架的進一步整合,設計目的就是簡化Spring應用的搭建和開發過程。優點如下:

  1. 對第三方外掛封裝和整合,提供第三方介面
  2. 無需配置複雜的XML
  3. 提供安全等特性
  4. 核心功能-自動配置
  5. 內嵌式 web伺服器(Tomcat、Jetty等)
  6. 提供POM,簡化Maven配置

接下來,搭建一個最簡單的spring-boot+mybatis,使用spring-boot 2.0.6版本,jdk必須是1.8

專案檔案結構:

pom檔案:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>cn.wzl</groupId>
	<artifactId>sb-study</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>sb-study</name>
	<description>Demo project for Spring Boot</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.6.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

		<!--tomcat-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<!--mysql-->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
		</dependency>

		<!--配置檔案處理器-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-configuration-processor</artifactId>
			<optional>true</optional>
		</dependency>

		<!--spring boot整合mybatis-->

		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
			<version>1.3.2</version>
		</dependency>
		<!--jsonutils-->
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid</artifactId>
			<version>1.1.10</version>
		</dependency>

	</dependencies>

	<build>
	
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>


</project>

配置檔案:application.properties

#啟動tomcat後的埠號
server.port=8080
#資料庫的四大引數
spring.datasource.username=root
spring.datasource.password=bobo
spring.datasource.url=jdbc:mysql://localhost:3306/sb-study?useUnicode=true&characterEncoding=UTF-8
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

#掃描mapper檔案的路勁
mybatis.mapper-locations=classpath:cn/wzl/sbstudy/dao/mapper/*.xml

實體類:User

public class User implements Serializable{
    private Integer id;
    private String userName;
    private String password;

    public Integer getId() {
        return id;
    }

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

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

dao層

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="cn.wzl.sbstudy.dao.UserMapper">
    <resultMap id="BaseResultMap" type="cn.wzl.sbstudy.model.User">
        <id column="ID" jdbcType="INTEGER" property="id" />
        <result column="USER_NAME" jdbcType="VARCHAR" property="userName" />
        <result column="PASSWORD" jdbcType="VARCHAR" property="password" />
    </resultMap>

    <select id="getOne" resultMap="BaseResultMap">
        select * from user limit 0,1
    </select>
</mapper>

UserMapper.java

//@Mapper的註解替換了原來的@Reposity
@Mapper
public interface UserMapper {

    User getOne();
}

Service層

UserService介面類:

public interface UserService {
    User getOne();
}

UserServiceImpl:實現類

@Service("userService")
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;

    @Override
    public User getOne() {
        User user = userMapper.getOne();
        return user;
    }
}

Controller層

UserController:

@RestController//該註解替換了原來的@Controller註解
@RequestMapping("User")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("getOneUserName")
    public String getOneUserName(){
        return  "張三";
    }

    @GetMapping("getOne")
    public User getOne(){
        User user = userService.getOne();
        return user;
    }
}

spring-boot啟動類:

//這個註解,預設配置了掃描與該類處於同一層目錄包下面的所有類,並載入所有被註解的bean。所以無需再通過配置檔案配置掃描地址
@SpringBootApplication
public class SbStudyApplication {
	public static void main(String[] args) {
		SpringApplication.run(SbStudyApplication.class, args);
	}
}

根據啟動類,啟動後,

會輸出:

{"id":1,"userName":"123","password":"123"}

簡單的Spring-boot就這麼簡單的實現了!

相關推薦

Speing-Boot學習 搭建一個簡單Spring-boot + mybatis

首先先來認識一下Spring-boot框架,該框架是對Spring框架的進一步整合,設計目的就是簡化Spring應用的搭建和開發過程。優點如下: 對第三方外掛封裝和整合,提供第三方介面 無需配置複雜的XML 提供安全等特性 核心功能-自動配置 內嵌式 web伺服器(

Spring Boot學習筆記之使用Spring Boot建立一個簡單的web專案(工具使用IntelliJ IDEA)

新建Maven專案 1.File --> New Project --> Maven --> Next 2.填寫專案資訊,完成之後點選Next,然後點選Finish 3.專案建好之後如下圖所示 修改pom檔案中的配置資訊 <?xml version

Spring boot 學習一: 認識Spring boot

XML 過程 maven 認識 很多 團隊 但是 日誌文件 pivotal 什麽是spring boot Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人

Spring Boot學習總結】14.Spring Boot整合Redis-與傳統方式對比

前面我們講解了如何使用Spring Boot來控制事務,下面我們來講解一下如何使用Spring Boot來整合Redis 為了對比傳統工程與Spring Boot整合的不同,以及彰顯Spring Boot整合的優勢,我們會逐一剖析傳統整合方式與Spring Boot整合方式。 一、傳統方式整

Spring Boot學習總結】13.Spring Boot事務控制

上一篇我們講解了Spring Boot與MyBatis的結合開發,併成功操作了資料庫。眾所周知,保證資料庫一致性的操作,就是事務的控制。 而Spring事務管理可以分為兩種:程式設計式以及宣告式。 其中程式設計式事務就是使用編寫程式碼的方式,進行事務的控制。而宣告式事務一般通

Spring Boot學習(十四)之Spring boot中使用QQ郵箱傳送郵件

相信使用過Spring的眾多開發者都知道Spring提供了非常好用的JavaMailSender介面實現郵件傳送。在Spring Boot的Starter模組中也為此提供了自動化配置。下面通過例項看看如

Spring Boot學習(十二)之Spring Boot使用@Async實現非同步呼叫

什麼是“非同步呼叫”?“非同步呼叫”對應的是“同步呼叫”,同步呼叫指程式按照定義順序依次執行,每一行程式都必須等待上一行程式執行完成之後才能執行;非同步呼叫指程式在順序執行時,不等待非同步呼叫的語句返回

Spring Boot學習筆記1——搭建一個簡單Spring Boot專案

1.建立一個Maven專案匯入相應的依賴 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocatio

使用eclipse工具搭建一個簡單Spring boot

首先宣告一下,我用的是win10的作業系統,實現過程基本是一樣的,只是檢視展示過程可能會有些差別。 1.配置java執行環境 1.1 要使用eclipse,需要配置jdk環境。在網上下一個jdk安裝包,我用的是jdk1.8。安裝好jdk後,安裝目錄如下 1.2 接下來就要

Spring Boot學習-快速搭建 Actuator和spring boot admin 進行監控(八)

1 搭建SpringBoot admin 服務端     建立springBoot 專案並引入springBoot admin 服務端的依賴。 <dependency> <gro

REDIS學習(4)spring boot redisTemplate 對REDIS的簡單封裝,以及對引用包的說明,以及對序列化的詳細說明

綜合1,2,3以及目前,我們所引用的redis包不過是 <dependency> <groupId>org.springframework.boot</groupId><!-- 會附帶引進jedis-2.7.3的包 -->

Spring Boot學習--打包一個可執行的jar專案

現在很多專案都是通過jar的形式直接部署執行的,這裡我們來簡單介紹下。 接著上篇文章的專案來繼續學習,在pom的dependencies下新增以下配置: <build> <plugins> <plug

Spring boot專案搭建簡單例項

Spring boot專案搭建 Spring Boot 概述 Build Anything with Spring Boot:Spring Boot is the starting point for building all Spring-based applications. Spring Bo

Spring Boot 快速搭建簡單演示

1、 官網開速生成專案 1.1 在瀏覽器上輸入地址:http://start.spring.io/。 可以選擇一maven和gradle,我這裡用maven來構建專案 1.2 填寫maven資訊: 1.3 選擇專案使用的技術(starter pom) 這裡備選的每

elasticsearch6.3.2學習記錄二 《spring boot 搭建es開發環境,建立索引,新增資料,查詢檢索》

spring boot + maven + idea jdk1.8以上 搭建 一、 pom.xml檔案 ,如果不需要連線資料庫,可以不引入資料庫連線依賴,在程式入口類加上這句註解 @EnableAutoConfiguration(exclud

Spring Boot入門第二天:一個基於Spring Boot的Web應用,使用了Spring Data JPA和Freemarker。

per pan let mysq 應用 posit ble host thead 今天打算從數據庫中取數據,並展示到視圖中。不多說,先上圖: 第一步:添加依賴。打開pom.xml文件,添加必要的依賴,完整代碼如下: <?xml version="1.0" enco

kotlin web開發教程【一】從零搭建kotlin與spring boot開發環境

1.8 jre cond utf8 erro 2.0 .com 就會 一個tomcat IDEA中文輸入法的智能提示框不會跟隨光標的問題我用的開發工具是IDEA這個版本的IDEA有一個問題;就是中文輸入法的智能提示框不會跟隨光標解決這個問題的辦法很簡單,只有在安裝目錄下把J

從.Net到Java學習第三篇——spring boot+mybatis+mysql

jar fig targe list pro ble TE png tween 環境:mysql5.7 新建mysql數據庫demo,然後執行如下sql腳本進行數據表創建和數據初始化: -- ---------------------------- -- Tabl

一個基於Spring Boot的API、RESTful API項目種子(骨架)

工具 form enum 環境 mov 輸入 排除 規則 簡單的 前言最近使用Spring Boot 配合 MyBatis 、通用Mapper插件、PageHelper分頁插件 連做了幾個中小型API項目,做下來覺得這套框架、工具搭配起來開發這種項目確實非常舒服,團隊的反響

Spring基礎:快速入門spring boot(7):spring boot 2.0簡單介紹

從這篇文章開始以spring boot2為主要版本進行使用介紹。 Spring boot 2特性 spring boot2在如下的部分有所變化和增強,相關特性在後續逐步展開。 特性增強 基礎元件升級: JDK1.8+ tomcat 8+ Thymeleaf 3