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. Android 滑动效果进阶篇(五)—— 3D旋转

    前面介绍了利用Android自带的控件,进行滑动翻页制作效果,现在我们通过代码实现一些滑动翻页的动画效果. Animation实现动画有两个方式:帧动画(frame-by-frame animatio ...

  2. MYSQL分页limit速度太慢优化方法

    http://www.fienda.com/archives/110 在mysql中limit可以实现快速分页,但是如果数据到了几百万时我们的limit必须优化才能有效的合理的实现分页了,否则可能卡死 ...

  3. HOW MYSQL USES INTERNAL TEMPORARY TABLES

    HOW MYSQL USES INTERNAL TEMPORARY TABLES Table of Contents [hide] 1)UNION queries 2)Some views 3)SQL ...

  4. apache常见错误汇总

    <>问题: Access forbidden! You don't have permission to access the requested directory. There is ...

  5. 实例源码--Android的ListView控件的总结

    下载源码   技术要点: 1.ListView控件的总结 2.微信ListView气泡的实现 3.ListView仿优酷播放列表 4.ListView刷新列表 5.详细的源码注释 ...... 详细介 ...

  6. 基础知识 - Rabin-Karp 算法

    Rabin-Karp 算法(字符串快速查找) Go 语言的 strings 包(strings.go)中用到了 Rabin-Karp 算法.Rabin-Karp 算法是基于这样的思路:即把字符串看作是 ...

  7. 面试常备题---二叉树总结篇(zt)

    人生就像是一场长跑,有很多机会,但也得看我们是否能够及时抓牢,就像下面这样的代码: while(isRunning) { if(...){...} else if(...){...} ... else ...

  8. css笔记06:层叠样式选择器

    1. (1)HTML文件 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...

  9. JAVA实现DES加密

    DES加密介绍       DES是一种对称加密算法,所谓对称加密算法即:加密和解密使用相同密钥的算法.DES加密算法出自IBM的研究,后来被美国政府正式采用,之后开始广泛流传,但是近些年使用越来越少 ...

  10. Clover:让Windows下的资源管理器具有Chrome一样的标签页

    这个小巧实用的插件第一次激发了我给人捐款的冲动. 不多说,上图看效果: 具有和Chrome一样的书签功能,以网页的形式保存本地位置,将常用目录放在书签上十分方便. 多标签相比多窗口的优势不需要我多说, ...