SpringBoot 快速搭建 (一)

本贴最后更新于 2185 天前,其中的信息可能已经东海扬尘

创建项目(非 web)

一.新建 Maven Project 项目

clipboardpng
注意:勾选 Create a simple project
611981546png
最后点击 Finish

二:配置 pom

project 节点增加父级依赖

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.3.RELEASE</version>
</parent>

然后添加 dependencies 节点再添加依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

完整的 pom 如下
2c1aec1bd41fpng

注:
clipboardpng
如上图,项目出现 x 号需要更新项目
110670468png

一切弄完后,就可以写主程序进行启动了

@RestController
@SpringBootApplication
public class App {
    
    public static void main(String[] args){
        SpringApplication.run(App.class, args);
    }
    
    @RequestMapping("/test")
    public String test(){
        return "Test";
    }
}

运行 App 类,结果报 80 占用

这个时候就需要修改 spring 的配置
配置文件放在 src/main/resources 目录下,文件名为 application.properties

Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(
    excludeFilters = {@Filter(
    type = FilterType.CUSTOM,
    classes = {TypeExcludeFilter.class}
)}
)
public @interface SpringBootApplication {
}

文件结构一般是:

com
+- geekjair
+- myproject
+- Application.java 用于启动的主应用类
|
+- domain
| +- Customer.java
| +- CustomerRepository.java
|
+- service
| +- CustomerService.java
|
+- controller
| +- CustomerController.java
|
如果 Application 类(被注解为 @SpringBootApplication)不在根目录,会导致一些 controller 无法被扫描,进入对应的页面则会报错:

问题

<dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter</artifactId>
</dependency>

controller 类需要符合一下条件:
使用 @RestController
所在包是 Application 类所在的包的子包
clipboard1png

日志配置
设置日志,非常简单,只需要在 application.properties 中添加如下代码:

logging.file=/home/sang/workspace/log.log
logging.level.org.springframework.web=debug
上面表示配置日志输出位置,下面配置日志级别

 配置问题

增加数据库连接
第一种方式:jpa

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

在 src/main/resources/application.properties 中设置数据源和 jpa 配置。

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/apple
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driverClassName = com.mysql.jdbc.Driver
# Specify the DBMS
spring.jpa.database = MYSQL
# Show or not log for each sql query
spring.jpa.show-sql = true
# Hibernate ddl auto (create, create-drop, update)
spring.jpa.hibernate.ddl-auto = update
# Naming strategy
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy
# stripped before adding them to the entity manager)
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect

另一版本的配置文件

spring.datasource.url=jdbc:mysql://localhost:3306/spring-boot-activiti?characterEncoding=utf8&useSSL=true
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#自动创建、更新、验证数据库表结构
spring.jpa.properties.hibernate.hbm2ddl.auto=update
spring.jpa.show-sql=true

连接数据库需要涉及的配置文件是
application.propertities 或 applicaiton.yaml

  • Spring

    Spring 是一个开源框架,是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 JavaEE 应用程序开发提供集成的框架。

    944 引用 • 1459 回帖 • 17 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...