使用IDEA搭建Spring boot+Mybatis工程

简介:Spring boot只使用一个核心配置文件,取消了一系列xml配置,甚至连web.xml都没有,全部使用注解的方式完成WEB层的功能。框架内置Tomcat服务器,运行启动类中的Main函数即可启动。

下面就来搭建Spring boot+Mybatis工程

新建工程

勾上web,其他的不用

Finish

完善一下目录结构:

在pom.xml配置所有相关的依赖:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5
 6     <groupId>com.tqh</groupId>
 7     <artifactId>demo</artifactId>
 8     <version>0.0.1-SNAPSHOT</version>
 9     <packaging>jar</packaging>
10
11     <name>demo</name>
12     <description>Demo project for Spring Boot</description>
13
14     <parent>
15         <groupId>org.springframework.boot</groupId>
16         <artifactId>spring-boot-starter-parent</artifactId>
17         <version>1.5.9.RELEASE</version>
18         <relativePath/> <!-- lookup parent from repository -->
19     </parent>
20
21     <properties>
22         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
23         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
24         <mybatis-spring-boot.version>1.2.0</mybatis-spring-boot.version>
25         <mysql-connector.version>5.1.39</mysql-connector.version>
26         <java.version>1.8</java.version>
27     </properties>
28
29     <dependencies>
30         <dependency>
31             <groupId>org.springframework.boot</groupId>
32             <artifactId>spring-boot-starter-web</artifactId>
33         </dependency>
34
35         <dependency>
36             <groupId>org.springframework.boot</groupId>
37             <artifactId>spring-boot-starter-test</artifactId>
38             <scope>test</scope>
39         </dependency>
40         <dependency>
41             <groupId>org.springframework.boot</groupId>
42             <artifactId>spring-boot-starter-thymeleaf</artifactId>
43         </dependency>
44         <dependency>
45             <groupId>org.mybatis.spring.boot</groupId>
46             <artifactId>mybatis-spring-boot-starter</artifactId>
47             <version>${mybatis-spring-boot.version}</version>
48         </dependency>
49         <dependency>
50             <groupId>mysql</groupId>
51             <artifactId>mysql-connector-java</artifactId>
52             <version>${mysql-connector.version}</version>
53         </dependency>
54     </dependencies>
55
56     <build>
57         <plugins>
58             <plugin>
59                 <groupId>org.springframework.boot</groupId>
60                 <artifactId>spring-boot-maven-plugin</artifactId>
61             </plugin>
62         </plugins>
63     </build>
64
65
66 </project>

配置核心文件 :

测试的数据库自己建好,不赘述

 1 server.port=9090 不配server.port默认是8080端口,我这里被占用,修改成9090
 2 #视图层控制
 3 spring.mvc.view.prefix=classpath:/templates/
 4 spring.mvc.view.suffix=.html
 5 spring.mvc.static-path-pattern=/static/**
 6
 7 spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
 8 spring.datasource.username= root
 9 spring.datasource.password=root
10 spring.datasource.driver-class-name=com.mysql.jdbc.Driver
11 mybatis.typeAliasesPackage=com.tqh.demo.model 

测试

在model包 创建个Person类

 1 package com.tqh.demo.model;
 2
 3 public class Person {
 4
 5     private Integer id;
 6     private String name;
 7     private Integer age;
 8
 9     public Integer getId() {
10         return id;
11     }
12
13     public void setId(Integer id) {
14         this.id = id;
15     }
16
17     public String getName() {
18         return name;
19     }
20
21     public void setName(String name) {
22         this.name = name;
23     }
24
25     public Integer getAge() {
26         return age;
27     }
28
29     public void setAge(Integer age) {
30         this.age = age;
31     }
32
33     @Override
34     public String toString() {
35         return
36                 "id=" + id +
37                         ", name=‘" + name + ‘\‘‘ +
38                         ", age=" + age
39                 ;
40     }
41 }

在Mapper包创建一个UserMapper

package com.tqh.demo.mapper;

import com.tqh.demo.model.Person;
import org.apache.ibatis.annotations.Select;

public interface UserMapper {

    @Select("SELECT * FROM Person WHERE id = #{id}")
    Person selectUser(int id);
}

 在Service包创建一个UserService接口及其实现UserServiceImp

1 package com.tqh.demo.service;
2
3
4 import com.tqh.demo.model.Person;
5
6 public interface UserService {
7     Person selectUser(int id);
8
9 }
 1 package com.tqh.demo.service.imp;
 2
 3 import com.tqh.demo.mapper.UserMapper;
 4 import com.tqh.demo.model.Person;
 5 import com.tqh.demo.service.UserService;
 6 import org.springframework.beans.factory.annotation.Autowired;
 7 import org.springframework.stereotype.Service;
 8
 9 @Service
10 public class UserServiceImp implements UserService {
11
12     @Autowired
13     UserMapper userMapper;
14
15     @Override
16     public Person selectUser(int id) {
17         return userMapper.selectUser(id);
18     }
19 }

在controller包新建一个UserController控制器

 1 package com.tqh.demo.controller;
 2
 3 import com.tqh.demo.service.UserService;
 4 import org.springframework.beans.factory.annotation.Autowired;
 5 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 6 import org.springframework.web.bind.annotation.PathVariable;
 7 import org.springframework.web.bind.annotation.RequestMapping;
 8 import org.springframework.web.bind.annotation.RestController;
 9
10 @RestController
11 @EnableAutoConfiguration
12 public class UserController {
13     @Autowired
14     private UserService userService;
15
16     @RequestMapping("/showUser/{id}")
17     public String selectUser (@PathVariable int id){
18         return userService.selectUser(id).toString();
19
20     }
21 }

编写启动类DemoApplication

 1 package com.tqh.demo;
 2
 3 import org.mybatis.spring.annotation.MapperScan;
 4 import org.springframework.boot.SpringApplication;
 5 import org.springframework.boot.autoconfigure.SpringBootApplication;
 6
 7 @MapperScan("com.tqh.demo.mapper")
 8 @SpringBootApplication
 9 public class DemoApplication {
10
11     public static void main(String[] args) {
12         SpringApplication.run(DemoApplication.class, args);
13     }
14 }

运行DemoApplication,打开浏览器访问http://localhost:9090/showUser/1,成功查询到数据库的数据

时间: 2024-10-11 05:18:30

使用IDEA搭建Spring boot+Mybatis工程的相关文章

idea搭建Spring Boot+MyBatis

Spring Boot不是一般的爽啊,还用什么SSM,赶紧换吧! 需要准备的环境: idea 2017.2 jdk1.8.0_144 Maven 3.5.0 请提前将idea与Maven.jdk配置好,本次项目用的都是比较新的. 步骤: 一.首先使用idea新建一个Spring Initializr项目 根据需要来勾选,此处勾选了几个常用的! 点击Finish,建立项目完成!第一次使用可能要等好长一会. 二.配置 完成后可以看到如下目录结构. 其中application.properties是配

idea 搭建Spring Boot +Mybatis

环境准备 idea 15 jDK tomcat maven 搭建方式 官网下载源码包解压缩 使用idea中的Spring initializr创建 这两种方法创建的项目完全相同,只是操作方式不一样 这里介绍第二种方法,用idea创建 ①在idea中,选择File>new Project出现如下界面 ②填写GVN(GroupId,ArtifactctId,Version)(Maven坐标,是用来唯一标识jar包),选择版本 ③选择依赖,如下图,勾选Web,Mybatis,MySQL ④填写项目名称

spring boot+mybatis+quartz项目的搭建完整版

1. 利用spring boot提供的工具(http://start.spring.io/)自动生成一个标准的spring boot项目架构 2. 因为这里我们是搭建spring boot+mybatis+quartz架构,故在pom.xml文件中配置相关依赖 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boo

Spring Cloud Spring Boot mybatis分布式微服务云架构(二)使用Intellij中的Spring Initializr来快速构建Spring Boot/Cloud工程

在之前的所有Spring Boot和Spring Cloud相关博文中,都会涉及Spring Boot工程的创建.而创建的方式多种多样,我们可以通过Maven来手工构建或是通过脚手架等方式快速搭建,也可以通过<Springboot快速入门>一文中提到的SPRING INITIALIZR页面工具来创建,相信每位读者都有自己最喜欢和最为熟练的创建方式. 本文我们将介绍嵌入的Intellij中的Spring Initializr工具,它同Web提供的创建功能一样,可以帮助我们快速的构建出一个基础的S

Maven 搭建spring boot多模块项目

Maven 搭建spring boot多模块项目 备注:所有项目都在idea中创建 1.idea创建maven项目 1-1: 删除src,target目录,只保留pom.xml 1-2: 根目录pom.xml可被子模块继承,因此项目只是demo,未考虑太多性能问题,所以将诸多依赖 都写在根级`pom.xml`,子模块只需继承就可以使用. 1-3: 根级pom.xml文件在附录1 1-4: 依赖模块 mybatis spring-boot相关模块 2.创建子模块(module) 2-1: file

spring boot+mybatis整合

LZ今天自己搭建了下Spring boot+Mybatis,比原来的Spring+SpringMVC+Mybatis简单好多.其实只用Spring boot也可以开发,但是对于多表多条件分页查询,Spring boot就有点力不从心了,所以LZ把Mybatis整合进去,不得不说,现在的框架搭建真的是方便.话不多说,进入正题. 一.java web开发环境搭建 网上有很多教程,参考教程:http://www.cnblogs.com/Leo_wl/p/4752875.html 二.Spring bo

Spring Initializr 构建Spring Boot/Cloud工程

在之前的所有Spring Boot和Spring Cloud相关博文中,都会涉及Spring Boot工程的创建.而创建的方式多种多样,我们可以通过Maven来手工构建或是通过脚手架等方式快速搭建,也可以通过<Spring Boot快速入门>一文中提到的SPRING INITIALIZR页面工具来创建,相信每位读者都有自己最喜欢和最为熟练的创建方式. 本文我们将介绍嵌入的Intellij中的Spring Initializr工具,它同Web提供的创建功能一样,可以帮助我们快速的构建出一个基础的

[转] Druid简介(Spring Boot + Mybatis + Druid数据源【自己定制】)

Druid的简介Druid是一个非常优秀的数据库连接池.在功能.性能.扩展性方面,都超过其他数据库连接池,包括DBCP.C3P0.BoneCP.Proxool.JBoss DataSource. Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验. Druid是一个JDBC组件,它包括三个部分: 基于Filter-Chain模式的插件体系. DruidDataSource 高效可管理的数据库连接池. SQLParser Druid的功能兼容DBCPDruid提

spring boot + mybatis + druid

因为在用到spring boot + mybatis的项目时候,经常发生访问接口卡,服务器项目用了几天就很卡的甚至不能访问的情况,而我们的项目和数据库都是好了,考虑到可能时数据库连接的问题,所以我打算引入数据池,引入数据池的时候找来找去,比较了当前两个最火的数据池,阿里的druid和HikariCP,比来比去选了阿里的druid,虽然spring boot默认不支持druid,而是支持HikariCP,而且HikariCP的性能更好,但是阿里功能多,就是想支持国产 实际配置: 1.首先现在下载一