ionic+angular4.x班费记账项目

本文介绍了一个采用Angular和前后端分离模式的项目,实现了全站异步数据获取,包括账单列表展示、上拉加载、下拉刷新、搜索、排序和权限控制等功能。详细阐述了技术栈、SQL查询语句、部署流程和优化策略。

班费记账项目简介

项目背景

学习Angular例子,采用前后端分离的开模式,全站异步获取数据。
前后端用时大概两天
项目地址 github地址

功能简介

  • 显示账单列表
    • 上拉加载更多(每次加载5条数据)
    • 下拉刷新
    • 按标题搜索
    • 按时间或金额大小排序显示
  • 查看详情
  • 登入控制添加权限
  • 添加
    • 获取最近使用的操作人
    • 默认使用次数最多的操作人

技术栈

  • 前端 :ionic3+angular4.x
  • 后端:springboot +spring+springMVC+Mybatis
  • 部署管理:maven,github,Linux,nginx,springboot内置tomcat

Sql语句

  • 建库建表语句

    见文件 sql.sql

  • 查询出现的名字及次数并根据次数排序

select name,count(*) as count from bill group by name order by count desc;

运行截图

资源外联

因为服务器只有1M带宽,而这ionic项目的vendor.js有5M,客户端的话已经下载了,如果第一次网页访问必然会下载几分钟,而且会造成阻塞,所以将此文件外联至阿里云oss服务器

部署简介

部署十分简单,因为是前后端分离,直接将静态文件部署至nginx即可,然后将后端API加入nginx的API网关(将/bill/开头的地址反向代理给7000端口的Tomcat)中,解决js跨域访问的问题,响应头中添加Access-Control-Allow-Origin:your domain,即可。

nginx server配置示例:

#bill模块
    upstream bill{
        server 127.0.0.1:7000;
    }
server {
        listen          80;
        server_name     bill.huanxicloud.xyz;
        add_header Cache-Control no-cache;
        location / {
        #静态文件地址         
          }
    }
server {
    listen       80;
    server_name  api.huanxicloud.xyz;
    add_header Access-Control-Allow-Origin http://bill.huanxicloud.xyz;
    add_header Access-Control-Allow-Credentials true;
    location ^~ /bill/ {
        proxy_pass http://bill;
        proxy_set_header Cookie $http_cookie;
    }
    error_page  404              /404.html;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值