1-4 云商城项目工程搭建(2)

总结

总的来说,面试是有套路的,一面基础,二面架构,三面个人。

最后,小编这里收集整理了一些资料,其中包括面试题(含答案)、书籍、视频等。希望也能帮助想进大厂的朋友

三面蚂蚁金服成功拿到offer后,他说他累了

三面蚂蚁金服成功拿到offer后,他说他累了

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd”>

4.0.0

org.springframework.boot

spring-boot-starter-parent

2.2.10.RELEASE

com.bobo.vip.mall

bobo-vip-mall

0.0.1-SNAPSHOT

bobo-vip-mall

pom

商城系统

<java.version>1.8</java.version>

<spring-cloud-alibaba.version>2.2.1.RELEASE</spring-cloud-alibaba.version>

org.projectlombok

lombok

true

org.springframework.boot

spring-boot-starter-test

test

org.junit.vintage

junit-vintage-engine

org.springframework.boot

spring-boot-devtools

runtime

true

com.alibaba.cloud

spring-cloud-alibaba-dependencies

${spring-cloud-alibaba.version}

pom

import

org.springframework.boot

spring-boot-maven-plugin

2.2 各个模块父工程搭建

我们可以按照功能分类,给每类工程创建一个父工程,方便管理。

mall-api:存储所有数据库表对应的Bean和Feign接口

mall-gateway:存储所有微服务网关

mall-service:存储所有微服务工程

mall-util:存储公共工程

mall-web:存储所有和页面渲染有关的工程

mall-api

创建模块工程的时候我们只创建一个普通的maven工程即可。

在这里插入图片描述

相关属性设置

在这里插入图片描述

因为mall-api也是个父工程,所以packaging也设置为pom类型

在这里插入图片描述

pom文件的内容

<?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”>

bobo-vip-mall

com.bobo.vip.mall

1.0-SNAPSHOT

4.0.0

mall-api

pom

存放所有JavaBean和Feign接口

安装上面的步骤创建对应的其他几个模块的父工程。

mall-gateway

网关模块的父工程

在这里插入图片描述

对应的pom文件内容

<?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”>

bobo-vip-mall

com.bobo.vip.mall

1.0-SNAPSHOT

4.0.0

mall-gateway

pom

存放微服网关集群

mall-service

pom文件的内容

<?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”>

bobo-vip-mall

com.bobo.vip.mall

1.0-SNAPSHOT

4.0.0

pom

mall-service

所有的应用服务

mall-util

对应的pom文件中的内容

<?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”>

bobo-vip-mall

com.bobo.vip.mall

1.0-SNAPSHOT

4.0.0

pom

mall-util

存放所有公共工程

mall-web

对应的pom文件的内容

<?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”>

bobo-vip-mall

com.bobo.vip.mall

1.0-SNAPSHOT

4.0.0

pom

mall-web

存放所有和页面渲染有关的工程,不建议放在service中,所有service只提供基于RESTful的服务

创建好的目录结构:

在这里插入图片描述

2.3 公共工程搭建

公共依赖汇总

service中以后要创建微服务工程操作数据库,我们可以把所有service需要用到的包以及所有service需要初始化的对象放到一个独立的工程中,以后哪个工程要用,直接依赖即可。

mall-util中创建mall-service-dependency,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”>

mall-util

com.bobo.vip.mall

1.0-SNAPSHOT

4.0.0

mall-service-dependency

所有service工程依赖的包汇总以及初始化工具包

org.springframework.boot

spring-boot-starter-web

com.baomidou

mybatis-plus-boot-starter

3.3.2

mysql

mysql-connector-java

runtime

org.springframework.boot

spring-boot-starter-data-redis

com.alibaba.cloud

spring-cloud-starter-alibaba-nacos-config

com.alibaba.cloud

spring-cloud-starter-alibaba-nacos-discovery

公共工具包

我们需要用到的工具包也可以单独放到一个工程中,每次要用,直接依赖即可。

mall-util中创建mall-common,我们在工程中创建2个对象:

用于指定响应状态码的枚举对象:com.bobo.mall.util.RespCode

package com.bobo.mall.util;

public enum RespCode {

SUCCESS(20000, “操作成功”),

ERROR(50000, “操作失败”),

SYSTEM_ERROR(50001, “系统错误”);

private Integer code;

private String message;

RespCode(Integer code, String message) {

this.code = code;

this.message = message;

}

RespCode() {

}

public Integer getCode() {

return code;

}

public void setCode(Integer code) {

this.code = code;

}

public String getMessage() {

return message;

}

public void setMessage(String message) {

this.message = message;

}

}

用于响应用户信息封装的对象:com.bobo.mall.util.RespResult

package com.bobo.mall.util;

import java.io.Serializable;

public class RespResult implements Serializable {

//响应数据结果集

private T data;

/**

  • 状态码

  • 20000 操作成功

  • 50000 操作失败

*/

private Integer code;

/***

总结

我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的。

Mybatis源码解析

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

this.message = message;

}

}

用于响应用户信息封装的对象:com.bobo.mall.util.RespResult

package com.bobo.mall.util;

import java.io.Serializable;

public class RespResult implements Serializable {

//响应数据结果集

private T data;

/**

  • 状态码

  • 20000 操作成功

  • 50000 操作失败

*/

private Integer code;

/***

总结

我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的。

Mybatis源码解析

[外链图片转存中…(img-3R5jkJLT-1715759118531)]

[外链图片转存中…(img-Onkr1niO-1715759118531)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值