Java小白手记:SSH
以下内容只是一个小白菜鸟的理解和总结,目的仅在于梳理思路。
13年的时候,我就说要学JAVA,有个C++高手同事赞许地说:“嗯,不错,SSH。。。”我不禁肃然起敬。SSH!多么高大上的词,JAVA就是这样,这框架,那概念的,理论一套一套的,特别多,让人听了就兴奋到不行。
那么,SSH究竟是个啥?
分别是 structs、spring、hibernate。它们都是框架,结合起来用在WEB项目中。
structs:
主要是实现MVC中的C。在JAVA WEB项目中,这个C是指Servelet、Filter等拦截、过滤的程序。现在是structs2,据说与structs1没啥关系。
但是,Spring也有MVC的实现,有了它可以不用structs。大家之所以还用structs,其实是看中Spring的IOC、AOP,即控制反转,面向切面等机制。(哎,控制反转、面向切面这些都跟设计模式、系统架构密切相关,其中面向切面这个概念,我还是去年为了考架构师才知道的。真羡慕JAVA程序员,接触到的理论、概念非常多,从没听说.NET程序员要关心这些的!)
参考文章:
Spring:
说了,有MVC\控制反转\面向切面这些机制。这是一个轻量级的框架,其目的是为了帮助程序员更容易使用现有的那些笨重的框架。
据说这个开源的框架是编码典范,设计经典,任何要学习java的人都应该仔细研读,必定获益良多!
Hibernate:
不就是一个ORM框架吗?
除了实体类、方便程序员像使用平常面向对象方式那样编码,操作数据库外,其实它还有缓存、事务等机制。其缓存,曰Session,我猛一看,还以为是HttpSession。
让人汗颜的是,设计出Hibernate的天才,是因为觉得用传统的JAVA方式操作数据库太繁琐了,就决定自己写一个。他对SQL一窍不通,在写Hibernate之前,先到路边的旧书摊上买了一本SQL的入门书。靠,什么叫天才。
为什么JAVA涌现出如此之多杰出思想、概念、框架?我看,主要原因是在于它的开源。因为开源,可以聚集全世界的志同道合者一起参与,大家齐心协力,不断迸发出灵感的火花;而.NET只是一个公司的产品,尽管微软也很强,其开发者也很优秀,但毕竟人数相比太少;更何况,为开源产品添砖加瓦,完全出于个人兴趣,因而参与者可以乐此不疲,不知不觉就将JAVA做大做强;而微软的雇员做.NET,多少有任务的味道,有东西产出就行。
其次,微软因为WINDOWS太成功了,认为要将所有的产品都做得非常易用,包括开发工具。但是,程序员毕竟不同于普通用户,你将一个语言、工具做得那么傻瓜,拖控件、点鼠标,三两下就可以实现个 Hello World!,似乎开发效率提高了不少,但是,智能的外表下,掩盖了那些更需要为程序员所知道通晓的运行机制和原理!所以,微软产品系列的程序员,通病就是只知道应用,而缺乏对程序本质的理解,知其然而不知其所以然,更遑论那些系统架构级的概念、思想了。跟JAVA程序员相比,.NET程序员就像个傻逼。
版权声明:本文为博主原屙文章,喜欢你就担走。
Java小白手记:SSH的更多相关文章
- Java小白手记2:一些名词解释
看到<Java 征途:行者的地图> ,这是一篇有关java学习路径文章.对我等Java小白有指引作用.里面提到了一些基本的名词术语,有些我知道,有些不知道,再补上一些自己曾觉得模糊的,记录 ...
- Java小白手记:WEB项目等
机缘巧合之下,工作中得以用一下java.我向来对java很感兴趣,想从.NET转到java久矣,机会难得,久旱逢甘霖. 这次主要是跟web项目有关.在此之前,我了解到JAVA分为三大块:j2se.j2 ...
- 1、Java小白之路前言
大二一年准备好好学习Java,养成一个良好的习惯写博客,但是由于各种各样的原因,并没有坚持下来.而正好又赶上大三结束,去实习,发现自己的基础还是有些薄弱,所以决定,重新走上这条Java小白之路. 时隔 ...
- 老杜告诉你java小白到大神是怎么炼成的(转载)
老杜告诉你java小白到大神是怎么炼成的 1. 学习前的准备 一个好的学习方法(应该怎么学习更高效): 一个合格的程序员应该具备两个能力 有一个很好的指法速度(敲代码快) 有一个很好的编程思想(编程思 ...
- Java小白如何一步步学好Java,听听企业Java培训师的实践经验吧
今天我准备给小主展示一篇Java培训老师的文章,希望能给Java小白一个学好Java的路径或者提示.以下就是原文: 从大学到现在,我使用Java已经将近20年,日常也带实习生,还在公司内部做train ...
- java jdbc使用SSH隧道连接mysql数据库demo
java jdbc使用SSH隧道连接mysql数据库demo 本文链接:https://blog.csdn.net/earbao/article/details/50216999 packag ...
- Java小白集合源码的学习系列:LinkedList
目录 LinkedList 源码学习 LinkedList继承体系 LinkedList核心源码 Deque相关操作 总结 LinkedList 源码学习 前文传送门:Java小白集合源码的学习系列: ...
- Java小白集合源码的学习系列:Vector
目录 Vector源码学习 Vector继承体系 Vector核心源码 基本属性 构造器 扩容机制 Enumeration 概述 源码描述 具体操作 Vector总结 Vector源码学习 前文传送门 ...
- 【JDK1.8】 Java小白的源码学习系列:HashMap
目录 Java小白的源码学习系列:HashMap 官方文档解读 基本数据结构 基本源码解读 基本成员变量 构造器 巧妙的tableSizeFor put方法 巧妙的hash方法 JDK1.8的putV ...
随机推荐
- Java应用异常状态监测
阿里巴巴中间件技术专栏 老板最近分派了一个任务,说线上客户在部署应用的时候发生了系统级别的OOM,触发了OOM Killer杀掉了应用,让我们解决这个问题. 对于这个任务,我从如下几点开始调研.分析与 ...
- coraldraw快捷键
显示导航窗口(Navigator window) [N] 运行 Visual Basic 应用程序的编辑器 [Alt]+[F11] 保存当前的图形 [Ctrl]+[S] 打开编辑文本对话框 ...
- $config['base_url'] BASE_URL
/*|------------------------------------------------| Base Site URL|--------------------------------- ...
- CSS选择器定位的使用
CSS 可以比较灵活选择控件的任意属性,一般情况下定位速度要比XPath 快,但对于初学者来说比较难以学习使用,下面我们就详细的介绍CSS 的语法与使用.一.CSS 选择器的常见语法: 例如下面一段代 ...
- mysql 递归查询父节点 和子节点
查父集合 --drop FUNCTION `getParentList` )) ) BEGIN ) default ''; ) default rootId; WHILE rootId is not ...
- MySql查询语句的使用实例
一.设计表 1.设计表 查询语句之前先设计四张表:student.teacher.course.score student:sid(学号).sname(姓名).sage(年龄).ssex(性别) te ...
- F题
Problem F Codeforces 16E 这道题是一道数位Dp将鱼的死活列为0两种状态然后找DP关系 •题意:有n(n<=18)条鱼,接下来的n-1天,每天会有一对鱼(a,b)相遇,每天 ...
- 【模拟】2017 Multi-University Training Contest 1 The Battle of Chibi
acm.hdu.edu.cn/showproblem.php?pid=5542 [Accepted] #include<iostream> #include<cstdio> # ...
- msp430入门编程43
msp430中C语言的人机交互--菜单公共函数
- Eddy's AC难题--hdu2200(递推)
Problem Description Eddy是个ACMer,他不仅喜欢做ACM题,而且对于Ranklist中每个人的ac数量也有一定的研究,他在无聊时经常在纸上把Ranklist上每个人的ac题目 ...