我的第一个 JSP (SSH) 个人网站【开源】

唠叨两句背景

相当长时间没上来发帖了,最近几个月除了完成产品经理一个又一个重复又重复的app开发任务之外,最大的工作莫过于充分利用上笔主的业余时间,系统性地跟李刚同志学习JavaEE的SSH框架开发技术,独立开发出一个完整的JSP个人网站了 XD

毕业以来两年多的Android开发之路,虽然是一路摸黑走了下来,应用开发也越来越得心应手,但是渐渐的清晰的意识到,Android虽然有自己的数据库,有自己的界面部分和逻辑处理部分,作为一个完整的系统而存在,但如果放到互联网之中也只不过跟HTML一样,只是充当着一个View的角色,大概也就是一个重量级的CS模式吧,要开发一个手机应用app,脱离服务器的支持不进行网络访问是非常不实际的,只能是闭关锁国自己跟自己玩,就像癌症末期患者,一旦发布就只剩下死路一条..

笔主从来就不是一个缺乏创意的人 :P  偶尔灵光一现积累下来的创意记录,细数也有几十条了(现在看来一半以上是垃圾呵呵),当然也不乏是针对Android的app创意,但是要实现出来除了时间和勇气之外,另一个不可回避的问题就是服务器后台支持了,也许笔主是一个没人缘的家伙,悲观的想了下,大概没有懂服务器开发的盆友愿意为了笔主的一堆垃圾创意而卖笔主这么一个人情帐(本来就没认识多少懂这块的,也舍不得花钱请人弄)。穷逼的笔主痛定思痛,决定割弃数月找女盆友的娱乐时间,亲自把服务器开发技能get√下来!

当初因为机缘巧合之下投身于Android开发事业,对Java的感情日益深厚,要弄服务器的话自然就是JavaEE了,曾经做过几个BS平台的项目,用的正是JavaEE+SSH框架,多少积累了一些印象,在百度搜刮了一段时间后,毅然选择了李刚大湿的轻量级JavaEE,钱不多,书很厚道,800页挤了140万字,后来深刻的认识到自己为了这个选择付出了多么沉重的代价..

书是从今年春节前后看完的,耗了1个月左右,总结了1.4W多字的word笔记,相当的自豪,后来因为一些原因(好吧,其实是去准备了几个月考日语证)和要完成公司领导的大Project,搁置了大半年时间,直到9月份终于又恢复自由身,感觉已经忘了差不多了,打算把笔记翻出来辅助自己把深藏不露的记忆寻找回来,看了笔记开头顿然感慨,妈的这鸟玩意写的是天书啊谁看得懂!!草花头!!!

无奈之下又花了整整一个月时间(从9月1日持续到30日,时间拿捏的很准呵呵),重新把李刚的长篇大论口水书看完了,一边看一边重新整理修葺笔记(以看完书之后又忘光回到白痴状态的笔主都能瞬间爆发小宇宙的标准来写),终于修成正果写出了3.4W汉字的巨型笔记,放个截图出来自豪一下呵呵

完事之后打算写个试验性网站,发现怎么着也得有个GUI界面吧,又懒懒的花了一个月时间在W3SCHOOL把HTML和CSS部分知识系统性的补充回来,这块不详细说了。

然后一切准备就绪,笔主正式向JavaEE网站宣战!目标当然是,笔主一直盼望已久的个人网站撸哈哈哈!

网站结构图

MySQL5.5数据库脚本

 1 -- --------------------------------------------------------
 2 -- 主机:                           10.66.120.118
 3 -- 服务器版本:                        5.5.24-CDB-3.0.0-log - MySQL Community Server (GPL)
 4 -- 服务器操作系统:                      Linux
 5 -- HeidiSQL 版本:                  9.1.0.4876
 6 -- --------------------------------------------------------
 7
 8 /*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */;
 9 /*!40101 SET NAMES utf8mb4 */;
10 /*!40014 SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
11 /*!40101 SET @[email protected]@SQL_MODE, SQL_MODE=‘NO_AUTO_VALUE_ON_ZERO‘ */;
12
13 -- 导出 wavky 的数据库结构
14 CREATE DATABASE IF NOT EXISTS `wavky` /*!40100 DEFAULT CHARACTER SET utf8 */;
15 USE `wavky`;
16
17
18 -- 导出  表 wavky.interface 结构
19 CREATE TABLE IF NOT EXISTS `interface` (
20   `id` int(11) NOT NULL AUTO_INCREMENT,
21   `description` varchar(2048) NOT NULL,
22   `url` varchar(4096) NOT NULL,
23   `request` text,
24   `response` text,
25   `addTime` bigint(20) NOT NULL,
26   PRIMARY KEY (`id`)
27 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
28
29 -- 数据导出被取消选择。
30
31
32 -- 导出  表 wavky.project 结构
33 CREATE TABLE IF NOT EXISTS `project` (
34   `id` int(11) NOT NULL AUTO_INCREMENT,
35   `title` varchar(100) DEFAULT NULL,
36   `type` char(7) DEFAULT NULL,
37   `snapshotAddr` varchar(1024) DEFAULT NULL,
38   `sourceLinkAddr` varchar(1024) DEFAULT NULL,
39   `projectFileAddr` varchar(1024) DEFAULT NULL,
40   `download` int(11) DEFAULT ‘0‘,
41   `version` varchar(30) DEFAULT NULL,
42   `price` float DEFAULT NULL,
43   `introduction` mediumtext,
44   `releaseDate` bigint(30) DEFAULT NULL,
45   `updateTime` bigint(30) NOT NULL,
46   `addTime` bigint(30) NOT NULL,
47   PRIMARY KEY (`id`)
48 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
49
50 -- 数据导出被取消选择。
51
52
53 -- 导出  表 wavky.user 结构
54 CREATE TABLE IF NOT EXISTS `user` (
55   `id` int(11) NOT NULL AUTO_INCREMENT,
56   `name` varchar(100) NOT NULL,
57   `password` varchar(100) NOT NULL,
58   PRIMARY KEY (`id`),
59   UNIQUE KEY `UK_syftr7gx86fwf7ox7bgvnnta7` (`name`)
60 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
61
62 -- 数据导出被取消选择。
63 /*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, ‘‘) */;
64 /*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */;
65 /*!40101 SET [email protected]_CHARACTER_SET_CLIENT */;

写在最后

因为笔主之前项目的一些经历导致心理阴影,网站中并未使用多少JS脚本(笔主也不太懂这块),JS部分知识来年再去补充一下吧。

鉴于笔主前端能力和兴趣有限,只能勉强兼容到IE7了,IE9的效果是最好的,还在用IE6的同学请接受笔主双手奉上的膝盖 Orz

如标题所示,网站代码已经开源到GitHub了,采用 NEW BSD 协议发布并追加了一些条件(看下面一段),希望得到 源码 的同学们戳这里->[doge]

网站中使用到的logo图标和笔主的wavky名字受协议保护的,不要沿用发布哇!

网站已经实际上线了,用的服务器是利用工作职务之便申请到的腾讯云大主机(扶持计划,免费用半年~咔咔咔 XD),欢迎随时参观-> http://wavky.com

对了,网站是用Maven管理依赖包的,GitHub上的代码搞下来后,Maven会提示缺少ueditor和json两个包,ueditor是百度的富文本编辑器,json是org.json的编译包,可以自己到大神的GitHub里下载编译打包[doge],也可以到笔主的 官方发布帖 [doge] 里面下载现成的包解压到自己的Maven本地仓库里

另外,网站中的百度统计JS代码(在common.js文件中)和IP访问统计代码(在每个JSP页面的<div id="visitor">里面)需要替换成自己的版本哇,想用的话自己去申请吧呵呵呵呵呵

因为网站需求比较简单,就没有单独设立service事务层了,希望能给仍在挣扎中的各位同学们带来一些参考价值 : )

最后感谢前任高班长鼎力提供 master页面 的英文翻译技术支援  

本年度的目标计划算是顺利完成了,2015年继续努力!!加油吧,骚年!!!

时间: 2024-12-14 23:06:03

我的第一个 JSP (SSH) 个人网站【开源】的相关文章

JAVA通过poi对Excel数据在(jsp+ssh)环境下导入导出

POI的下载与安装  请到网站http://www.apache.org/dyn/closer.cgi/poi/右击超链接2.5.1.zip下载压缩包poi-bin-2.5.1-final-20040804.zip(或下载最新的这种压缩包),解压缩后得到如图2.1所示的目录结构.我们主要用到poi-2.5.1-final-20040804.jar这个库文件.请把poi-2.5.1-final-20040804.jar这个文件的路径添加到系统环境变量classpath中,否则无法编译下面的示例程序

一个简单企业信息网站架构

前段时间做了一个简单的企业信息网站,主要用到一些开源的框架和插件,网站开发完了,把用到的东西写出来分享一下 网站功能分析 (1)网站信息维护:网站信息分为很多种类型,有自己网站发布的新闻.知识,也有从其他网站上转载的相关内容,从功能上看都类似,内容主要是富文本,都已经抽象为信息维护功能,包括企业简介之类的,都抽象为网站的信息,只是属于特殊的类型,因此也延伸出另一个需求,网站信息类型维护: (2)网站链接管理:网站链接,主要是为了丰富网站内容,方便用户使用,提升用户体验,由于该网站属于特定行业的企

JSP+SSH+Mysql实现的学生管理系统

项目简介 项目来源于:https://gitee.com/liu_xu111/javaSSH 本系统基于JSP+SSH+Mysql.在当代开发中,SSH的使用已经逐渐被SSM取代,但不代表我们不需要学习SSH,该系统非常简单,可以作为SSH框架初学者的入门项目. 难度等级:中等 技术栈 编辑器 Eclipse Version: 2019-12 (4.14.0) 前端技术 基础:html+css+JavaScript 框架:无 后端技术 SSH(struts2+spring+hibernate)

登录页面jsp跳转到另一个jsp 与jsp-Servlet-jsp

登录页面jsp 到另一个jsp,与jsp-Servlet-jsp  都是可以从表单提交参数信息. 但是jsp-jsp ,只能通过<%=request.getParameter("username") %>;  获取表单中的信息.为空时为null. 而jsp-Servlet -jsp.可以通过el表达式 得到信息. 登录成功! 欢迎您,${username}  当没有这个值时,不会报错,也不默认为null

推荐一个学通信技术的网站,百度“51学通信”第一个就是

推荐一个学通信技术的网站www.51xuetongxin.com,百度"51学通信"第一个就是.这个网站有大量的通信技术在线视频,都是从业很多年的通信人士录制的.并且针对入门者设置了有通信技术入门学习课程.包括IMS.IP网络技术.EPC.2/3/4G技术等等.非常全面.强烈推荐.而且是免费的哦.

如何构建一个优秀的移动网站?谷歌专家教你25招(四)[转]

▌16.在需要选择日期的时候,提供一个可视化日历 当用户在移动网站上预定航班时,很难确定“下周的某一天”是几月几号,所以你需要提供一个可视化日历供用户勾选日期.这样用户就不需要离开你的网站,然后在打开手机上的日历App应用了.在选择开始和结束日期时,可以提供一个清晰的标签,以免用户把日期搞混淆. 关键要素:当需要选择输入日期时,你需要提供一个可视化日历,而且要有一个清晰的日期结构,这样可以保证用户不会中断使用体验. ▌17.通过标签和实时确认,第一时间解决输入错误 在你的表格框内,要有提示标签功

一个JSP结果页面tomcat内存溢出

如今,试验组的同事寻找新能源我看到一个奇怪的现象.一个tomcat应用,内只有一个简单的jsp页面,和这个jsp无论是什么页java代码(我想用这个jsp在她的网页测试server一对tomcat的最大QPS).可是用loadrunner压測了几分钟之后.分配了1024M堆内存的tomcat竟然包heap space outofmemory!这个页面的代码例如以下: <%@ page language="java" contentType="text/html; cha

vuejs模仿实现一个电影分享类网站

前几天朋友发了一个电影分享类网站:http://dy.bingthink.top/ 感觉界面还挺好看的,所以打算用vuejs模仿写一个. 从后台转前端,要学习的东西挺多的,仅以此记录我的学习历程,闲的无聊,对各个技术做了一下了解,php的确是不错的语言,比较适合速成网站的制作,当时候为了开发一个众筹网站想破了头,很多现成可以参考的基本都是php,而且数量非常的多,很完善

tomcat安装与基本配置,动手来部署一个jsp站点。

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选.对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML页面的访问请求.实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的. 另外,Tomcat和IIS等Web服务器一样,具有处理H