阅读更多
尽管有了近一年的工作经历,但实际上工作用到的知识并不那么全面,很多时候项目中使用的技术和框架事实上是轮不到我们码农自己来选的。在已有框架和平台上开发,常用的编程知识就那些。在前公司,我们使用Spring+SpringMVC+Hibernate进行开发,对我而言,这段开发日子我熟练掌握面向对象编程和Java的反射和泛型。反射和泛型编程其实在前公司我是大可不必使用的,当时因为一个人负责开发一个模块也就尝试在编程过程中加入了反射和泛型编程以使自己的代码更加通用一些。其实不使用反射和泛型编程照样可以完成任务。
那么,对于其它知识呢?我其实没有在工作中使用过JDBC编程,甚至连SQL语句都只写一个单表查询语句,只是为了使用PLSQL Developer去查看一下Oracle表里的数据是否与预期一致。还有Java编程中很重要的IO流,基本没有写过一行相关代码。还有Java里面极为重要的Socket编程,我们使用Tomcat作为Web容器,根本就不需要自己写Socket代码,甚至就算不使用Tomcat的客户端编程,我们也可以使用http-client来隐藏socket编程的细节。这些种种,要不就是我们不需要使用这方面的知识,要不就是公司平台其它人已经提供了相关的方法处理掉了业务逻辑。所以,在一个公司中的日常编程,并不能学到更多的知识,大多时候只是将自己已经会的知识点更熟练的使用而已。
这段时间来,我又重温了下Java相关的基础知识。然而光学不练是很容易忘记的。所以我使用这些基础知识写了个简单的网站,目前还只实现了blog的简单功能。这就是Jisonami项目的来源。
Jisonami,一个用来测试我编程知识的网站。
这个项目将尽可能不使用任何框架,使用基本的编程语言规范自己重复造轮子!当制造的轮子足够好用时,我会将其抽取出来并开源成另一个项目。我也不知道我能在这个项目上坚持多久,但我会尽可能延长这个项目的生命周期,虽然我以前的业余项目都死掉了。
目前这个项目使用了Java语言最基本的JDBC操作数据库,使用最基本的Servlet和JSP完成站点页面的跳转和页面的展示,使用原生的JavaScript脚本和CSS样式来增强HTML网页的交互效果。
2016年4月18日,完成了最基本的blog功能,页面样式还很简陋,还不支持中文。
2016年4月22日,使用Servlet规范的Filter处理中文编码问题,同时将所有jsp页面中的jsp脚本即Java代码替换成jstl标签实现。
Github地址: https://github.com/jisonami/Jisonami
上面说的这个Jisonami项目是针对基础知识的训练。而光有基础知识的训练还不够,现在不论公司是大是小,都会使用一些流行的开源框架来简化自己的编程。所以,我打算再开启一个项目,这个项目也是用来测试我的编程知识的,只不过它尽可能多的使用开源框架来完成功能而已。这就是Jisonami2项目。
这个Jisonami2项目跟Jisonami项目不是第一个大版本和第二个大版本的问题,它们实现的功能和业务逻辑基本是一致的,也有各自的版本迭代。
目前这个项目将要使用Hibernate或MyBaties完成数据库操作,使用Spring-MVC来完成页面跳转功能,使用JSP完成页面展示,使用前端JavaScript框架比如JQuery,BootStrap等等完成HTML网页交互效果的增强。并使用Maven来管理项目依赖关系,以后可能会采取更新的依赖管理工具Gradle来管理项目依赖。
Github地址: https://github.com/jisonami/Jisonami2
目前Jisonami项目已初步实现了blog功能,而Jisonami2项目则还未开始。以后可能Jisonami2项目会比Jisonami项目更新的快一些。
Jisonami的blog效果图如下:不要吐槽我抄袭iteye
- 大小: 51.4 KB