springboot + mybatis 前后端分离项目的搭建 适合在学习中的大学生

时间:2023-03-09 04:38:35
springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

  人生如戏,戏子多半掉泪!

   我是一名大四学生,刚进入一家软件件公司实习,虽说在大学中做过好多个实训项目,都是自己完成,没有组员的配合。但是在这一个月的实习中,我从以前别人教走到了现在的自学,成长很多。

   以前做过的项目都是springmvc+mybatis,到了公司项目里用的是springboot+mybatis。这两个框架很相似,但是如果你不注重细节,你会输的很惨。细节决定成败,你们相信的!

 1、创建maven项目(以eclipse为例,以后再为大家介绍idea)

  (1)File—New—other—Mavenproject

  springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

   (2)选择第二个选项 Use default workspace location  然后 next

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

  (3)直接下一步到这个页面 然后Finish(由于是前后端分离,我们先不需要创建web项目)

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

  (4)此时项目结构目录如图,我们还需要创建src/main/resource文件夹

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

  (5)选择项目  点击 new——sourceFolder ,输入路径文件名

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

  (5)点击App.java 运行 出现HelloWord说明项目创建成功

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

   2、框架的搭建(springboot+mybatis)

   (1) springboot和springMVC的区别:springboot简化了mvc 繁琐的配置文件 注解基本相同

      springboot只用一个配置文件 如图  application-dev.yml

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

    (2)application-dev.yml的配置

 #日志输出级别:DEBUG。为了可以打印sql语句
logging:
level:
root: DEBUG
org.springframework.web: DEBUG
#数据库的连接
druid:
url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true
username: root
password: root
initial-size: 1
min-idle: 1
max-active: 20
test-on-borrow: true #mybatis mapper的扫描
mybatis:
mapper-locations: classpath:mapper/*.xml #对mybatis内置的简答sql语句的继承
mapper:
mappers:
- com.tenio.base.BaseMapper
not-empty: false
identity: MYSQL #分页
pagehelper:
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params: count=countSql

    (3)pom.xml配置

 <?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>com.isoft</groupId>
<artifactId>mall</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>mall</name>
<description>Demo project for Spring Boot</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.4.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-web</artifactId>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency> <!--mysql的连接-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency> <!--mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency> <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.21</version>
</dependency>
<!--mapper-->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<!--pagehelper-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency> <dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.11</version>
</dependency>
<!-- JJWT -->
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.6.0</version>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency> <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.31</version>
</dependency> <!-- commons -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency> <dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency> <dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.2</version>
</dependency> <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency> <dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency> <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.2</version>
</dependency> <dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency> <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging-api</artifactId>
<version>1.1</version>
</dependency>
<!-- commons end--> <!--siteMesh-->
<dependency>
<groupId>org.sitemesh</groupId>
<artifactId>sitemesh</artifactId>
<version>3.0.0</version>
</dependency> <dependency>
<groupId>org.apache.directory.studio</groupId>
<artifactId>org.apache.commons.codec</artifactId>
<version>1.8</version>
</dependency> <!--pinyin4j-->
<dependency>
<groupId>com.belerweb</groupId>
<artifactId>pinyin4j</artifactId>
<version>2.5.0</version>
</dependency> <dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.15</version>
</dependency> <dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.15</version>
</dependency> <dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.15</version>
</dependency> </dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin> <plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
<overwrite>true</overwrite>
<verbose>true</verbose>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build> </project>

   (4)然后把pom.xml 里的jar包从*仓库下载到本地  点击Maven install

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

    当看到BUILD SUCCESS 时,说明jar包已经下载成功

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

  (5)点击项目—Maven Dependencies  可以看到刚才下载的jar包和路径

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

    (5)修改App.java代码 点击运行

 @SpringBootApplication
@EnableTransactionManagement
public class App
{
public static void main( String[] args )
{
SpringApplication.run(App.class, args);
}
}

  (7)run 看到下图,说明springboot+mybatis 框架搭建成功

    springboot + mybatis  前后端分离项目的搭建  适合在学习中的大学生

  1. git的使用(相对SVN操作相对较难,也是公司项目使用的主流趋势,不会它你将无法工作,先不说github怎么样,git的强大自行百度)

    (1)在使用git 的同时,应该先学习一些git的常用命令

      1.git status

      2.git add .

      3.git commit -m "commit"

      4.git pull origin master

      5.git push origin master

    (2)安装git ,需要先下载git软件并安装,eclipse集成了git插件  

  2.照片文件的上传

   

  End

  下次再为大家介绍:

  1. git的使用(相对SVN操作相对较难,也是公司项目使用的主流趋势,不会它你将无法工作,先不说github怎么样,git的强大自行百度)
  2. 照片文件的上传
  3. Excel的导入/导出
  4. 分页查询(使用mybatis-pageHelper 插件)
  5. mybatis 一对多查询
  6. mybatis动态块查询
  7. 接口测试工具postman(一个非常好用的接口测试工具)
  8. 在项目编码中遇到的问题