idea新建一个springboot项目

idea新建一个springboot项目

码农世界 2024-06-16 后端 103 次浏览 0个评论

idea新建一个springboot项目

本文分为几个部分,

首先是在idea中新建项目,

然后是配置 项目的目录(新建controller、service、dao等),

然后是自定义的一些工具类(比如启动后打印地址等)。

=======================================================

1.、创建篇

新建项目,如下图所示

new 一个project

选择Spring Initializr。

idea新建一个springboot项目因为spring官网经常连不上,所以用国内镜像。

https://start.aliyun.com/

填写Group、Artifact和Name后点击next,如下图所示。

idea新建一个springboot项目

选择需要的组件:基本组件有web模块中的web、SQL模块中的MySQL、JDBC和Mybatis、额外的组件可以根据需求自行选择,不过需要注意的是springboot版本不要选择太高,此处选择的是

2.6.13版本,Java 8 不要选3以上版本。

idea新建一个springboot项目

idea新建一个springboot项目

5.确定项目名和项目存储路径。

idea新建一个springboot项目

6.点击finish,整个项目架构如下图所示。其中(项目名+Application).class为sprinboot核心类、application.properties为主配置文件。

idea新建一个springboot项目

2.配置篇

1.连接数据库配置(因为我们已经在选择组件中选择了SQL和JDBC)

所以不需要手动引入Maven依赖,只需要直接配置就好),

(.yml)和(.properties)的配置格式是不一样的,我个人比较喜欢使用yml格式的,

因此我将application.properties改为了application.yml。

idea新建一个springboot项目

将properties后缀名改为yml,点击refactor即可完成修改。

idea新建一个springboot项目

具体配置如下,(注:yml配置格式相对教严格,需要注意以下各内容的具体位置,比如冒号后边要有个空格)

idea新建一个springboot项目

driver-class-name为数据库连接驱动,username和password为填写自己想要连接的数据库用户名和密码,url中的spring为我本地中的一个数据库,使用utf-8编码格式,不开启ssl验证。

完整的yml 配置:

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password: 123456
    url: jdbc:mysql://10.11.11.11:3306/库名?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false
server:
  port: 8066
mybatis:
  mapper-locations: classpath:mapper/*.xml

只要改下username 、password、url 中蓝色部分。

2.在startProject\src\main\java\com.test.demo中,创建MVC模式对应的package,如下

image

domain包主要用来集中管理相应的实体类,controller为控制层,service和serviceImpl分别为服务层和服务实现层,mapper用来管理的是与mybatis结合后存储的接口类,类似于传统的dao层。

3.在startProject\src\main\resources中,创建mapper文件夹,存放mapper对应的mapper.xml文件。

idea新建一个springboot项目

蓝色新建的几个文件夹是手动创建的包

4.配置项目端口号和配置定位mybatis的mapper文件夹的路径。其中开放的端口号设置为8066(可自行指定端口,但是不可与其他开放的端口有冲突,不指定时默认为8080端口)。

mapper-location指定了扫描mapper中的所有以xml为后缀名的文件。

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password: 123456
    url: jdbc:mysql://10.11.11.11:3306/库名?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false
server:
  port: 8066
mybatis:
  mapper-locations: classpath:mapper/*.xml

3.自定义一些配置

实现效果:

idea新建一个springboot项目

首先先下载,通用代码

https://download.csdn.net/download/hzp666/89146459

把这3个文件放到项目下:

idea新建一个springboot项目

效果这样

idea新建一个springboot项目

然后添加一些依赖,修改下pom.xml文件

其中如果自己要打包,部署的话,这个需要注释掉

idea新建一个springboot项目

借鉴下:



    4.0.0
    com.sinopharm
    jybackend
    0.0.1-SNAPSHOT
    jybackend
    Demo project for Spring Boot
    
        1.8
        UTF-8
        UTF-8
        2.6.13
    
    
        
            org.springframework.boot
            spring-boot-starter-jdbc
        
        
            org.springframework.boot
            spring-boot-starter-web
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            2.2.2
        
        
            com.mysql
            mysql-connector-j
            runtime
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
            org.slf4j
            jul-to-slf4j
            1.7.36
        
        
        
            cn.hutool
            hutool-all
            5.8.22
        
        
            org.springframework.boot
            spring-boot-starter-websocket
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.5.1
        
        
            org.projectlombok
            lombok
            1.18.22
        
        
            commons-io
            commons-io
            2.11.0
        
    
    
        
            
                org.springframework.boot
                spring-boot-dependencies
                ${spring-boot.version}
                pom
                import
            
        
    
    
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.8.1
                
                    1.8
                    1.8
                    UTF-8
                
            
            
                org.springframework.boot
                spring-boot-maven-plugin
                ${spring-boot.version}




                
                    
                        repackage
                        
                            repackage
                        
                    
                
            
        
    
    
        
            central
            aliyun maven
            https://maven.aliyun.com/nexus/content/groups/public/
            default
            
            
                true
            
            
            
                false
            
        
    

然后修改下启动主程序:

1.在class 类上添加注解

@MapperScan(basePackages = "com.sinopharm.jybackend.demos.web.dao")

idea新建一个springboot项目

2. main 方法改成:

    public static void main(String[] args)throws UnknownHostException {
        System.out.println("run");
        ConfigurableApplicationContext application = SpringApplication.run(JybackendApplication.class, args);
        log.info("..######..##.....##..######...######..########..######...######.\n" +
                ".##....##.##.....##.##....##.##....##.##.......##....##.##....##\n" +
                ".##.......##.....##.##.......##.......##.......##.......##......\n" +
                "..######..##.....##.##.......##.......######....######...######.\n" +
                ".......##.##.....##.##.......##.......##.............##.......##\n" +
                ".##....##.##.....##.##....##.##....##.##.......##....##.##....##\n" +
                "..######...#######...######...######..########..######...######.");
        Environment env = application.getEnvironment();
        String ip = InetAddress.getLocalHost().getHostAddress();
        String port = env.getProperty("server.port");
        String path = env.getProperty("server.servlet.context-path");
        if (StringUtils.isEmpty(path)) {
            path = "";
        }
        log.info("\n----------------------------------------------------------\n\t" +
                "Application  is running! Access URLs:\n\t" +
                "Local访问网址: \t\thttp://localhost:" + port + path + "\n\t" +
                "External访问网址: \thttp://" + ip + ":" + port + path + "\n\t" +
                "----------------------------------------------------------");
    }

然后如果程序报错了,那可能是导包不对,alt + enter 改一下

=============================================================

报错:

org.yaml.snakeyaml.scanner.ScannerException: while scanning a simple key

原因:

因为.yml

server:

  port:8081

如果port:8081的键值如果没有用:空格把键值分开,就会报这个错

解决方案:

加个空格,正常的 port 应该是橘黄色的,没有空格或格式不对,会变白色字体

idea新建一个springboot项目

Consider defining a bean of type '******.dao.SaveWordDAO' in your configuration.

原因:

主程序类没有扫描到dao

解决方法:

在主程序上添加扫描路径

@MapperScan(basePackages = "com.sinopharm.jybackend.demos.web.dao")

idea新建一个springboot项目

: 忽略输入 jybackend-0.0.1-SNAPSHOT.jar中没有主清单属性

原因:

打jar包后,Java -jar 启动结果报错。因为pom.xml中build 有一部分配置错误。

解决办法:

把这个注释掉idea新建一个springboot项目

 

idea新建一个springboot项目

转载请注明来自码农世界,本文标题:《idea新建一个springboot项目》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,103人围观)参与讨论

还没有评论,来说两句吧...

Top