java前后端分离框架搭建,spring boot mybatis layui 前后端分离 多模块 框架搭建

先上成品图

70ffdca4ff01

image

本次项目搭建参考了: SpringBoot - 多模块项目的搭建,并在他的基础上增加了mybatis以及layui项目.

本项目在码云上, 如有需要请点传送门

1. 搭建父工程

​ 1. 创建一个基础的spring lnitializr项目,父工程中不需要添加任何依赖

70ffdca4ff01

image

​ 2. 删除除了.idea,.iml,以及pom.xml文件之外的所有文件

70ffdca4ff01

image

2. 创建子模块

​ 创建五个子模块,包括common,controller,dao,service,view(前端界面)

​ 1. 在项目上右键new --> moudle,和父工程一样,新建一个spring lnitializr项目,注意group要一样,把五个子模块全部新建出来.

70ffdca4ff01

image

把子模块中的mvnw,mvnw.cmd文件夹,.mvn,HELP.md全部删除

src中,删除所有test(现在不删除无法使用maven install,蹲一手大神),删除除了controller外的所有启动类和application配置文件.

修改父pom文件:

(1). 修改父pom的打包类型为pom

(2). 声明多个子模版

(3). 添加版本说明

org.springframework.boot

spring-boot-starter-parent

2.4.0

com.bysj

father

0.0.1-SNAPSHOT

father

father

pom

common

dao

service

controller

view

1.8

UTF-8

com.bysj

dao

0.0.1-SNAPSHOT

com.bysj

common

0.0.1-SNAPSHOT

com.bysj

service

0.0.1-SNAPSHOT

com.bysj

controller

0.0.1-SNAPSHOT

修改commnon的pom.xml文件​

​ (1). 继承父项目

(2). 添加lombok依赖(嗯...我还不清楚它的作用,明天再去学习下)

com.bysj

father

0.0.1-SNAPSHOT

com.bysj

common

0.0.1-SNAPSHOT

entity

公共类

1.8

org.projectlombok

lombok

1.18.6

6. 修改dao的pom.xml文件

(1). 继承父工程

(2). 添加数据库依赖

(3). 添加mybatis依赖

(4). 添加连接池依赖

com.bysj

father

0.0.1-SNAPSHOT

1.8

com.bysj

common

org.springframework.boot

spring-boot-starter-data-jpa

mysql

mysql-connector-java

com.alibaba

druid

1.1.9

org.mybatis.spring.boot

mybatis-spring-boot-starter

1.3.2

修改service文件

(1). 继承父工程

(2). 依赖dao工程

修改controller文件

(1). 继承父工程

(2). 依赖service工程

(3). 添加web支持

(4). 注意这个plugins,除了controller外其他pom.xml都要删掉

(5). 打包方式为war

com.bysj

father

0.0.1-SNAPSHOT

com.bysj

controller

0.0.1-SNAPSHOT

controller

控制类

war

1.8

com.bysj

service

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-maven-plugin

修改view的pom.xml文件

(1). 这个不需要声明父工程

(2). 打包方式为war.

war

org.apache.tomcat.maven

tomcat6-maven-plugin

/

80

UTF-8

移动启动类所在的包,放到最外层的com.bysj包下

在controller的main文件夹下新建文件夹"webapp"-->点击file-->点击project structure-->modules-->选择controller-->点击+-->选择web,把位置都设置在webapp目录上

70ffdca4ff01

image

按照上一个步骤,把view也配置好,直到webapp文件夹上出现一个小蓝点

70ffdca4ff01

image

3. 配置spring boot

​ 在controller的resources下找到application.propertise(如果前面做的都对那么项目里面应该只有这一个配置文件)

​ (1). 配置数据库链接

​ (2). 配置mybatis

spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

spring.datasource.url=jdbc:mysql://localhost:3306/bysj?serverTimezone=GMT%2B8&useSSL=false

spring.datasource.username=root

spring.datasource.password=*********

spring.jpa.show-sql=true

spring.jpa.database=mysql

spring.jpa.hibernate.ddl-auto=update

spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL57Dialect

# mybatis

mybatis.type-aliases-package=com.bysj.entity

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

mybatis.configuration.map-underscore-to-camel-case=true

4. 开始编码测试spring boot和mybaatis是否正常

根据目录新建以下文件(中途user和Book弄混了,凑合看)

70ffdca4ff01

image

Book.java

public class Book {

private Integerid;

private Stringname;

private Stringauthor;

private Floatprice;

get/set/构造方法;

}

BookMapper

public interface BookMapper {

/**

* 获取所有用户

* @return

*/

List getBooks();

}

BookMapper.xml

SELECT* FROM book;

UserService.java

@Service

public class UserService {

@Autowired

private BookMapperuserMapper;

public ListgetUsers() {

return userMapper.getBooks();

}

}

UserController.java

@RestController

public class UserController {

@Autowired

private UserServiceuserService;

@GetMapping("/users")

public Listlists() {

return userService.getUsers();

}

}

最后ControllerApplication.java中还要加上MapperScan

@SpringBootApplication

@MapperScan("com.bysj.dao.mapper")

public class ControllerApplication {

public static void main(String[] args) {

SpringApplication.run(ControllerApplication.class, args);

}

}

如果一切顺利,那么到这里在游览器中输入localhost:8080/users就会出现数据了

70ffdca4ff01

image

5. 在view中集成layui

​ 这里使用的是WeAdmin,感兴趣的可以去看看;

​ (1). 删除view的main下java和resources中的所有文件,然后把weadmin的文件全部复制到webapp下.

​ (2). 修改webapp/WEB-INF/web.xml,新增以下内容

login.html

​ (3). 点击IDEA右侧的maven,对项目进行构建

70ffdca4ff01

image

​ (4). 如果一切正常,那么就可以在运行view了

70ffdca4ff01

image

70ffdca4ff01

image

问题:

1. Errors: BysjBaseApplicationTests » IllegalState Unable to find a @SpringBootConfigurat

注意,所有的模块中只有controller的pom.xml中有spring-boot-maven-plugin这个plugin

2. [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Using 'UTF-8' encoding to copy filtered properties files. [INFO] Copying 1 resource

请检查controller中配置文件是否有汉字,已经被注释了也不行,需要删掉

感谢看到这里,么么哒

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值