当前位置: 首页 > news >正文

酒店网站建设策划书百度云登陆首页

酒店网站建设策划书,百度云登陆首页,宿迁房产网新楼盘,php旅游网站论文一 项目架构1.1 今日指数技术选型【1】前端技术【2】后端技术栈【3】整体概览3.2 核心业务介绍1】业务结构预览【2】业务功能简介1.定时任务调度服务XXL-JOB通过RestTemplate多线程动态拉去股票接口数据,刷入数据库; 2.国内指数服务 3.板块指数服务 4.涨…

一 项目架构


1.1 今日指数技术选型

【1】前端技术

【2】后端技术栈

【3】整体概览

3.2 核心业务介绍

1】业务结构预览

【2】业务功能简介

1.定时任务调度服务XXL-JOB通过RestTemplate+多线程动态拉去股票接口数据,刷入数据库;
2.国内指数服务
3.板块指数服务
4.涨幅榜展示功能
5.涨停跌停数展示功能
6.成交量对比展示功能
7.个股涨停服务展示功能
8.个股详情展示功能包含分时行情、日k线、周K线图等
9.个股描述服务;
10.报表导出服务

二 后端开发环境搭建


开发工具版本要求:

2.1 数据库环境搭建

【1】表结构介绍

注意事项:后期股票相关的数据量非常庞大,表与表之间尽量不要构建外键约束(提升数据库性能),同时也为后期分库分表准备!

【2】数据导入

因为我边的CentOS7连接不上 所以在这里面 用本地(windoms)运行

数据库可视化选用 SQLyog - 64 bit mysql用的是5.7.24

5.2后端工程搭建

【1】构建stock_parent父工程

创建stock_parent  maven工程:

接下来 复制以下maven到pom.xml

 <packaging>pom</packaging><properties><!--工程构建的代码格式为UTF-8--><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><!--编译--><maven.compiler.encoding>UTF-8</maven.compiler.encoding><!--编译原文件--><maven.compiler.source>8</maven.compiler.source><!--生成的编译目录--><maven.compiler.target>8</maven.compiler.target><!--打包时跳过测试--><maven.test.skip>true</maven.test.skip><!--mybatis整合spring-boot场景依赖--><mybatis-spring-boot-starter.version>2.1.4</mybatis-spring-boot-starter.version><!--pagehelper版本--><pagehelper-spring-boot-starter.version>1.2.12</pagehelper-spring-boot-starter.version><!--mysql驱动包--><mysql-driver.version>5.1.49</mysql-driver.version><!--fastjson工具--><fastjson.version>1.2.71</fastjson.version><!--依赖的版本--><springfox-swagger2.version>2.9.2</springfox-swagger2.version><!--druid的场景依赖--><druid-spring-boot-starter.version>1.1.22</druid-spring-boot-starter.version><!--druid的核心依赖--><druid-core-version>1.2.8</druid-core-version><!--分库分表对应的版本--><sharding-jdbc.version>4.0.0-RC1</sharding-jdbc.version><!--jwt--><jjwt.version>0.9.1</jjwt.version><!--easyExcel  报表导入导出--><easyExcel.version>3.0.4</easyExcel.version><!--xxl-job--><xxl-job-core.version>2.3.0</xxl-job-core.version><!--spring-boot版本--><spring-boot.version>2.5.3</spring-boot.version><!--日期小插件--><joda-time.version>2.10.5</joda-time.version><!--google.guava--><google.guava.version>30.0-jre</google.guava.version></properties><!--定义依赖版本锁定--><dependencyManagement><dependencies><!--引入springboot依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency><!--引入mybatis场景依赖--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis-spring-boot-starter.version}</version></dependency><!--pageHelper场景依赖--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>${pagehelper-spring-boot-starter.version}</version></dependency><!--mysql驱动包--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql-driver.version}</version></dependency><!--shardingjdbc分库分表--><dependency><groupId>org.apache.shardingsphere</groupId><artifactId>sharding-jdbc-spring-boot-starter</artifactId><version>${sharding-jdbc.version}</version></dependency><!--json工具包--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>${fastjson.version}</version></dependency><!--druid-boot依赖--><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>${druid-spring-boot-starter.version}</version></dependency><!--druid core--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid-core-version}</version></dependency><!--swagger文档依赖--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>${springfox-swagger2.version}</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>${springfox-swagger2.version}</version></dependency><!--引入jwt依赖--><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>${jjwt.version}</version></dependency><!-- 导出 excel --><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>${easyExcel.version}</version></dependency><!--xxl-job定义任务框架支持--><dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId><version>${xxl-job-core.version}</version></dependency><!--时间小工具--><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency><!--引入google的工具集--><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>${google.guava.version}</version></dependency></dependencies></dependencyManagement><build><pluginManagement><plugins><!--Springboot核心插件--><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version><configuration><excludes><!--插件运行时排除依赖--><exclude><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId></exclude></excludes></configuration></plugin><!--打包跳过test --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><configuration><skip>${maven.test.skip}</skip></configuration></plugin></plugins></pluginManagement></build>

注意事项:

1.打包方式:pom
2.通过dependencyManagement、pluginManagement锁定开发中的依赖和插件的版本;

接下来 删除父工程的src

【2】构建stock_backend基础工程

创建stock_parent的maven子工程stock_backend:

【2.1】引入依赖

stock_backend工程被stock_parent父工程聚合,pom配置如下:

<packaging>jar</packaging><artifactId>stock_backend</artifactId><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target></properties><dependencies><!-- 基本依赖   web的场景依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--日志--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><!--mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!--单元测试--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><!--mybatis整合spring-boot--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId></dependency><!--分页--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId></dependency><!--druid--><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId></dependency><!--配置提示--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><!--时间小工具--><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency></dependencies><build><!--打包名称--><finalName>${project.artifactId}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><!-- 打包跳过test --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId></plugin></plugins></build>
【2.2】创建公共包结构

找到资料中的公共包结构

复制com

进入到项目的物理路径(IntelliJ IDEA 2020.1.3 x64)

不同的idea进行项目物理环境的选项不同

把刚才复制过来的com复制到main/java下面

这样就能得到目录结构(里面为空目录) 这样做的目的是不能一次次创建目录结构

【2.3】快速生成yml和main启动类的插件JBL SpringbootAppGen

安装

使用

生成效果

【2.4】配置yml
# web定义
server:port: 8081   #指定当前端口号spring:# 配置mysql数据源datasource:druid:username: rootpassword: rooturl: jdbc:mysql://127.0.0.1:3306/stock_db?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=Asia/Shanghaidriver-class-name: com.mysql.jdbc.Driver# 初始化时建立物理连接的个数。初始化发生在显示调用 init 方法,或者第一次 getConnection 时initialSize: 6# 最小连接池数量minIdle: 2# 最大连接池数量maxActive: 20# 获取连接时最大等待时间,单位毫秒。配置了 maxWait 之后,缺省启用公平锁,# 并发效率会有所下降,如果需要可以通过配置 useUnfairLock 属性为 true 使用非公平锁。maxWait: 60000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒timeBetweenEvictionRunsMillis: 60000# 配置一个连接在池中最小生存的时间,单位是毫秒minEvictableIdleTimeMillis: 300000# 用来检测连接是否有效的 sql 因数据库方言而差, 例如 oracle 应该写成 SELECT 1 FROM DUALvalidationQuery: SELECT 1 FROM DUAL# 建议配置为 true,不影响性能,并且保证安全性。申请连接的时候检测,# 如果空闲时间大于 timeBetweenEvictionRunsMillis,执行 validationQuery 检测连接是否有效。testWhileIdle: true# 申请连接时执行 validationQuery 检测连接是否有效,做了这个配置会降低性能。testOnBorrow: false# 归还连接时执行 validationQuery 检测连接是否有效,做了这个配置会降低性能。testOnReturn: false# 是否自动回收超时连接poolPreparedStatements: truemaxPoolPreparedStatementPerConnectionSize: 20# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙filters: stat,wall# 通过connectProperties属性来打开mergeSql功能;慢SQL记录connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000# 配置mybatis
mybatis:type-aliases-package: com.itheima.stock.pojo   #指定的包下类名取别名mapper-locations: classpath:mapper/*.xmlconfiguration:map-underscore-to-camel-case: true   #开启驼峰映射cache-enabled: false #使全局的映射器启用或禁用缓存。lazy-loading-enabled: false #全局启用或禁用延迟加载。当禁用时,所有关联对象都会即时加载。aggressive-lazy-loading: true #当启用时,有延迟加载属性的对象在被调用时将会完全加载任意属性。否则,每种属性将会按需要加载。# pagehelper配置
pagehelper:helper-dialect: mysql #指定分页数据库类型(方言)reasonable: true #合理查询超过最大也,则查询最后一页support-methods-arguments: true # 支持通过Mapper接口参数来传递分页参数,默认falseparams: pacount=countSql # POJO或者Map中发现了countSql属性,就会作为count参数使用returnPageInfo: check # always总是返回PageInfo类型,check检查返回类型是否为PageInfo,none返回Page

因为上面配置了少了一个mapper 所以我们现 在创建这个包

注意:

第一点

url: jdbc:mysql://127.0.0.1:3306/stock_db?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=Asia/Shanghai

这里面的url 如果是连接的是linux的 刚要写成Linux上的Ip 如果连接的是本地(win)则url 刚要写成

jdbc:mysql:///数据库名称或jdbc:mysql://localhost:3306/数据库名称jdbc:mysql://127.0.0.1:3306/数据库名称

第二点 本项目用到的mysql为5.7 不是8.0 所以把

driver-class-name: com.mysql.cj.jdbc.Driver   把cj删除

补充知识

driver-class-name: com.mysql.cj.jdbc.Driver   mysql8.0
driver-class-name: com.mysql.jdbc.Driver    mysql5.7

第三点 接口扫描

IntelliJ IDEA 2020.1.3 x64版本复制路径写法

视频中的idea版本复制路径写法

然后把复制过来的路径给放在下图所示

【2.5】定义main启动类
package com.itheima.stock;import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
@MapperScan("com.itheima.stock.mapper")
public class StockApp {public static void main(String[] args) {SpringApplication.run(StockApp.class, args);}
}
【2.6】定义web测试接口
package com.itheima.stock.controller;import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/api")
public class UserController {@GetMapping("/test")public String getName(){return "itheima";}}

启动:

注意:这里面启动时 要注意你连接的mysql是linux的还是本地的 要注意他们的账户和密码否正确

启动成功

在浏览器上测试能够获取到

在做接口调试的时候 在这里面建议用postman 因为用浏览器只能用到git

演示使用课程资料中的------股票API接口测试.json

至此,工程基础环境搭建完毕!

5.3 快速构建mybatis业务开发环境

安装插件mybatisX工具

我们可借助mybatisX工具生成基础代码,步骤如下:

第一步:通过idea自带的database组件连接数据库:

全选11张表 点击第一张表 按住Shist 在点击最后一张表

右击

第二步:配置pojo实体类选项

2】集成mybatis的工程结构

【3】环境整体测试

目的:我们通过一个简单的web接口访问数据库,验证工程搭建情况
接口功能说明:查询所有上市公司主营业务数据
接口url:/api/quot/stock/business/all
【3.1】定义mapper接口方法

StockBusinessMapper接口和xml定义查询所有股票业务信息的接口方法:

   List<StockBusiness> findall();

  <select id="findall" resultMap="BaseResultMap">select<include refid="Base_Column_List" />from stock_business</select>
【3.2】定义服务接口及实现

定义服务接口:

package com.itheima.stock.service;import com.itheima.stock.pojo.StockBusiness;
import java.util.List;/*定义股票服务接口*/
public interface StockService {/*查询所有主营业务信息*/List<StockBusiness> findAll();}

定义服务接口实现:

Alt+Enter

package com.itheima.stock.service.impl;import com.itheima.stock.mapper.StockBusinessMapper;
import com.itheima.stock.pojo.StockBusiness;
import com.itheima.stock.service.StockService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;@Service("stockService")
public class StockServiceImpl implements StockService {@Autowiredprivate StockBusinessMapper stockBusinessMapper;@Overridepublic List<StockBusiness> findAll() {return stockBusinessMapper.findAll();}
}
【3.3】定义web访问接口

package com.itheima.stock.controller;import com.itheima.stock.pojo.StockBusiness;
import com.itheima.stock.service.StockService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.List;@RestController
@RequestMapping("/api/quot")
public class StockController {@Autowiredprivate StockService stockService;@GetMapping("/stock/business/all")public List<StockBusiness> findAllBusiness(){return stockService.findAll();}}

【3.4】启动项目测试

成功启动

至此,后台基本开发环境构建完毕!

6.前端开发环境搭建


6.1 前端环境准备

【1】node安装

前端node版本:

详见资料:

http://www.ds6.com.cn/news/167.html

相关文章:

  • 网站建设开发案例教程app关键词排名优化
  • 清爽网站模板营销推广方案
  • 员工管理系统商品标题seo是什么意思
  • wordpress添加专题功能seo网站优化培训多少价格
  • 献县做网站的b2b免费推广网站
  • themebox wordpressseo优化教程自学
  • 私人定制网站建设互联网营销工具有哪些
  • 用discuz怎样做网站seo站长助手
  • 柳州正规网站制作公司哪家好全自动推广软件
  • wordpress手机h5主题seo云优化外包
  • 椒江住房和城乡建设规划局网站网站推广优化的方法
  • 绿化公司网站建设百度最怕哪个部门去投诉
  • 天津做一个简单的网站天津关键词排名推广
  • 在家做十字绣兼职网站宁波seo整体优化公司
  • 如何制作网页图片素材百度seo搜索排名
  • 单页网站如何做排名培训机构哪家最好
  • 什么是响应式网站设计北京推广服务
  • 网站如何备案流程小红书怎么做关键词排名优化
  • 高端h5网站建设 上海跨境电商seo是什么意思
  • 北京做电商网站2024年新闻时事热点论文
  • 做网站的素材都在哪里下载视频号视频怎么看下载链接
  • 达州网站制作写一篇推广商品的软文
  • 专门做旅游的视频网站有哪些长春网站关键词推广
  • 广东移动网站bt蚂蚁磁力搜索天堂
  • 怎样创业白手起家开公司宁波seo关键词费用
  • 做网站维护要学些什么·江东seo做关键词优化
  • 南京网站制作费用网页模板代码
  • 刷赞网站怎么做的外贸网站建设推广
  • 做网站便宜网络广告图片
  • 做神马网站优化排名建站流程新手搭建网站第一步