仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 764|回复: 11
打印 上一主题 下一主题

[学习教程] 来看对接口编程的复杂了解

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:03:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。
起首,利用接口编程是为了进步程序的可保护性和可伸缩性。假如你在一个类里利用组合挪用另外一个类时,你间接利用另外一个详细的类,如许的话你就不这个类写逝世了,今后假设营业逻辑变更时,你就必需修正原代码。你假如写的是一个接口,当营业逻辑变更时你只需写一个新的类让他完成这个接口。
第二,你还要用相似spring如许的工具,完成松耦合,使用设置文件修正程序。好比要完成一个登录功效:
我先写dao层,个中用到了4个类,
DaoBase.java,用来失掉user对象
  1.    packagecom.ssh2demo.dao;
  2.    importcom.ssh2demo.domain.User;
  3.    publicabstractclassDaoBase{
  4.    
  5.       privateUseruser;
  6.       publicUsergetUser(){
  7.        returnuser;
  8.       }
  9.        publicvoidsetUser(Useruser){
  10.        this.user=user;
  11.        }
  12.   
  13.    }
  14.    IUserDao.java,一个接口,用来封装登录的办法
  15.    publicinterfaceIUserDao{
  16.       publicvoidinsertUser();
  17.       publicbooleangetUserByName(Stringname);//假如前往true代表登录乐成
  18.              }
  19.    IUserDao的完成类UserDaoImp.java
  20.    packagecom.ssh2demo.dao;
  21.    importcom.ssh2demo.domain.User;
  22.    publicclassUserDaoImpextendsDaoBaseimplementsIUserDao{
  23.    //..拔出一个user
  24.        Useruser=newUser();
  25.        publicvoidinsertUser(){
  26.            user.setAge(23);
  27.            user.setName("hth");
  28.            user.setPassword("123456");
  29.        }
  30.   
  31.        publicbooleangetUserByName(Stringname){
  32.            insertUser();
  33.            if(user.getName().equals(name))
  34.                returntrue;
  35.            else
  36.                returnfalse;
  37.        }
  38.    }
  39.    UserDaoDeco.java这个类承继了UserDaoImp,用来向spring文件里注进
  40.    <beanid="userDaoDeco"class="com.ssh2demo.dao.UserDaoDeco"></bean>
  41.    <beanid="userServiceImp"class="com.ssh2demo.service.UserServiceImp">
  42.        <propertyname="userDaoDeco">//此处实在这步的属性能够间接放接口,注进的类放完成类就                            //能够
  43.            <refbean="userDaoDeco"/>
  44.        </property>
  45.    </bean>
  46.    UserDaoDeco.java
  47.    packagecom.ssh2demo.dao;
  48.    importcom.ssh2demo.dao.UserDaoImp;
  49.    publicclassUserDaoDecoextendsUserDaoImp{
  50.    }
复制代码
然后写service层,service层用了一个工场类和工场接口,用来办理service类,如许写便利了在action里我只需注进工场类就能够了,一切的service我都能够经由过程工场取得 
  1.    <beanid="loginAction"class="com.ssh2demo.struts2.LoginAction"singleton="false">
  2.        <propertyname="service">//此处放一个接口,间接让action不体贴类的详细完成,完成了松耦合
  3.                          //使程序易于修改,做到了新加而不是修正。
  4.            <refbean="serviceFactory"/>
  5.        </property>
  6.    </bean>
复制代码
诸如RMI,EJB等一些技术并不是你说的那么复杂,而是它们把一些复杂的工具封装成不复杂的工具了,理解这些工具是需要些时间。我问你,.net里有这些工具吗?要简单多少?。
兰色精灵 该用户已被删除
沙发
发表于 2015-1-20 06:04:04 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
乐观 该用户已被删除
板凳
发表于 2015-1-20 10:02:10 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
柔情似水 该用户已被删除
地板
发表于 2015-1-21 14:19:53 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
谁可相欹 该用户已被删除
5#
 楼主| 发表于 2015-1-24 05:20:08 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
小女巫 该用户已被删除
6#
发表于 2015-1-25 12:05:26 来自手机 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
活着的死人 该用户已被删除
7#
发表于 2015-2-1 14:51:20 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
山那边是海 该用户已被删除
8#
发表于 2015-2-7 06:30:38 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
第二个灵魂 该用户已被删除
9#
发表于 2015-2-20 21:53:47 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
再现理想 该用户已被删除
10#
发表于 2015-3-6 18:40:09 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
海妖 该用户已被删除
11#
发表于 2015-3-13 05:16:50 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
再见西城 该用户已被删除
12#
发表于 2015-3-20 13:43:18 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 00:15

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表