注:本来应该前的发,不过过年没有心思管博客了,另外网络也不是很方便,我想可以帮助大家了解一下javaweb吧。

之前的文章中说到,由于要做手机端安卓程序,所以开始使用java。实际上大部分的java程序都是放在浏览器上,也就是web应用,所以当然要看看java怎么开发web项目了。

实际上很多编程语言都提供web支持,因为web开发需求量实在是很多,我之前是学asp.net,后来又看过python的django。

之前用asp.net的时候并没有很好的理解web开发技术,因为有很多服务器端组件,后来asp.net也有mvc的开发模式,不过我是通过django对mvc有了比较直观的了解。

因此我就想通过java来实现,实际上基本上都是差不多的,view都是html、css之类,mould也基本上差不多,control的代码是java代码,另外页面模板是使用的jsp、需要了解el表达式。

不过java中比较麻烦的地方是,要对不同的框架进行组合,不像asp.net和django,都已经集成好了。

一开始组合这些框架就遇到不少麻烦,首先要下载jar包,然后一开始不知道怎么配置就不停的报错,以至于我都放弃了不玩了。

另外,我发现eclipse很不好用,错误提示就很不友好,不像visual studio只提示真正出错的地方,后来换成Intellij Idea感觉好多了,起码错误提示可以把用户代码和框架代码区分开来。

经过无限报错解决完错误以后,这种通过手动加入jar包的方式,javaWeb的框架就可以运行起来了,然后就可以用来开发项目了。

后来公司也确实有项目中用到了,公司人手不够,于是我就跑去搞web项目了,框架什么的倒是没有什么问题,只是时间上冲突了,搞得很郁闷,不过通过这个项目对javaweb更熟悉了,也写了一些比较复杂的sql语句,消除了之前对sql语句的"恐惧感"。

再后来看到公司其他做web开发同事,是使用maven来构建项目,于是我又学习了一下怎么用maven来构建项目,这样在拷贝代码的时候就不会拷贝很多的jar文件。

在一个web项目中服务器端的部分,java能提供非常好的支持,也有很多现成的东西可以用。但感觉在处理前端网页的时候,觉得有很多不足的地方,我做的那个项目,只有美工提供的静态页面,然后其他的东西都是由开发人员来处理。

目前有很多地方做web项目,采用前后端分离的方式,之前发过一个ReactNative的文章,就有一些做前端开发的朋友来加我的qq,于是我又去了解了一下前端开发。

前端我的理解就是用html、js来编写一个应用,通过ajax的方式从服务器获取数据,然后做后端开发的同学就只管提供json格式的数据就可以了。

前端开发有一套比较完整的方案,比如先要在本地运行一个web服务器,然后开发的时候修改了目录中的代码,服务器可以即时更新;代码在发布的时候需要合并压缩,这样加载更快;angularjs可以提供前端的模板,这个模板比jsp的模板要好,因为可以动态更新,这是服务器端模板做不到的;另外,angularjs提供的功能,可以让页面模块化,对于提高开发效率是很有好处的;css也有一些优化的方案,less、sass。

这里值得一提的就是angularjs,我在web项目中并没有用angularjs,在用html5开发手机应用的时候,看到ionic,这个是使用angularjs的,在用ionic做手机应用的时候,大概对angularjs也有一些了解了。

angularjs学起来并不容易,有很多新的概念,实际使用的时候总会遇到一些问题。不过对于提高开发效率确实是很有帮助的。

再说说我做的那个web项目吧,从页面上看有很多表格,每个表格都要有导出excel的功能。于是我就去找了一个表格控件flexgrid。使用表格控件倒是没什么问题,就是把表格的头部都定义好,添加请求数据的url,在后台返回固定格式的数据个表格控件就可以了。

但由于时间上冲突了,我没有去管后来的工作,如果有很多表格,每个表格的信息都去手动定义,效率是很低的,后台返回数据的代码也有很多都是重复的。这样开发的时候耽误时间,维护也很麻烦。

如果多想一下,对flexgrid进行一些封装,跟后台的代码做一些融合,也不需要增加多少额外的东西,是可以减少很多重复的代码,会节省很多时间。

2015年度总结--javaWeb的更多相关文章

  1. 2015年度新增开源软件排名TOP100

    2015年度新增开源软件排名TOP100 本榜单包含2015年开源中国新收录的软件中,根据软件本身的关注度.活跃程度进行排名前100名的软件.从这份榜单中或许可以了解到最新业界的趋势. 1.Switc ...

  2. 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖

    <Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...

  3. 2016年1月编程语言排行榜:Java荣获2015年度冠军

    Java因于2015年人气增幅最大(+ 5.94%),故获得2015年的TIOBE指数的编程语言奖,同时成为15年年度冠军, Visual Basic.NET(+ 1.51%)和Python(+ 1. ...

  4. 2015 年度新增开源软件排名 TOP 100 - 开源中国社区

    2015 年度新增开源软件排名 TOP 100 - 开源中国社区 39.ABTestingGateway http://www.oschina.net/news/69808/2015-annual-r ...

  5. 2015年度总结--android开发

    虽然农历年才是新的一年的开始,不过关于中西文化的问题这里就不讨论了,所谓“男女平权,公说公有理,婆说婆有理;阴阳合历,你过你的年.” 看到很多朋友在发年度总结,于是想想这一年我都在干什么呢,也总结一下 ...

  6. 解读Gartner《2015年度新兴技术成熟度曲线报告》

    详细见:http://www.360doc.com/content/16/0209/16/26186435_533443133.shtml 今年的报告评估了112个领域超过2000项新型技术的市场类型 ...

  7. Theoretical & Applied Mechanics Letters第2届编委会2015年度第1次全体编委会工作会议纪要(转自力学学会)

    2015年7月26日, Theoretical & Applied Mechanics Letters (TAML)第2届编委会在中国科学院力学研究所召开2015年第1次 全体编委工作会议.主 ...

  8. 2015年度新增开源软件排名TOP 100,EasyDarwin开源流媒体服务器排名第17

    本榜单包含 2015 年开源中国新收录的 5977 款开源软件中,根据软件本身的关注度.活跃程度进行排名前 100 名的软件.从这份榜单中或许可以了解到最新业界的趋势. 榜单详情:http://www ...

  9. 2015 年度新增开源软件排名TOP100

    本榜单包括 2015 年开源中国新收录的 5977 款开源软件中,依据软件本身的关注度.活跃程度进行排名前 100 名的软件.从这份榜单中也许能够了解到最新业界的趋势. 1.SwitchyOmega ...

随机推荐

  1. AppCan学习笔记----关闭页面listview动态加载数据

    AppCan页面关闭 AppCan 的页面是由两个HTML组成,如果要完全关闭的话需要在主HTML eg.index.html中关闭,关闭方法:appcan.window.close(-1); 管道 ...

  2. JConsole远程连接配置

    JConsole远程连接还是有一点坑的.这里记录一下配置过程,好记性不如烂笔头. 1.在远程机的tomcat的catalina.sh中加入配置: JAVA_OPTS="$JAVA_OPTS ...

  3. 如何从线程返回信息——轮询、回调、Callable

    考虑有这样一个LiftOff类: /** * 类LiftOff.java的实现描述:显示发射之前的倒计时 * * @author wql 2016年9月21日 下午1:46:46 */ public ...

  4. Linux环境中Openfire安装指南

    Linux环境中Openfire安装指南 安装环境: 安装软件:Openfire 4_1_0 http://download.igniterealtime.org/openfire/openfire_ ...

  5. C# 热敏打印机 Socket 网络链接 打印 图片 (二)

    IPAddress ip = IPAddress.Parse("192.168.1.212"); IPEndPoint iport = );//9100为小票打印机指定端口 Soc ...

  6. Win 10 UWP开发系列:设置AppBarButton的图标

    在WP8以前,页面最下面的四个小圆按钮是不支持绑定的,WP8.1 RT之后,系统按钮升级成了AppBarButton,并且支持绑定了.在Win10 UWP开发中,按钮的样式发生了变化,外面的圆圈没有了 ...

  7. C#正则表达式Regex常用匹配

    使用Regex类需要引用命名空间:using System.Text.RegularExpressions; 利用Regex类实现验证 示例1:注释的代码所起的作用是相同的,不过一个是静态方法,一个是 ...

  8. webServices与Web服务

    本篇的内容在MSND中标注已是一项旧技术,而取而代之的是WCF, 那么我也放弃吧!但是这个属于Web服务的范畴,而WCF本质上也是一个Web服务来的,所以对于基础的东西还是不变的.那么这次就着重看看这 ...

  9. 安装DotNetCore.1.0.1-VS2015Tools.Preview2.0.2出现0x80072f8a未指定的错误

    本文转载自: http://www.cnblogs.com/JiaoWoWeiZai/p/5892255.html 最近DotNetCore更新到了1.0.1,Azure tools也更新到了2.9. ...

  10. Devexpress TextAnnotation

    private void BindData() { chartControl1.AnnotationRepository.Clear(); chartControl1.Series.Clear(); ...