动吧项目概述及环境配置

动吧项目概述及环境配置

1. 项目简介

1.1概述

动吧是应市场高端用户需求,笔者开发的这样一套旅游系统,此系统包含简单的旅游电商系统(广告子系统、推荐子系统、评价子系统、商品子系统等)、旅游分销系统(分销商的管理)、旅游业务系统(产品研发、计调服务、系统管理等)等。(参考来跑吧官网

1.2 原型分析

基于用户需求,进行原型设计(基于html+css+js进行静态页面实现),例如系统登录界面登录界面
登录成功页面(例如starter.html)登录成功界面
菜单展示页面菜单展示页面
说明:原型设计好以后,会与客户进行确认,确认好以后再进行签字,然后就是设计和实现

2. 技术架构

2.1 项目分层架构

本项目应用层基于MVC设计思想(model、view、controller),进行分层架构设计及,其核心目的是将复杂问题简单化,实现各司其职各尽所能,然后基于“高内聚、低耦合”的设计思想,再实现各对象之间协同,从而提高系统的可维护性,可拓展性。大致结构如图:架构

其中:

  1. 开放接口层可直接封装Service方法暴露成RPC(远程过程调用)接口;也可以通过Web封装成http接口;同时也可以进行网关安全控制、流量控制等。
  2. 终端显示屏负责各个端的模板渲染并显示。当前主要是thymeleaf渲染,JS渲染,移动端展示等。
  3. Web请求处理层主要是对访问控制进行转发,请求参数校验,相应结果处理等。
  4. Service层相对具体的业务逻辑服务层(核心业务、扩展业务)
  5. Manager层通过业务处理层,他有如下特性
    1)对第三方平台封装的层,预处理结果及转化异常信息;
    2)对Service层通过能力的下沉,如缓存方案、中间件通用处理;
    3)与DAO层交互,对多个DAO的组合服用;
  6. DAO层 数据访问层、与底层MySQL、Oracle、Hbase等进行数据交互。
  7. 外部接口或第三方平台包括其他部门RPC开放接口,基础平台,其他公司的HTTP接口整体API框架

3. 技术整合

3.1 环境准备

3.1.1 数据库初始化

启动MySQL客户端并登陆,然后执行

set names utf8;
source d:/jtsys.sql

说明:假如在mysql客户端查询表中数据,可以先执行set names gbk,否则可能会出现乱码。还有一点要记住,在拿到任何一个sql脚本文件时,不要上来就执行它,要先打开看一看,检查是否有删除库或删除表的语句,这些语句是否会对你当前数据库中的库和表有影响 ,假如有一定要经过leader审批,才能执行删除等操作.

3.1.2 IDE配置初始化(STS)
  1. 统一工作区编码(UTF-8)
  2. 统一JDK版本(JDK1.8)
  3. 统一Maven配置(3.6.3)

3.2 创建项目

  1. 项目名称:CGB-DB-SYS-V3.01
  2. 组ID: com.cy
  3. 打包方式:jar创建项目
3.2.1 添加项目依赖

热部署、健康检查、JDBC、MySQL、Mybatis、Thymeleaf、Web、Lombok
添加项目依赖

3.2.2 更改application.properties为application.yml,并添加如下配置(server,datasource,mybatis,mvc)
#server 配置
server:
  port: 80
#Spring 资源整合
spring:
  datasource:
    url: jdbc:mysql:///dbsys?serverTimezone=GMT%2B8&characterEncoding=utf8
    username: root
    password: root
  thymeleaf:
    cache: false
    prefix: classpath:/templates/pages/
    suffix: .html
mybatis:
  mapper-locations:
 1. classpath:/mapper/*/*.xml
logging:
  level:
    com.cy: DEBUG

3.3首页初始化

3.3.1 定义页面初始资源
  1. 将js、css、images相关资源拷贝到项目static目录
  2. 将pages页面拷贝到项目的templates目录
3.3.2 创建页面Controller(com.cy.pj.sys.controller)

创建呈现首页页面的controller对象

package com.cy.pj.sys.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
 * 计划在这个controller中处理所有页面请求
 * @author Tony
 *
 */
@Controller
@RequestMapping("/")
public class PageController {
	//返回项目的首页页面
	@RequestMapping("doIndexUI")
	public String doIndexUI() {
		return "starter";
	}
}

说明:此controller会作为项目中所有页面访问的入口。

3.3.3 启动项目进行测试

启动tomcat,在地址栏输入http://localhost/doIndexUI(地址中的端口号要参考自己tomcat启动端口)地址进行访问,假如没有问题会呈现如下页面:成功页面
访问流程分析
各结构功能及项目结构
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

FAQ:

  1. MySQL帮助文档帮助文档
  2. 一定要事先设置编码为utf-8,否则可能乱码
    设置编码
  3. yml配置文件注意事项yml配置
  4. css资源404问题css资源404问题
  5. 报TemplateInputException might not exists错误08-TemplateInputException might not exists
  6. 报SpelEvaluationException错误09-SpelEvaluationException
  7. CSS 404问题10-CSS 404
  8. favicon问题11-favicon
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值