Traveller,翻译为旅行家,是我用来实践最佳web技术的项目,主题是一个给旅行爱好者提供旅行信息的网站。

目标是组合现最流行的web技术,实现符合中国用户使用习惯的网站。

相关网址

Git:https://github.com/mingziday/Traveller_Spring-Data-Rest_Angularjs
Blog:http://www.cnblogs.com/mingziday/category/712097.html

技术规划要点

1、数据库:
Mysql5
Navicat11:一款可视化操作Mysql的工具

2、编辑工具:
STS:Spring基于Eclipse封装的Spring集成开发工具
SubLime:一款非常酷的文本编辑工具

3、服务容器:
Tomcat:动态服务器

Nginx:静态文件服务器

4、后端框架
MVC:Spring MVC
持久层:Hibernate/Spring Data JPA
后端校验:Hibernate JSR303
安全:Spring Security
配置方法:全Java无xml配置
后端Restful转换:Spring Data REST(转换为json格式的数据对象)
数据库链接池:c3p0

5、前端MVC框架
(1)Angularjs:2009年出生的前端MVC神器
(2)restangular,用于处理Restful服务的第三方插件
(3)angular-ui-router,用于处理导航路由的插件
(4)ueditor,在线文本编辑器

6、前端样式框架

bootstrap

7、工程管理
Maven
webjar: 一种将前端资源文件进行打包整体发布的方法;采用nginx后,webjar应该作为静态资源被访问才对,但是jar文件无法被nginx解析,于是将webjar包解压缩,部署到单独的static目录

8、版本发布工具
git

9、缓存

spring cache/spring ehcache对象缓存

spring ehcache页面缓存

后续计划

hibernate+coherence缓存
静态文件缓存varnish
动态内容静态化(Node.js)
测试框架SpirngTest+JUnit

安装手册

1、下载工程代码

2、安装Eclipse或者STS

3、安装Maven

4、安装Tomcat

5、安装Nginx,并配置静态文件目录

6、安装Mysql5,并导入输入看脚本sql/traveller.sql

7、更改数据库连接字串

com.huawei.traveller.config.AppConfig
ds.setDriverClass("com.mysql.jdbc.Driver");
ds.setJdbcUrl(
"jdbc:mysql://localhost:3306/happycardata?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull");
ds.setUser("root");
ds.setPassword("123456");

8、编译运行发布到本地Tomcat

9、访问http://localhost/index.html

Traveller项目介绍的更多相关文章

  1. Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍

    网站日志分析项目案例(一)项目介绍:当前页面 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edisonchou/p/4458219.html 网站日志分析项目案例 ...

  2. 10年C#历程的MVP之路与MVP项目介绍

            本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html  1.意外的惊喜 10月份收到微软总部寄来的荣誉证书,非常激动, ...

  3. Openlayers+Geoserver(一):项目介绍以及地图加载

           项目验收完,趁着事情不是很多,对这个项目进行梳理.我主要负责地图模块,网站其他模块主要有两个,一个是报表,主要是100多张报表,技术没有难度,主要是工作量的问题.另一个是数据的校验,就是 ...

  4. CoinPunk项目介绍

           CoinPunk是一个bitcoin比特币钱夹服务web应用程序,你可以自己构建钱夹服务.开源,免费. 轻量级,高效 响应式设计 轻易创建新账户 详细的交易记录 构建于Node.js与H ...

  5. Android Hotpatch系列之-项目介绍

    给现实Android apk打补丁,不用强迫客户升级客户端,悄悄的就把bug修复了,程序猿再也不用被老大骂娘了. 客户端例子实现:https://github.com/fengcunhan/Hotpa ...

  6. xcode新建项目介绍

    xcode新建项目介绍 1.打开xcode选择“create a new xcode project 2.product name 工程名称 campany identifter 公司id 一般都写公 ...

  7. 斗地主算法的设计与实现--项目介绍&如何定义和构造一张牌

    本篇主要讲解斗地主中如何比较两手牌的大小. 友情提示:本篇是接着以下两篇文章就讲解的,建议先看看下面这2篇. 斗地主算法的设计与实现--如何判断一手牌的类型(单,对子,三不带,三带一,四代二等) 斗地 ...

  8. Oschat IM 开源即时通讯项目介绍 - FengJ的个人页面 - 开源中国社区

    Oschat IM 开源即时通讯项目介绍 - FengJ的个人页面 - 开源中国社区 Oschat IM 开源即时通讯项目介绍    255人收藏此文章, 我要收藏 发表于5天前(2013-08-28 ...

  9. NiftyNet项目介绍

    NiftyNet项目介绍  简述  NiftyNet是一款开源的卷积神经网络平台,旨在通过实现医学图像分析的深度学习方法和模块,支持快速原型和再现性,由WEISS (Wellcome EPSRC Ce ...

随机推荐

  1. 《Linux内核设计与实现》读书笔记

    http://www.cnblogs.com/wang_yb/tag/linux-kernel/

  2. 【天池大数据赛题解析】资金流入流出预测(附Top4答辩ppt)

    http://mp.weixin.qq.com/s?__biz=MzA3MDg0MjgxNQ==&mid=208451006&idx=1&sn=532e41cf020a0673 ...

  3. 聊聊 #pragma 和 // MARK:

    我去,就这两个东西还要讲?是OC或Swift开发人员都知道是怎么回事好吗?不就是用来标记和分组代码的吗?难道还有别的装逼技能? 当然,其实问大部分人说这两个是什么作用,或者是除了这两个还知道什么的情况 ...

  4. eclipse按Crl+鼠标左键,找不到源文件的解决办法。

    这种情况一般发生在tomcat的之中,原因是缺少类的源文件.在jdk中很少见,jdk中自带类的源文件,配置jdk的时候就已经将其加载进来了.而tomcat之中没有带类的源文件,需要自己去网上单独下载. ...

  5. Android(java)学习笔记116:PC_Phone通信程序报错

    1.首先我写的程序代码如下: package com.himi.udpsend; import java.net.DatagramPacket; import java.net.DatagramSoc ...

  6. github使用成长记

    学校里一直都有自己写一些网页,一方面为了学习熟练技能,另一方面也是兴趣所在.但是独乐乐不如众乐乐,一直向往有那么一个平台能把自己做得东西分享给广大网友,并且想借着分享的契机和各位程序猿交流学习心得(这 ...

  7. AT-PagerAdapter

    关于PagerAdapter的粗略翻译 英文版api地址:PagerAdapter(自备梯子) PagerAdapter         已知直接子类:FragmentPagerAdapter.Fra ...

  8. VbCrlf的相关说明

    今天从别人发来的手顺书中发现了这几个字母,一头雾水,下面查了一下相关资料. vbCrLf是Visual Basic中的一个字符串常数,即“Chr(13) & Chr(10)”(回车符与换行符连 ...

  9. 误用ArrayListMultimap引发的问题

    最近生产环境的系统在运行一段时间后,用户登录速度越来越慢,但是重启某一模块后,用户登录恢复正常.如此反复,令人提心吊胆.于是下定决心,找出问题原因. 趁着系统运行低峰期,打印出相应Dump文件,发现D ...

  10. html accesskey (단축키 지정)

    accesskey 속성은 마우스 등을 쓰지 않는 환경을 위해 링크나 입력 폼에서 키보드의 키 입력만으로 동작을 실행할 수 있도록 accesskey 속성값에 access 할 영어 또 ...