先说明,大佬请忽略我这篇文章, 我是一个做了5年的纯种C#开发人,  我在此仅记录一下我转java的过程.都知道, java是开源的,所以它的开发工具贼多,不像.net, 直接地表最强的IDE. 像现在最流行的是intellij idea,前几年常用的是Eclipse 和MyEclipse, 但我遵从大众的初衷, 是从Eclipse. 我没有刻意去了解它这个工具是怎样,首先我先了解它是如何创建项目的, 先从System.out.println 开始. 至此, 第一个java的hello word 就出来了.

一、Java基础

开始, 我用了三天来看它里面的语法(总时间估计也就是10个小时左右), 主要是看视频. 我侧重点是在集合、继承、泛型、反射等,因为之前有过.net的基础, 所以感觉都是大同小异,很多直接忽略过了, 只是记录一些特殊的语法而已。 我发现java和.net的一个不同, 一个java文件内,不能同时存在两个非内部类的,但是.net的可以;还有继承关键字不同, .NET的是用:,而JAVA是用extends,  而接口的实现,需要用 implements  ; 还有一些反射的关键字有所不同. 常用的三种获取对象的方式:

  1. 实例对象,直接用getClass() ;

  2. 直接用类class ;

  3.用Class.forName("包名.类名"); 还有,集合:  像Colletion 和Map , 它所包含的子类,一定要熟记于心, 这样面试才有自信。 这些是java的基础, 必须尽量的熟悉掌握;

二、数据库连接

接下来,一小段时间,我出现了迷茫, 基础我懂了,但是不知道怎么下手到web, 然后我一直整理出自己的学习思路(这里本来想花个思维导图的,但是没画)。我并没有急于去学习框架, 我从连接数据库开始,我先下载对应版本的mysql数据库驱动, 数据库连接基于以下几个步骤:

  1.读取配置文件(文件包含有: driver(驱动), url(mysql的驱动,谨记,这里最好后缀加ssl配置和转码机制), user和password 分别数据库的账号和密码 ) ;这里你也可以直接写在java文件里面, 不一定在配置文件.

  2. 用Class,forName加载驱动

3. 用Connetion对象接受DriverManager.getConnection(url,user,password);

至此, 数据库连接成功;

三、Servlet 和JSP 学习;

刚开始,我把这两个混淆了, 我以为跟.net的MVC一样, Controller对应的相应的页面, 然而,我错了.  但是他们却有异曲同工之处, 搞过微软的mvc的都知道, Controller里面可以根据方法,在你return view()没有指定对应的页面时候,是返回到对应的同名页面; 而servlet不同, 它继承与httpservlet, 下面整理设计到的知识点:

  1.要了解servlet和JSP的基础语法糖;入<%%> ,<%=%>  以及include指令和行为等等...

  2.了解servlet和JSP的传值.我目前掌握的是, 利用 request.setAttribute来成为作用于, 再用request.getRequestDispatcher("index.jsp").forward(request, response);进行传值到index.jsp页面, 接受的话, request.getAttribute进行接收即可.当然,这里只是简单举例而已, 还有其它待我去发现。

  3.一些session缓存等等.

综合上述, 我已将java的基本要素拿下. 我没有说去看它里面的jvm怎么优化和工作原理, 那些是未来的我去了解的.现在是刚刚开始自学转入, 接下来, 需要学的是,如何在linux系统上部署项目,如何生成发布项目等等..本人语言能力有限,仅此献丑.

  

一个.net的程序员如何转到java的?的更多相关文章

  1. fir.im Weekly - 如何做一个出色的程序员

    做一个出色的程序员,困难而高尚.本期 fir.im Weekly 精选了一些实用的 iOS,Android 开发工具和源码分享,还有一些关于程序员的成长 Tips 和有意思有质量的线下活动~ How ...

  2. 4年前端、2年CTO:一个非科班程序员的真实奋斗史

    1.引言   我,Scott,一家创业公司的 CTO. 从业6年却很少写文章,近一年来接触了几十个刚毕业的前端新人,也面试了100多个前端工程师和Nodejs工程师,对于前端发展的这个职业算是有些感触 ...

  3. 寻找下一个结点 牛客网 程序员面试金典 C++ java Python

    寻找下一个结点 牛客网 程序员面试金典 C++ java Python 题目描述 请设计一个算法,寻找二叉树中指定结点的下一个结点(即中序遍历的后继). 给定树的根结点指针TreeNode* root ...

  4. 从程序员到CTO的Java技术路线图 作者:zz563143188

    在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常不错的,这样我们清楚的知道我们大概处于那个阶段和水平. Java程序员 高级特性 反射.泛型. ...

  5. 想转行做程序员,是学习JAVA还是Python?哪个更好?

    请大家务必审题,转行做程序员,是程序员,并非数据分析也不是软件测试. 首先声明:这是一篇容易引起撕逼的问答,为了祖国和谐,人民安康,请各位看官尽量理性讨论. 同时,这篇文章是面向一些初入行的朋友进行一 ...

  6. 程序员必须掌握的Java 框架,小白学会之后15k不是问题

    Spring 的核心特性是什么?Spring 优点? Spring 的核心是控制反转(IoC)和面向切面(AOP) Spring 优点: 程序员必须掌握的Java 框架,学会之后50k不是问题 (1) ...

  7. 碰撞的蚂蚁 牛客网 程序员面试金典 C++ Java Python

    碰撞的蚂蚁 牛客网 程序员面试金典 C++ Java Python 题目描述 在n个顶点的多边形上有n只蚂蚁,这些蚂蚁同时开始沿着多边形的边爬行,请求出这些蚂蚁相撞的概率.(这里的相撞是指存在任意两只 ...

  8. 检查是否是BST 牛客网 程序员面试金典 C++ java Python

    检查是否是BST 牛客网 程序员面试金典  C++ java Python 题目描述 请实现一个函数,检查一棵二叉树是否为二叉查找树. 给定树的根结点指针TreeNode* root,请返回一个boo ...

  9. 如何成为一个C++高级程序员

    C++这门语言从诞生到今天已经经历了将近30个年头.不可否认,它的学习难度都比其它语言较高.而它的学习难度,主要来自于它的复杂性.现在C++的使用范围比以前已经少了很多,java.C#.python等 ...

随机推荐

  1. React组件方法中为什么要绑定this

    如果你尝试使用过React进行前端开发,一定见过下面这样的代码: //假想定义一个ToggleButton开关组件 class ToggleButton extends React.Component ...

  2. Scala(四) —— 集合

    一.List var x = List(1,2,3,4) //x:List[Int] = List(1, 2, 3, 4) var y = List("x","y&quo ...

  3. WEB项目挂载到IIS session过期

    莫名丢失问题: 1.可能是因为系统内部连续的抛出了5次以上的异常 导致进程重启(当前所有在线用户) 2.IIS6 以上默认配置进程,session存在进程内其实是在W3wp.exe中这个进程不稳定,在 ...

  4. Java开发笔记(六十五)集合:HashSet和TreeSet

    对于相同类型的一组数据,虽然Java已经提供了数组加以表达,但是数组的结构实在太简单了,第一它无法直接添加新元素,第二它只能按照线性排列,故而数组用于基本的操作倒还凑合,若要用于复杂的处理就无法胜任了 ...

  5. Java高阶语法---final

    背景:听说final Java高阶语法是挺进BAT必经之路. final: final关键字顾名思义就是最终不可改变的. 1.含义:final可以声明成员变量.方法.类和本地变量:一旦将引用声明为fi ...

  6. SpringMVC进行文件上传

    进行文件上传前需要添加相应的依赖 在xml文件中进行相应的文件上传解析器的配置 注意:这里有个坑,因为没注意,再排查错误的时候花了一点时间.就是给bean的id一定要是. 否者就会报如下的错误:

  7. weblogic Patch

    How to Apply WLS Patch on Weblogic Integrated with OEM Getting "Main Thread" Java.lang.Out ...

  8. nginx代理天地图做缓存解决跨域问题

    作为一个GISer开发者,天地图是经常在项目中以底图的形式出现,其加载地址如: 天地图矢量:http://t{0-6}.tianditu.com/DataServer?T=vec_w&x={x ...

  9. Python开发爬虫之理论篇

    爬虫简介 爬虫:一段自动抓取互联网信息的程序. 什么意思呢? 互联网是由各种各样的网页组成.每一个网页对应一个URL,而URL的页面上又有很多指向其他页面的URL.这种URL之间相互的指向关系就形成了 ...

  10. Android 7.0及以上使用OpenCL

    由于从Android 7.0, API 24, 开始, 系统将阻止应用链接至非公开NDK库, 所以, 使用libOpenCL.so时与面向低版本的Android平台有所不同, 需要把依赖的非公开NDK ...