[转]从.NET转JAVA开发

.NET转JAVA其实也很简单,自己动手写几个DEMO差不多就了解了

1. JAVA做互联网开发多半只会用到开源框架Struts2 Hibernate 和Spring,有些也会用到其他的框架,比如大点的应用有EJB,小些的有JPA、Ibatis等等,其实在.NET里面也有类似的框架结构。当然也有不喜欢用框架的,直接用servlet+jsp+javabean+JDBC来做,总之能解决问题就行。

2. JAVA是MVC的主要倡导者,所以做J2EE应用首先要理解MVC结构,Model(持久层)、View(展示层)、Control(控制层),MVC和传统是三层框架不能说是一一对应但设计结构是相似的,这个没有必要纠结。

3. 在JAVA中常用的Web服务器有Tomcat、Jboss、Weblogic、WebSphere,其实就是.NET中的IIS,只是应用不同,大项目用大的服务器,小项目一般用Tomcat就可以了。

4. JAVA里常用的数据库是MySql和Oracle,再有就是一些互联网公司自己开发的Nosql数据库,不过这是专用领域了。

5. 前台页面框架跟.NET一样,通常是DWR、Jquery框架,不过现在也有用extjs的,还有就是flash做前台的,Flex、JSF等。

6. 先说说Struts2框架,常用在展示层,前台页面展示与控制页面跳转。建立一个JavaWed工程,都会有一个web.xml文件,是整个工程的主配置文件。其它框架的集成首先是在这个配置文件里面进行的。Struts也有一个主配置文件struts.xml,工程中所有配置的Action都是在这个配置文件中配置的。Action是Struts的核心,其实就是控制页面跳转用的,每个页面和后台的数据交互或者跳转到另外的页面都通过action进行。Struts的具体使用看看相关的文档,自己写个登录的demo就明白了。

7. Hibernate 用做数据库的访问,也就是所谓的持久层,用法比直接写sql访问稍微简单,可以简单的看看hibernate的使用,先别研究的那么深。

8. Spring 通常用作控制层,在系统架构设计上使用的比较多,核心思想是Ioc和AOP,实际代码层面还麻烦一些,其实就是采用接口编程方式,将直接采用new实例化对象变成set、get注入的方式。

9. JAVA开发工具比较多,不过目前最通用的是MyEclipse,这个是收费的,最新好像是9.0版本吧,里面已经集成了很多是JAVA插件,或者用Eclipse 这个是开源的,用的时候要手动打插件,掌握一些常用开发的快捷键会很好。这写都是E文版的,用习惯就好了。

10. JAVA开发经常会用到一些外部的jar包,这个和.NET里面的DLL一样的东西,在web工程里面,引用jar包通常就是拷贝到WebRoot\WEB-INF\lib目录下面就可以了。如果不行就要添加到工程引用中去:工程->鼠标右键->Properties->Java Build Path->Libraies->Add JARS选择要引用的jar包 OK即可。在JAVA工程中,src是源代码目录,WebRoot是页面目录,lib是jar包目录

哦,忘记了,java首先要下载一个JDK,配置环境变量,这个网上一搜就很多(http://developer.51cto.com/art/200907/134780.htm)。Myeclipse和Tomcat的集成、项目的发布网(http://www.blogjava.net/Harriet/archive/2007/11/23/162565.html)上都有相应的步骤的。

资料很多择其中前一点点看看就好了,其余的用着用着就熟悉了。可以先分别看看struts,然后spring然后hibernate,然后看他们的集成。写两个DEMO就明白了,用熟悉了再去整那些原理

[转]从.NET转JAVA开发的更多相关文章

  1. 【搬砖】安卓入门(1)- Java开发入门

    01.01_计算机基础知识(计算机概述)(了解) A:什么是计算机?计算机在生活中的应用举例 计算机(Computer)全称:电子计算机,俗称电脑.是一种能够按照程序运行,自动.高速处理海量数据的现代 ...

  2. 【java开发】ubuntu常用命令及环境搭建

    学习第一天,今天内容相对简单,主要就是ubuntu一些常用命令及常规操作,后续涉及到环境的搭建,也会在本文再更. ubuntu环境搭建 第一种 也是最简单最方便的 通过vm虚拟机软件,下载iso镜像进 ...

  3. 如何在一台新电脑上配置JAVA开发环境

    对于JAVA新手来说,刚开始要学JAVA,而自己的电脑上毫无与JAVA开发有关的环境,应该如何进行配置呢? (安卓新手也需要JAVA开发环境) 第一步,下载.安装java JRE JRE (Java ...

  4. Java开发环境的搭建以及使用eclipse从头一步步创建java项目

    一.java 开发环境的搭建 这里主要说的是在windows 环境下怎么配置环境. 1.首先安装JDK java的sdk简称JDK ,去其官方网站下载最近的JDK即可..http://www.orac ...

  5. Java开发的基础条件:

    ------------Java开发的基础条件:Java相关的基础+对编程的自己的理解+调试代码+自己的坚持 一定要谦逊,不人云亦云,不去妄言某一门语言或技术好或坏!不是哪门技术有问题,而是(不会用才 ...

  6. 如何自学 Java 开发

    如何自学 Java 开发? 568赞同反对,不会显示你的姓名 李艾米IT路上学习 568 人赞同 Java Web前端技术 HTML 入门视频课程 1 HTML 简介 2 HTML基本结构[ 3 HT ...

  7. Java编程思想重点笔记(Java开发必看)

    Java编程思想重点笔记(Java开发必看)   Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而 ...

  8. Java开发面试总结

    Java开发面试总结.. ----------------------- java 基础知识点这一块: 1.面向对象的三大特征.(继承,封装,多态) 1.1 在什么样的场合下面会使用到继承 1.2 什 ...

  9. 01 java开发前小知识

    1.常见的dos命令 盘符: 进入指定的盘符下. dir : 列出当前目录下的文件以及文件夹 md : 创建目录 rd : 删除目录    注意:rd不能删除非空的文件夹,而且只能用于删除文件夹. c ...

  10. 20145205 实验一 Java开发环境的熟悉

    实验内容 命令行下Java程序开发 IDEA下Java程序开发.调试 练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) 实现凯撒密码,并进行测试 实验要求 使用JDK编译 ...

随机推荐

  1. 基于Android 下载文件时,更新UI简单帮助类

    因为在项目开发时.有这种简单需求,问谷歌,网络上也有好多Utils工具类,可是比較冗余.自己就简单的写了一个简单帮助类. /** * 下载文件,更新UI简单帮助类 * * @author jarlen ...

  2. HDU 3954 Level up(线段树)

    HDU 3954 Level up 题目链接 题意:k个等级,n个英雄,每一个等级升级有一定经验,每次两种操作,一个区间加上val,这样区间内英雄都获得当前等级*val的经验,还有一个操作询问区间经验 ...

  3. Windows Phone开发(30):图形

    原文:Windows Phone开发(30):图形 图形如矩形.椭圆.路径等都从Shape类派生,它们一般表示规则或不规则图形,这些图形都是简单的二维图形,我相信大家都能理解的. 例一:矩形. 请看下 ...

  4. BDB (Berkeley DB)简要数据库(转载)

    使用最近DBD.然后搜了下相关资料,首先公布的是一门科学: 转会http://www.javaeye.com/topic/202990 DB综述DB最初开发的目的是以新的HASH訪问算法来取代旧的hs ...

  5. android CountDownTimer

    最近进行的项目使用的定时功能,我发现了一个非常容易使用内置类CountDownTimer.当然,可以使用这种效果TimerTask + Timer为了实现.只是我个人的意见CountDownTimer ...

  6. ACE定时器

    每一秒钟打印一行 http://www.tuicool.com/articles/Zb263e 计时器的打开和关闭封装 http://andylin02.iteye.com/blog/440572 自 ...

  7. Java二叉排序树(转)

    一.二叉排序树定义 1.二叉排序树的定义 二叉排序树(Binary Sort Tree)又称二叉查找(搜索)树(Binary Search Tree).其定义为:二叉排序树或者是空树,或者是满足如下性 ...

  8. 特征选择(三)-K-L变换

    上一讲说到,各个特征(各个分量)对分类来说,其重要性当然是不同的. 舍去不重要的分量,这就是降维. 聚类变换觉得:重要的分量就是能让变换后类内距离小的分量. 类内距离小,意味着抱团抱得紧. 可是,抱团 ...

  9. A. Initial Bet(Codeforces Round #273)

    A. Initial Bet time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  10. C++习题 对象数组求最大值

    Description 建立一个对象数组,内放n(<10)个学生的数据(学号.成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出n个学生中成绩最高者,并输出其学号. In ...