仓酷云 发表于 2015-1-18 11:11:48

了解下JAVA的Struts处方 - Hibernate与Struts

首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。
耐久层是一个使用体系最基础的部分。很明显的,假如没有耐久层,一切的事情都将丧失。可是,对分歧的人来讲耐久层意味着分歧的工具。耐久化工夫的是非是选择耐久层贮存媒介的基础权衡尺度之一。比方,关于性命周期为一个用户会话的数据来讲,Httpsession是十分符合的。与之对应的,超过多个session,大概多个用户的耐久化则必要一个数据库来保持。数据的数目是另外一个十分主要的权衡尺度。比方,最好理论标明大批的数据最好不要被存储在一个Http会话中。在这些情形下,你都应当思索利用数据库。在这篇文章中,我们的方针就是数据库耐久层。
你选择的数据库范例对你有架构与计划都有主要的影响。作为面向对象的开辟职员,我们偏向于把数据刻画成形貌手上贸易成绩的一组互相联系关系的对象—这常被称为域模子。可是,最经常使用的存储前言是基于干系模子的。除非我们的对象模子映照成一个干系布局,不然内存中我们数据的暗示就会与耐久化它的办法纷歧致。这个成绩也被称作不合错误称成绩。最盛行的办理这类不合错误称成绩的是一组被称为对象干系映照工具。一个ORM工具是被用来把数据从对象视图转换为干系型、供应诸如创立、读、更新、删除(CRUD)等耐久性服务的软件。有很多的关于ORM工具的论文,可是从实质下去说,他们议论的都是对象映照形式。最盛行的ORM工具是开源的Hibernate工程。
在这篇文章中,我们展现了怎样在一个Struts项目中使用Hibernate。别的,我们将展现怎样创建一个Struts插件来提拔你体系的功能。
处方
在这个文摘中,我们利用一个例子来展现你在struts项目中利用hibernate时所必要的所有工具。我们将创建一个使用程序来猎取和展现从化学元素周期内外掏出的元素。这个使用程
序供应给用户一个查找页来经由过程元素标记来查找元素。使用程序将查询数据库里婚配这个元素标记名的纪录并前往查找到的元素信息来呼应用户哀求。
起首我们将展现怎样启动Hypersonic服务器。当数据库服务器启动后,我们创建示例程序所必要的表与数据。一旦数据库筹办运转了,我们将创建利用Hypersonic数据库服务器所需的Hibernate的一切工具。接上去的步骤是在action里挪用Hibernate来处置数据库读取来响应查询哀求。由于创建Hibernate的Factory对象长短常耗资本的,我们创建一个Strutsplug-in来创建factory并把它保留在context里。
让我们从创建Hypersonic数据库服务器入手下手。你必要从http://hsqldb.Sourceforge.net/下载它。安排hsqldb.jar在你的classpath路径里,从Dos窗口中敲进以下命令来启动Hypersonic:
javaorg.hsqldb.Server
固然分歧版本的Hypersonic的服务器呼应分歧。上面的应对是典范的Hypersonic已筹办好呼应数据库哀求的应对:
Server1.6isrunning
Press+{c}toabort
跟着数据库服务器的启动,我们能够建表和添补数据,以下列表1所示:
Listing1.创建元素表
createtableelements(idinteger(3)IDENTITY,
  namechar(30),
  numberchar(30),
  masschar(30),
  symbolchar(2));
  CREATEUNIQUEINDEXui_elements_pkONelements(symbol)insertintoelements(name,number,mass,symbol)values(Manganese,25,55,Mn);insertintoelements(name,number,mass,symbol)values(Zinc,30,65,Zn);insertintoelements(name,number,mass,symbol)values(Thulium,69,169,Tm);insertintoelements(name,number,mass,symbol)values(Californium,98,251,Cf);insertintoelements(name,number,mass,symbol)values(Gold,79,197,Au);insertintoelements(name,number,mass,symbol)values(Ytterbium,70,173,Yb);insertintoelements(name,number,mass,symbol)values(Molybdenum,42,96,Mo);insertintoelements(name,number,mass,symbol)values(Palladium,46,106,Pd);
<p>
其实产生见解的过程就是训练自己发现问题,分析问题的能力。根据以上的认识我想谈下传统的学习与通过视频独立学习的优缺点:

柔情似水 发表于 2015-1-20 16:55:36

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

兰色精灵 发表于 2015-1-29 13:09:53

学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。

山那边是海 发表于 2015-1-30 12:47:28

关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。

深爱那片海 发表于 2015-2-6 11:49:31

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

飘灵儿 发表于 2015-2-7 02:24:23

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

灵魂腐蚀 发表于 2015-2-9 18:27:51

一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。

分手快乐 发表于 2015-2-27 15:43:56

你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。

莫相离 发表于 2015-3-9 09:08:50

关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。

爱飞 发表于 2015-3-16 21:16:39

设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧

若相依 发表于 2015-3-23 02:12:06

你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
页: [1]
查看完整版本: 了解下JAVA的Struts处方 - Hibernate与Struts