`
yinter
  • 浏览: 240316 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

一名java开发人员需要掌握的技术

    博客分类:
  • java
阅读更多
1、主流框架要掌握如(ssh),没事可以了解下jsf,shale,seam,richface,jpa 框架。

2、对于各种缓存的分析利弊,能灵活运用 如memcache,Oscache,ehcache,内存数据库timesken,嵌入数据库b-db等。

3、向网络、通信方面发展,比如说写个类似于mina的框架,写写类似于游戏服务端的东西,自己可以写协议,支持高并发。

4、掌握几种主流数据库,oracle,sql,mysql等,可以书写复杂的存储过程,mysql之类的分布、集群掌握一下。

5、会用轻量级别的SOA框架,如serviceMix,Mule等,JMS消息队列需要掌握。

6、深入了解当前业务系统,争取做到这方面的专家。

7、spring的AOP,IOC机制,hibernate的反射机制。

---------------------------------------------------------------------------

对相关技术作简单说明:

(SSH)Struts、spring、 Hibernate在各层的作用:

1)struts 负责 web层

ActionFormBean 接收网页中表单提交的数据,然后通过Action 进行处理,再Forward到对应的网页。 在struts-config.xml中定义, ActionServlet会加载。

2)spring 负责业务层管理,即Service(或Manager).

1. service为action提供统计的调用接口,封装持久层的DAO,。

2.可以写一些自己的业务方法。

3.统一的javabean管理方法

4.声明式事务管理

5.集成Hiberante

3)Hiberante,负责持久化层,完成数据库的crud操作

hibernate 为持久层,提供 OR/Mapping。

它有一组 .hbm.xml文件和 POJO,是跟数据库中的表相对应的。然后定义DAO,这些是跟数据库打交道的类,它们会使用PO。

在struts+spring+hibernate的系统中,

对象的调用流程是:jsp-> Action-> Service ->DAO ->Hibernate。

数据的流向是 ActionFormBean接受用户的数据,Action 将数据从 ActionFromBean 中取出,封装成VO或PO, 再调用业务层的Bean类,完成各种业务处理后再forward。而业务层Bean收到这个PO对象之后,会调用DAO接口方法,进行持久化操作。


---------------------------------------------------------------------------
memcache

Memcache是什么
Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。
它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。
Memcache官方网站:http://www.danga.com/memcached,更多详细的信息可以来这里了解

为什么会有Memcache和memcached两种名称?
其实Memcache是这个项目的名称,而memcached是它服务器端的主程序文件名,知道我的意思了把~~~~。一个是项目名称,一个是主程序文件名,在网上看到了很多人不明白,于是混用了。

Memcache的安装
分为两个过程:memcache服务器端的安装和memcached客户端的安装。
所谓服务器端的安装就是在服务器(一般都是linux系统)上安装Memcache实现数据的存储
所谓客户端的安装就是指php(或者其他程序,Memcache还有其他不错的api接口提供)去使用服务器端的Memcache提供的函数,需要php 添加扩展。

具体的配置大家可以参考:
Linux下的Memcache安装:http://www.ccvita.com/257.html
Windows下的Memcache安装:http://www.ccvita.com/258.html
Memcache基础教程:http://www.ccvita.com/259.html
Discuz!的Memcache缓存实现:http://www.ccvita.com/261.html
Memcache协议中文版:http://www.ccvita.com/306.html
Memcache分布式部署方案:http://www.ccvita.com/395.html


二级缓存

    * EHCache 是一个快速的、轻量级的、易于使用的、进程内的缓存。它支持read-only和read/write缓存,内存和磁盘缓存。但是不支持集群 (Clustering)。
    * OSCache 是另外一个开源的缓存方案。它同时还支持JSP页面或任意对象的缓存。OSCache功能强大、灵活,和EHCache一样支持read-only和 read/write缓存、支持内存和磁盘缓存。同时,它还提供通过JGroups或JMS进行集群的基本支持。
    * SwarmCache 是一个简单的、基于JavaGroups提供集群的缓存方案。支持read-only和nonstrict read/write缓存。这种缓存适用于读操作远远高于写操作频率的应用。
    * JBoss TreeCache 是一个强大的、可复制(同步或异步)和支持事务的缓存。如果你需要一个真正的支持事务的缓存架构,使用这个方案吧。

---------------------------------------------------------------------------

在一个大型项目中如果采用J2EE结构,有人觉得使用如下组合比较完美:

spring,ibatis,memched,hessian,maven,mysql,jboss

再按照规范的J2EE结构去开发,把业务逻辑层web层,数据层分清楚。那应该是一个很错的项目。
分享到:
评论

相关推荐

    Java程序设计基础:使用命令行方式开发Java程序.pptx

    掌握使用命令行方式开发Java程序的步骤 Java程序的运行机制 编写源程序 编译源程序 由Java解释器解释运行 字节码文件 命令行方式开发Java程序的步骤 1.用记事本编写Java程序 2.编译Java程序 javac Welcome.java ...

    java 工程师修炼之道

    本书内容包括了工程化、常用开发框架、数据存储、数据传输、Java 编程高级知识、性能优化、安全技术等内容,基本涵盖了Java 工程师需要掌握的绝大部分技能点。 《Java工程师修炼之道》可以看作一本Java 工程师的...

    java web开发技术大全

    JSP+Servlet+Struts+Hibernate+Spring+Ajax+》讲解了JSP/S rvlet技术的基础知识,并提供了一个综合案例展示其具体应用,它们是Java Web服务端技术的基石,也是学习Java Web开发所要必须掌握的技术。 《Java Web开发...

    计算机程序设计(Java)-教案--单元二--Java语言开发基础.docx.docx

    相关知识点 (1)标识符 Java中的包名、类名、方法名、参数名、变量名等都需要用一个符号来标识,这个符号就称为标识符,java中标识符的命名规那么如下: 组成:可由大小写字母、数字、下划夜(_)和美元符号($) ...

    信息办公简易java开源订销管理系统-javainfo.zip

    同时,如果你是一名Java开发人员,希望学习和掌握Java开发技术,并且对企业信息管理系统感兴趣,那么这个开源项目将为你提供一个学习和实践的机会。无论是从业务管理还是技术学习的角度,该项目都将为你提供实用的...

    阿里巴巴_Java开发手册_嵩山版.pdf

    阿里巴巴出品,Java开发手册,嵩山版,灵魂15问,15篇详细讲解助力高效Java开发.如果你想要成为一名卓越的 Java 开发者,那这份手册上涵盖的内容是必须要掌握的。有没有已经急不可待的想要下载了

    java web技术开发大全(最全最新)

    JSP+Servlet+Struts+Hibernate+Spring+Ajax+》讲解了JSP/S rvlet技术的基础知识,并提供了一个综合案例展示其具体应用,它们是Java Web服务端技术的基石,也是学习Java Web开发所要必须掌握的技术。 《Java Web开发...

    Java编程入门:掌握基础,构建现代应用.zip

    Java是一门功能强大、应用广泛的编程语言。通过本文的介绍,你应该对Java有了基本的了解,并能够开始搭建自己的开发环境和编写简单的Java程序。...不断学习新的技术和最佳实践,你将成为一名优秀的Java开发者。

    Java 7并发编程实战手册

    java 7在并发编程方面,带来了很多令人激动的新功能,这将使你的应用程序具备更好的并行任务...如果你是一名java开发人员,并且想进一步掌握并发编程和多线程技术,并挖掘java 7并发的新特性,那么本书是你的合适之选。

    java 并发编程

    Java7在并发编程方面,带来了很多令人激动的新功能,这将使你的应用...如果你是一名Java开发人员,并且想进一步掌握并发编程和多线程技术,并挖掘Java7并发的新特性,那么《Java7并发编程实战手册》是你的合适之选。

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    本书是第II卷,以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心,介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作...

    Java程序员简历模版参考

    个人信息 姓名:xx 手机:xx 邮箱:xx 教育背景 本科:XX大学,计算机科学与技术专业,2012年-2016年 硕士:XX大学,软件工程专业,2016... 我是一名热爱技术的程序员,具有扎实的编程基础和深厚的技术积累......

    清华大学JAVA教程

    这是清华大学的一套JAVA教程,包括详尽的例子、课后习题与解答、相关计算机英语词汇,就课程...同时Java语言是一门面向对象的语言,通过学习可以掌握用面向对象进行编程的思想和实践,使学生成为一名合格的Java程序员。

    高级Java软件架构师学习计划

    主要介绍做为一名java软件架构师都需要掌握哪些技能 Java语法与编程基础 面向对象程序设计与编码 Java流操作和文件系统 Java图形用户界面编程 异常处理与事件响应 Java基础类库与中期项目实战 Java多线程...

    新手学Java 7编程(第5版)

    今天要想成为一名专业的Web开发者,就必须掌握Java。因此,如果你将来要从事Web应用程序设计工作,那么Java是正确的选择。因为Android程序设计使用了Java,所以Java也成为了智能手机变革的一部分。简单来说,Java...

    Java后端技术-Java高级技术路线.xmind

    作为一名Java后端开发者,一名高级技术人员,必须掌握的技术要点。 从新手进阶到高手的必经之路。此技术路线图,明确的指明了知识点和路线。 如果您没有方向,无从下手,不知道怎么提升,处于迷茫阶段,那么看它就对...

Global site tag (gtag.js) - Google Analytics