zoukankan      html  css  js  c++  java
  • IntelliJ IDEA搭建一个简单的springboot项目

    一、IDEA 安装包

    百度网盘链接:https://pan.baidu.com/s/1MYgZaBVWXgy64KxnoeJSyg 

    提取码:7dh2 

    IDEA注册码获取:http://idea.lanyus.com/

    二、数据库建表

     可创建视图关联角色和菜单

    三、环境搭建好了,开始新建项目

    右键new->project->spring initializr->

     

    按图示操作得到如下:

    创建如下图结构:

    配置mybatis.cfg.xml

    <?xml version="1.0" encoding="UTF-8" ?>

    <!DOCTYPE configuration

            PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

            "http://mybatis.org/dtd/mybatis-3-config.dtd">

    <!-- 全局参数 -->

    <configuration>

        <settings>

            <!-- 使全局的映射器启用或禁用缓存。 -->

            <setting name="cacheEnabled" value="true" />

            <!-- 全局启用或禁用延迟加载。当禁用时,所有关联对象都会即时加载。 -->

            <setting name="lazyLoadingEnabled" value="true" />

            <!-- 当启用时,有延迟加载属性的对象在被调用时将会完全加载任意属性。否则,每种属性将会按需要加载。 -->

            <setting name="aggressiveLazyLoading" value="true" />

            <!-- 是否允许单条sql 返回多个数据集 (取决于驱动的兼容性) default:true -->

            <setting name="multipleResultSetsEnabled" value="true" />

            <!-- 是否可以使用列的别名 (取决于驱动的兼容性) default:true -->

            <setting name="useColumnLabel" value="true" />

            <!-- 允许JDBC 生成主键。需要驱动器支持。如果设为了true,这个设置将强制使用被生成的主键,有一些驱动器不兼容不过仍然可以执行。 default:false -->

            <setting name="useGeneratedKeys" value="true" />

            <!-- 指定 MyBatis 如何自动映射 数据基表的列 NONE:不隐射 PARTIAL:部分 FULL:全部 -->

            <setting name="autoMappingBehavior" value="PARTIAL" />

            <!-- 这是默认的执行类型 (SIMPLE: 简单; REUSE: 执行器可能重复使用prepared statements语句;BATCH:

                执行器可以重复执行语句和批量更新) -->

            <setting name="defaultExecutorType" value="SIMPLE" />

            <!-- 使用驼峰命名法转换字段。 -->

            <setting name="mapUnderscoreToCamelCase" value="true" />

            <!-- 设置本地缓存范围 session:就会有数据的共享 statement:语句范围 (这样就不会有数据的共享 ) defalut:session -->

            <setting name="localCacheScope" value="SESSION" />

            <!-- 设置但JDBC类型为空时,某些驱动程序 要指定值,default:OTHER,插入空值时不需要指定类型 -->

            <setting name="jdbcTypeForNull" value="NULL" />

        </settings>

    </configuration>

    配置application.yml

    spring:

        datasource:

            url: jdbc:mysql://127.0.0.1/test?useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true

            username: root

            password: root

            driver-class-name: com.mysql.jdbc.Driver

            hikari:

              connection-timeout: 60000

              idle-timeout: 30000

              max-lifetime: 60000

              maximum-pool-size: 10

              read-only: false

              validation-timeout: 3000

        application:

          name: sunfai-arrange

    server:

      port: 8888

    logging:

        file: ./logs/arrange.log

        file.max-size: 100MB

        path: ./logs

        pattern:

            console: '%d - %msg%n'

    mybatis:

        config-location: classpath:mybatis/mybatis.cfg.xml

        mapper-locations: classpath:mybatis/mapper/*.xml

        type-aliases-package: com.test.demo.pojo

    imagePath: /home/dsj/tomcat/webapps/images

    ocrIp: http://172.16.1.87:5000/api/v1/

    pagehelper:

        helper-dialect: mysql

        params: count=countSql

        reasonable: true

    support-methods-arguments: true

    Main函数入口application.java

    package com.test.demo;

    import lombok.extern.slf4j.Slf4j;

    import org.mybatis.spring.annotation.MapperScan;

    import org.springframework.boot.SpringApplication;

    import org.springframework.boot.autoconfigure.SpringBootApplication;

    import org.springframework.context.ConfigurableApplicationContext;

    @SpringBootApplication

    @MapperScan(basePackages = "com.test.demo")

    @Slf4j

    public class DemoApplication {

    /**

     * @author zhugaopo

     * @version 1.0

     * @class Application

     * @package com.test.demo

     * @desc

     * @MapperScan 的作用是扫描到文件夹下的@Mapper注解

     * @Slf4j 是日志打印注解

     * @SpringBootApplication SpringBoot的启动注解

     * @date 2018/08/08

     */

    public static void main(String[] args) {

    ConfigurableApplicationContext context = SpringApplication.run(DemoApplication.class, args);

    log.info("该服务的名称是:{}", context.getEnvironment().getProperty("spring.application.name"));

    log.info("该服务的启动端口是:{}", context.getEnvironment().getProperty("server.port"));

    }

    }

    定义控制台启动打印模板Banner.txt

          .   ____          _
         /\ / ___'_ __ _ _(_)_ __  __ _
        ( ( )\___ | '_ | '_| | '_ / _` |
         \/  ___)| |_)| | | | | || (_| |
          '  |____| .__|_| |_|_| |_\__, |
     ===========|_|==============|___/== ▀
    - ▌          @Copyright Zhugaopo         ▀
     - ▌                            (o)        ▀
    /- ▌            Go Go Go !               ▀
    /  =================================== ▀
                        ██

    ${AnsiColor.BRIGHT_RED}Spring Boot Version : ${spring-boot.version} ${spring-boot.formatted-version}
    ${AnsiColor.BRIGHT_CYAN}SpringBoot-Vue.js   : 0.0.1.RELEASE
    ${AnsiColor.BRIGHT_BLACK}Author : ZhuGaopo

     成功运行

  • 相关阅读:
    jQuery Mobile的学习 jQuery Mobile工具栏、标题栏、页脚栏的定位学习
    【centOS7】centOS7上普通用户切换root用户,相互切换
    【elaseticsearch】elaseticsearch启动报错Caused by: org.elasticsearch.transport.BindTransportException: Failed to bind to [9300-9400]
    【docker】docker启动、重启、关闭命令,附带:docker启动容器报错:docker: Error response from daemon: driver failed programming external connectivity on endpoint es2-node
    【centOS】centos7 查看和关闭防火墙
    【elasticsearceh】elasticsearch.yml配置文件详解
    【docker】关于docker 中 镜像、容器的关系理解
    【xshell】xshell设置快捷键 设置Ctrl+C Ctrl+V快捷键为复制粘贴
    【docker】elasticsearch-head无法连接elasticsearch的原因和解决,集群健康值:未连接,ElasticSearch——跨域访问的问题
    【spring cloud】spring cloud Sleuth 和Zipkin 进行分布式链路跟踪
  • 原文地址:https://www.cnblogs.com/godpo/p/11321805.html
Copyright © 2011-2022 走看看