真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

springboot+springmvc+mybatis項目整合的示例分析

這篇文章將為大家詳細講解有關(guān)springboot+springmvc+mybatis項目整合的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

在崇義等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需求定制設(shè)計,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都全網(wǎng)營銷,外貿(mào)營銷網(wǎng)站建設(shè),崇義網(wǎng)站建設(shè)費用合理。

特點:

1. 創(chuàng)建獨立的Spring應(yīng)用程序
2. 嵌入的Tomcat,無需部署WAR文件
3. 簡化Maven配置
4. 自動配置Spring
5. 提供生產(chǎn)就緒型功能,如指標,健康檢查和外部配置
6. 絕對沒有代碼生成和對XML沒有要求配置
(以上大部分內(nèi)容摘自百度百科)

 ok,關(guān)于springboot的講解就到這里大家想了解的更詳細可以自行百度。

搭建springboot項目我推薦大家用idea或者sts(spring tool suite spring公司自己研發(fā)的一款編輯器),我現(xiàn)在用的是idea,所以接下來我是用idea搭建項目的

 一、創(chuàng)建項目

springboot+springmvc+mybatis項目整合的示例分析

填寫完Group和Atrifact后點擊下一步,這里我選擇的是jar,因為官方文檔推薦的是打包成JAR,所以這里就不過多解釋了。

springboot+springmvc+mybatis項目整合的示例分析

這里勾選上web

springboot+springmvc+mybatis項目整合的示例分析

這里勾選上MySQL、JDBC和Mybatis點擊下一步

springboot+springmvc+mybatis項目整合的示例分析

這里輸入項目名和項目路徑后點擊完成

springboot+springmvc+mybatis項目整合的示例分析

這是新建完成后的項目結(jié)構(gòu)

springboot+springmvc+mybatis項目整合的示例分析

 二、添加pom.xml依賴

因為springboot不推薦使用jsp做頁面,如果想要使用就必需的添加jsp的依賴



 4.0.0

 com.chaoqi
 springboot_demo2
 0.0.1-SNAPSHOT
 jar

 springboot_demo2
 Demo project for Spring Boot

 
  org.springframework.boot
  spring-boot-starter-parent
  2.0.0.RELEASE
  
 

 
  UTF-8
  UTF-8
  1.8
 

 
  
   org.springframework.boot
   spring-boot-starter-jdbc
  
  
   org.springframework.boot
   spring-boot-starter-web
  
  
   org.mybatis.spring.boot
   mybatis-spring-boot-starter
   1.3.2
  

  
   mysql
   mysql-connector-java
   runtime
  
  
   org.springframework.boot
   spring-boot-starter-test
   test
  
  
  
   org.springframework.boot
   spring-boot-starter-tomcat
  
  
   org.apache.tomcat.embed
   tomcat-embed-jasper
  
 

 
  
   
    org.springframework.boot
    spring-boot-maven-plugin
   
  
 


三、springboot整合springmvc

因為在創(chuàng)建項目的時候我們選擇了mybatis和jdbc所以在這里也要把他們兩也給配置進去

編輯application.properties

# 頁面默認前綴目錄
spring.mvc.view.prefix=/WEB-INF/jsp/
# 響應(yīng)頁面默認后綴
spring.mvc.view.suffix=.jsp

#開發(fā)配置
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8
spring.datasource.username = root
spring.datasource.password = 123456

# mybatis接口文件位置
mybatis.mapper-locations: classpath:mapper/*.xml
mybatis.type-aliases-package: com.chaoqi.springboot_demo2.domain

如果大家習(xí)慣用application.yml那也可以用,但是用application.yml在第一次啟動項目的時候一定要maven clean一下,不然會報錯。

server:
 port: 8080

spring:
 mvc:
 view:
  prefix: /WEB-INF/jsp/
  suffix: .jsp
 datasource:
 url: jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8&useUnicode=true&useSSL=false
 username: root
 password: 123456
 driver-class-name: com.mysql.jdbc.Driver

mybatis:
 mapper-locations: classpath:mapping/*.xml
 type-aliases-package: com.chaoqi.springboot_demo2.domain

編輯完application.properties之后再src/mian下創(chuàng)建webapp目錄,結(jié)構(gòu)如下

springboot+springmvc+mybatis項目整合的示例分析

新建IndexController

springboot+springmvc+mybatis項目整合的示例分析

package com.chaoqi.springboot_test.web;


import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class IndexController {
  private static final String INDEX = "index";
 @RequestMapping("/show")
 public String getIndex() {
  return INDEX;
 }
}

運行main函數(shù)

springboot+springmvc+mybatis項目整合的示例分析

訪問頁面,成功

springboot+springmvc+mybatis項目整合的示例分析

四、springboot整合mybatis

創(chuàng)建數(shù)據(jù)庫表

-- ----------------------------
-- Table structure for music_info
-- ----------------------------
DROP TABLE IF EXISTS `music_info`;
CREATE TABLE `music_info` (
 `id` int(10) NOT NULL AUTO_INCREMENT COMMENT '主鍵id',
 `singer_name` varchar(100) NOT NULL COMMENT '歌手名',
 `music_size` varchar(100) NOT NULL COMMENT '歌曲大小',
 `music_name` varchar(100) NOT NULL COMMENT '歌曲名',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of music_info
-- ----------------------------
INSERT INTO `music_info` VALUES ('1', '小三', '3.2M', '起風(fēng)了');
INSERT INTO `music_info` VALUES ('2', '劉德華', '3.0M', '忘情水');
INSERT INTO `music_info` VALUES ('3', '豬點點', '5.0M', '會寫程序的小豬');

創(chuàng)建pojo

package com.chaoqi.springboot_test.dao.domain;

public class MusicInfo {
 // 主鍵id
 private Integer id;

 // 歌手名
 private String singerName;

 // 歌曲大小
 private String musicSize;

 // 歌曲名
 private String musicName;

 /**
  * 獲取 主鍵id music_info.id
  *
  * @return 主鍵id
  */
 public Integer getId() {
  return id;
 }

 /**
  * 設(shè)置 主鍵id music_info.id
  *
  * @param id 主鍵id
  */
 public void setId(Integer id) {
  this.id = id;
 }

 /**
  * 獲取 歌手名 music_info.singer_name
  *
  * @return 歌手名
  */
 public String getSingerName() {
  return singerName;
 }

 /**
  * 設(shè)置 歌手名 music_info.singer_name
  *
  * @param singerName 歌手名
  */
 public void setSingerName(String singerName) {
  this.singerName = singerName == null ? null : singerName.trim();
 }

 /**
  * 獲取 歌曲大小 music_info.music_size
  *
  * @return 歌曲大小
  */
 public String getMusicSize() {
  return musicSize;
 }

 /**
  * 設(shè)置 歌曲大小 music_info.music_size
  *
  * @param musicSize 歌曲大小
  */
 public void setMusicSize(String musicSize) {
  this.musicSize = musicSize == null ? null : musicSize.trim();
 }

 /**
  * 獲取 歌曲名 music_info.music_name
  *
  * @return 歌曲名
  */
 public String getMusicName() {
  return musicName;
 }

 /**
  * 設(shè)置 歌曲名 music_info.music_name
  *
  * @param musicName 歌曲名
  */
 public void setMusicName(String musicName) {
  this.musicName = musicName == null ? null : musicName.trim();
 }

 @Override
 public String toString() {
  return "MusicInfo{" +
    "id=" + id +
    ", singerName='" + singerName + '\'' +
    ", musicSize='" + musicSize + '\'' +
    ", musicName='" + musicName + '\'' +
    '}';
 }
}

創(chuàng)建mapper.xml




 
 
 
 
 
 

創(chuàng)建mapper

package com.chaoqi.springboot_test.dao.mapper;

import com.chaoqi.springboot_test.dao.domain.MusicInfo;
import org.apache.ibatis.annotations.ResultMap;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface MusicInfoMapper {
 @ResultMap("BaseResultMap")
 @Select("select * from music_info")
 List selectAll(MusicInfo musicInfo);
}

service接口

package com.chaoqi.springboot_test.service;

import com.chaoqi.springboot_test.dao.domain.MusicInfo;
import java.util.List;
public interface MusicInfoService {

 public List getMusicInfo(MusicInfo musicInfo);
}

service實現(xiàn)類

package com.chaoqi.springboot_test.service.impl;

import com.chaoqi.springboot_test.dao.domain.MusicInfo;
import com.chaoqi.springboot_test.dao.mapper.MusicInfoMapper;
import com.chaoqi.springboot_test.service.MusicInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class MusicInfoServiceImpl implements MusicInfoService {

 @Autowired
 private MusicInfoMapper musicInfoMapper;

 @Override
 public List getMusicInfo(MusicInfo musicInfo) {
  List musicInfos = musicInfoMapper.selectAll(null);
  return musicInfos;
 }
}

創(chuàng)建完成后的結(jié)構(gòu)如下

springboot+springmvc+mybatis項目整合的示例分析

編輯indexController

package com.chaoqi.springboot_test.web;

import com.chaoqi.springboot_test.dao.domain.MusicInfo;
import com.chaoqi.springboot_test.service.MusicInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.List;

@Controller
public class IndexController {

 private static final String INDEX = "index";
 @Autowired
 private MusicInfoService musicInfoService;

 @RequestMapping("/show")
 public String getIndex() {
  return INDEX;
 }

 @RequestMapping("/music")
 @ResponseBody
 public List getMusicInfo(MusicInfo musicInfo) {
  List musicInfoList = musicInfoService.getMusicInfo(null);
  return musicInfoList;
 }
}

給SpringbootTestApplication類加上注解@MapperScan("com.chaoqi.springboot_test.dao.mapper")

package com.chaoqi.springboot_test;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@MapperScan("com.chaoqi.springboot_test.dao.mapper")
public class SpringbootTestApplication {

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

運行項目,成功,springboot+springmvc+mybatis整合完成(源碼下載地址)

springboot+springmvc+mybatis項目整合的示例分析

關(guān)于“springboot+springmvc+mybatis項目整合的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。


當前題目:springboot+springmvc+mybatis項目整合的示例分析
URL地址:http://weahome.cn/article/jeojid.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部