马士兵Java自学之路_精心编辑版
马士兵java基础笔记 pdf版 面向对象部分
public class Test{ public static void main(String args[]){ Test test = new Test(); int date = 9; BirthDate d1= new BirthDate(7,7,1970); BirthDate d2= new BirthDate(1,1,2000)(1); test.change1(date)(4); test.change2(d1);(7) test.change3(d2);
b.setDay(22),把 b 指向的值改变了,这次真 的变了!
方法执行完后,b 消失,d2 的值变了。
四. 方法重载 类中可以定义相同名字但参数不同的方法。
五. this 关键字 this 指向对象自身的引用。
在类的方法定义中使用 this 关键字代表使用该方法的对象的引用。 当必须指出当前使用方法的对象是谁时要使用 this 有时使用 this 可以处理方法中成员变量和参数重名的情况 this 可以看作是一个变量,它的值是当前对象的引用
_id:1
age = _age; }
_age:25
public static void main(String[] args) {
Person tom = new Person(1, 25); } }
tom:XXX Stack
id:1 age:25
Heap
例子:
class BirthDate { private int day; private int month; private int year; public BirthDate(int d, int m, int y) { //构造方法 day = d; month = m; year = y; }
JAVA笔记(根据马士兵的java视频整理)
JAVA视频教程尚学堂---手把手教程Call:86-主讲教师马士兵SCM系统--------Java+VC跨平台(电信宽带运营平台-------Java+WEB(J2EE)跨平台远程教学平台----Java+WEB(tomcat)VOD视频监控-----VCERP视频会议---------VC新闻发布系统-----Java+XML(模板)网上商城课堂内容、教学方法、学习方法、预备知识、教学资源JAVA基础贯穿数据结构的知识(时间复杂度、链表)---非常重要语法基础【变量、循环、分支】最核心的东西—原理--学好OO【面向对象是最重要的】有新东西学是好事----个人价值Exception 从Java Web开始,框架巨多无比Array【数组】基础类、常用类I/O StreamCollection/Generic【集合类】Thread【线程】TCP/UDP【网络底层】GUI【Graphic User Interface 图形化用户接口窗口】Meta Data【以后讲,与紧密相关】Regular Expression【正规表达式】JDK初步Java Web编程【主攻一个框架---讲原理,略讲其他框架】针对Web程序J2EE【一套标准,包含Java Web 、JDPC、JSP、SP、JB/开源框架—就分步式来说,目前(2005)无东西与之抗衡】(比较,,)企业级应用J2ME移动设备移动增值SP运营商3G,2.5G,要火爆起来【网络先铺起来,应用才能上来;3G的网络还没有铺开、火爆起来,讲3G的应用超前了】巨无霸式的教学理论举例理论回顾练习讲解【三片面包加两片肉】注重结合工程实践【完全结合】注重传授自学能力【自学的东西相当重要,授人以鱼,不如授人以渔;慢慢学会掌握一定基础后才有,灌输、背,融成血液里的一部分,心中无剑,手中有剑—前提—心中有剑手中也有剑;时间短,强度大,该背就背】个人能力分三个层次知识学习前人的知识---学习能力的一个表现,被动地接受—接受能力{自己学习了知识后考虑如何去应用,去---学习解决问题的方法【类似问题遇到过】灵活运用学到的知识【碰到什么问题采用什么方法】解决问题的思路【最高层次】创造解决问题的方法【思路掌握了,遇到新问题,自己拓展一条思路,解决问题,不可能一口吃成一个胖子,沿着这三个层次一点一点往上升首先打造自己学习知识的能力,先把该掌握的知识掌握了,再谈如何应用---如何教---教大家写项目每一个知识教太深—给项目留得时间特别短---不合适;自学一些东西,慢慢去培养解决问题的思路,试着朝这个方向去培养,工作后慢慢遇到新问题使劲去思考了积累起来逐渐会有这个能力,灵活一点、再灵活一点!基础知识要背—灵活应用的东西不能背,无一定之规,在实践中慢慢锻炼—实践的越多—敲的代码越多(掌握思路后自主敲代码,哪怕敲不出来再看别人的思路—收获远远不一样,学习要自主一点,多思考思路才能开阔—无捷径,努力锻炼自己的就业能力。
JAVA自学教程(完整版)PPT课件(2024)
二分查找
针对有序数组,每次取中间元 素与目标元素比较,缩小查找 范围
12
03 面向对象编程基础
2024/1/27
13
类与对象的概念
类的定义
类是对象的模板,它定 义了对象的属性和方法 。
2024/1/27
对象的概念
对象是类的实例,具有 类定义的属性和行为。
类与对象的关系
类是对象的抽象描述, 而对象是类的具体实现 。
2024/1/27
32
Socket通信原理及示例
Socket通信原理
理解Socket通信的基本原理,掌握Socket 类和ServerSocket类的使用。
TCP编程
学习基于TCP协议的Socket通信,实现客户 端与服务器之间的数据传输。
多线程处理
掌握多线程在Socket通信中的应用,提高服 务器的并发处理能力。
TreeSet类的特点和使用
TreeSet是Set接口的另一个常用实现类,它基于红黑树实 现。TreeSet会对元素进行排序,因此它适用于需要排序的 场景。
26
Map接口及其实现类
01
Map接口的定义和特 点
Map接口表示一种键值对的映射关系 。Map中的每个元素都包含一个键和 一个值,键在Map中是唯一的。
学习ReentrantLock锁的使用,了解 公平锁与非公平锁的区别。
2024/1/27
等待/通知机制
掌握Object类的wait()、notify()和 notifyAll()方法的使用,实现线程间 的通信。
死锁与避免
了解死锁的概念及产生条件,学习如 何避免死锁的发生。
31
网络编程基础
网络编程概述
ArrayList类的特点和使用
马士兵视频列表及Java学习教学大纲
教学视频资源列表q、jshtmlcss这是基础l、尚学堂科技_马士兵_轻松愉快linux视频教程n、oracle.马士兵r、mysql_avi.马士兵这些单独的数据库和系统模块可以在任何时候都可以,建议在学j2ee之前学j、尚学堂马士兵视频教程_scm_cvs_svncvs是存档工具,建议在学j2ee当中学习p、junit4这个是测试工具,建议在学j2ee中学习s、设计模式.马士兵j2ee中会提到这块的f、马士兵jsp_servlet视频这个是j2ee的基础a、ejb3.0李腾飞ejb现在用的真的不多了d、struts马士兵b、hibernate马士兵c、spring马士兵struts是学习j2ee的第一个框架,简单易上手,也可以考虑struts2,这个跟struts没啥关系,是webwork的升级版hibernate对于懒人来说很好用,但是不适合面对大客户量的访问,那样机器会死的很惨spring还不错,就是要适应繁琐的配置文件g、尚学堂科技_马士兵_java_网上商城项目视频讲解h、尚学堂09年drp项目i、尚学堂科技_马士兵_jdbc_mysql_bbs项目课堂实录视频教程k、尚学堂科技_马士兵_java_系列视频教程_bbs_2007o、尚学堂马士兵视频教程_xml_ajax_dom4j_javadb_metadata学完三大框架之后就可以做上面的项目了,然后ajax的学习也用不了太久,可以边学边学着做e、oa项目最好是在有以上项目经验的基础上,加上学完了ajax再做oa项目,因为oa项目涉及到的技术太多m、网络课堂.尚学堂马士兵_flex_0100_actionscript这个跟上面的不是一个体系,建议当做扩展来学习第一部分:j2se学习视频内容包括:尚学堂科技_马士兵_java视频教程_jdk5.0_下载-安装-配置尚学堂科技_马士兵_java视频教程_j2se_5.0_第01章_java简介_源代码_及重要说明尚学堂科技_马士兵_java视频教程_j2se_5.0_第02章_递归补充尚学堂科技_马士兵_java视频教程_j2se_5.0_第02章_基础语法尚学堂科技_马士兵_java视频教程_j2se_5.0_第03章_面向对象尚学堂科技_马士兵_java视频教程_j2se_5.0_第04章_异常处理尚学堂科技_马士兵_java视频教程_j2se_5.0_第05章_数组尚学堂科技_马士兵_java视频教程_j2se_5.0_第06章_常用类尚学堂科技_马士兵_java视频教程_j2se_5.0_第07章_容器尚学堂科技_马士兵_java视频教程_j2se_5.0_第08章_io尚学堂科技_马士兵_java视频教程_j2se_5.0_第09章_线程尚学堂科技_马士兵_java视频教程_j2se_5.0_第10章_网络尚学堂科技_马士兵_java视频教程_j2se_5.0_第11章_gui尚学堂科技_马士兵_java视频教程_j2se_5.0_专题_日期处理尚学堂科技_马士兵_java视频教程_j2se_专题_正则反射avi第二部分:j2se练习项目视频内容包括:尚学堂科技_马士兵_在线聊天系统雏形视频教程_java_eclipse 尚学堂科技_马士兵_坦克大战视频教程_java_eclipse尚学堂科技_马士兵_坦克大战图片版尚学堂科技_马士兵_java_坦克大战网络版视频教程尚学堂科技_马士兵_snake_贪吃蛇内部视频第三部分数据库视频oracle视频内容包括:01——53讲avi格式第四部分:jdbc和mysql视频,内容包括:1_lomboz_eclipse_jdbc2_mysql_avi3_连接池的设计思路.avi第五部分:html & css & js 视频:html & css 视频内容简介:01_html简单介绍和meta标签.avi02_a_路径问题等等.avi03_学习方法_其他常用标签.avi04_1_note.avi04_表格和表单_1.avi05_表格和表单_2.avi06_frame.avi07_dreamweaver.avi08_css_1.avi09_css_2_选择方式.avi10_css_3.avi11_css_4.avijs 视频简介:01_js初步及调试.avi02_js基本语法.avi03_函数_事件处理_1.avi04_事件处理_2.avi05_内置对象_dom_bom.avi06_趣味.avi07_实用.avi08_表单验证.avi09_表单验证_new.avi10_后台框架.avi11_后台框架_2.avi12_tree.avi第六部分:servlet & jsp视频——内容包括:1 tomcat的安装使用,配置2 servlet & jsp 视频1——30节jsp的练习项目内容包括:3 简单bbs项目3 2007美化bbs项目4 网上商城项目视频4 网上商城项目视频讲解视频第七部分:j2ee学习视频包括:drp项目框架视频学习:struts视频hibernate视频spring视频提高部分:uml统一建模语言视频ssh项目视频:oa办公自动化系统视频crm项目视频银行系统视频ejb3.0视频j2me_3g简介资料面试材料:面试题大汇总+笔记+技巧路线图明细下面给出第二节《java自学路线图》中知识点的明细:一:j2se 面向对象-封装、继承、多态内存的分析递归集合类、泛型、自动打包与解包、annotationio多线程、线程同步tcp/udpawt、事件模型、匿名类正则反射机制2:数据库(oracle或者mysql)sql语句多表连接,内外连接,子查询等管理表、视图、索引、序列、约束等树状结构存储存储过程、触发器数据库设计三范式、3:jdbcjdbc基础连接池树状结构存储与展现datasource & rowsetjdbc连接oracle及mysql4:html_css_jshtml、css、js基础语法js form判断dom编程基础(事件处理等)js常用效果如treeview、下拉联动等js学习方法js调试方法dreamweaver初步(建立html、table、form、css)等5:servlet & jsptomcat基础servlet基础web.xml配置基础web application的结构servlet生命周期request response等常用方法servletcontext类http协议基础(get post)cookiesessionapplicationjsp的几种语法(包括jstl等)注意在项目中练习,不要拘泥于语法细节而裹步不前。
尚学堂科技马士兵JAVA系列视频教程 全【VIP专享】
尚学堂科技.马士兵.JAVA.系列视频教程第一部分:J2se学习视频内容包括:尚学堂科技_马士兵_JAVA视频教程_JDK5.0_下载-安装-配置尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第01章_JAVA简介_源代码_及重要说明尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第02章_递归补充尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第02章_基础语法尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第03章_面向对象尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第04章_异常处理尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_ 第05章_数组尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第06章_常用类尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第07章_容器尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第08章_IO尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第09章_线程尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第10章_网络尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第11章_GUI尚学堂科技_马士兵_JAVA 视频教程_J2SE_5.0_专题_日期处理尚学堂科技_马士兵_JAVA视频教程_J2SE_专题_正则表达式反射avi◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆第二部分:j2se练习项目视频内容包括:尚学堂科技_马士兵_在线聊天系统雏形视频教程_java_eclipse尚学堂科技_马士兵_坦克大战视频教程_java_eclipse尚学堂科技_马士兵_坦克大战图片版尚学堂科技_马士兵_JAVA_坦克大战网络版视频教程尚学堂科技_马士兵_snake_贪吃蛇内部视频涉及到项目之1俄罗斯方块.rar: 07.4 MB涉及到项目之2坦克大战视频教程.rar: 019.4 MB涉及到项目之3坦克大战视频教程_java_eclipse.rar: 0395.4 MB涉及到项目之4坦克大战图片版.rar: 0101.2 MB涉及到项目之5坦克大战网络版视频教程.rar: 0248.8 MB涉及到项目之snake_贪吃蛇视频.rar: 095.2 MB涉及到项目之在线聊天系统雏形视频教程_java_eclipse.rar: 0233.9 MB◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆第三部分数据库视频Oracle视频内容包括:01——53讲avi格式◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆第四部分:JDBC和MySQL视频,内容包括:1_lomboz_eclipse_jdbc2_mysql_avi3_ 连接池的设计思路.avi◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆第五部分:HTML & CSS & JAVASCRIPT 视频:Html & CSS 视频内容简介:01_html 简单介绍和meta标签.avi02_a_路径问题等等.avi03_学习方法_其他常用标签.avi04_1_note.avi04_ 表格和表单_1.avi05_表格和表单_2.avi06_Frame.avi07_Dreamweaver.avi08_CSS_1.avi09_CSS_2_ 选择方式.avi10_CSS_3.avi11_CSS_4.aviJavaScript 视频简介:01_JS 初步及调试.avi02_JS基本语法.avi03_函数_事件处理_1.avi04_事件处理_2.avi05_内置对象_DOM_BOM.avi06_趣味.avi07_实用.avi08_ 表单验证.avi09_表单验证_new.avi10_后台框架.avi11_后台框架_2.avi12_TREE.avi◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆第六部分:Servlet & JSP视频——内容包括:1 tomcat的安装使用,配置2 servlet & jsp 视频1——30节jsp的练习项目内容包括:3 简单bbs项目3 2007美化BBS项目4 网上商城项目视频4 网上商城项目视频讲解视频◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂最好的Java只有尚学堂◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆第七部分:J2EE学习视频包括:DRP项目框架视频学习:Struts视频Hibernate视频Spring视频提高部分:uml统一建模语言视频SSH项目视频:oa办公自动化系统视频crm项目视频银行系统视频ejb3.0视频J2ME_3G简介资料面试材料:面试题大汇总+笔记+技巧。
JAVA自学教程(完整版)PPT课件
而在Java语言中,Java自带的虚拟机很好地实现了跨平台 性。Java源程序代码经过编译后生成二进制的字节码是与平台 无关的,但是可被Java虚拟机识别的一种机器码指令。Java虚 拟机提供了一个字节码到底层硬件平台及操作系统的屏障,使 得Java语言具备跨平台性。
2. 面向对象
面向对象是指以对象为基本粒度,其下包含属性和方法。 对象的说明用属性表达,而通过使用方法来操作这个对象。面 向对象技术使得应用程序的开发变得简单易用,节省代码。 Java是一种面向对象的语言,也继承了面向对象的诸多好处, 如代码扩展、代码复用等。
图1.8 Applet显示“Hello World!”
习题
1. 简述Java的特点。 2. 简述Java的分类情况。 3. 进行Java环境的安装和配置。 4. 编写应用程序,屏幕上输出“欢迎来到Java世界!”。 5. 编写Applet,输出“欢迎来到Java世界!”。
第2章 Java基本语法
1.4 JDK包的下载与安装
Java Develop Kit简称为JDK,是Sun公司免费发行的软件包, 可以从Sun网站免费下载,也可以从其它国内 地址下载。JDK版本从1.02开始,目前版本发展到1.4,其中高 级版本对低级版本实现向下兼容。运用这个软件包,就可以对 Java源程序进行编译和运行。本书中下载使用的JDK包为j2sdk1_4_0_012-windows-i586.exe。 下载后双击图标,即可进行安装, 默认的安装目录为C:\j2sdk1.4.0_01。本书作者将安装目录改为 D:\j2sdk1.4.0_01。
图1.4 编辑lib变量
选中path变量,单击“编辑”按钮,弹出标题为“编辑用 户变量”的对话框,如图1.5所示。在变量值一栏的最后添加 “; D:\j2sdk1.4.0_01\bin”,“;”表示与前面的各项隔开,后面的 路径是JDK包的安装路径下的bin目录。图1.5为作者修改path变 量的情况,注意你的安装路径可能与作者的有所不同,同样要 以你的安装路径为基准进行修改。
尚学堂,马士兵
+ 您现在的位置:视频下载资料下载:如果您无法下载,请致电010 - 58052712,我们将制作光盘邮寄给您。
请使用电驴软件按顺序下载阅读(电驴使用方法点击这里)邮寄给您的光盘,收费100元(收费流程点击这里)如下:∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_项目源码.rar∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Hibernate初印象∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_HelloWorld∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Annotation版本的HelloWorld∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Annotation版本的HelloWorld_总结∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_设定自动提示∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Hibernate模拟实现∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_阶段总结∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_常见OR框架简介∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_总结与提纲∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_MySQL客户端介绍∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_hbm2ddl∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_先建表还是先建类∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_搭建Log4J日志环境∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_搭建Junit日志环境∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_showsql_formatsql∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_hibernate基础配置∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Annotation字段映射位置∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_常见问题解答∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_JUnit_BeforeClass不报异常的bug处理∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_ID生成策略_XML_配置∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_ID生成策略_XML_配置_Annotation配置∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_ID生成策略_Annotation配置_IDENTITY_S...∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_ID生成策略_Annotation配置_Table_Gene...∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_ID生成策略_联合主键_XML∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_ID生成策略_联合主键_Annotation ∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_Configuration_SessionFactory...∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_JTA简介∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_对象三种状态∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_Delete∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_Get_Load∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_Get_Load_2∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_Update∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_saveOrUpdate_Clear_Flush∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_CoreAPI_SchemaExport_and_总结∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_一对一单向外键关联_annotation ∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_一对一单向外键关联_xml∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_一对一双向外键关联∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_一对一单双向主键关联_不重要∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_联合主键关联∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_阶段总结∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_组件映射∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_多对一单向关联∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_一对多单向关联∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2__一对多_多对一_双向关联∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2__多对多单向关联∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_多对多双向关联∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_关联关系的CRUD_Cascade_Fetch_1∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_关联关系的CRUD_Cascade_Fetch_2∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_关联关系的CRUD_Cascade_Fetch_3∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_关联关系的CRUD_Cascade_Fetch_4∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_关联关系的CRUD_Cascade_Fetch_5∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_关联关系的CRUD_Cascade_Fetch_6∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_集合映射∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_作业∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_继承映射∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_作业解答_树状映射∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_作业解答_Student_Course_Score_1∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_作业解答_Student_Course_Score_2∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Hibernate查询_HQL_EJBQL_QBC_QBE_1∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Hibernate查询_HQL_EJBQL_QBC_QBE_2∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Hibernate查询_HQL_EJBQL_QBC_QBE_3∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Hibernate查询_HQL_EJBQL_QBC_QBE_4∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_Hibernate查询_HQL_EJBQL_QBC_QBE_5∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_1.N问题∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_list_iterate∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_一级缓存_二级缓存_查询缓存∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_一级缓存_二级缓存_查询缓存∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_事务隔离机制_悲观锁_乐观锁_1∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_事务隔离机制_悲观锁_乐观锁_2∙点击下载·尚学堂马士兵_Java视频教程_Hibernate3.3.2_总结∙点击下载·尚学堂马士兵_Struts2_Struts2简介及学习方法简介∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_1∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_2∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_3∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_4∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_5∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_6∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_7_1∙点击下载·尚学堂马士兵_Struts2_Struts2_HelloWorld_7_2∙点击下载·尚学堂马士兵_Struts2_Struts2_Namespace_命名空间∙点击下载·尚学堂马士兵_Struts2_Struts2_Action∙点击下载·尚学堂马士兵_Struts2_Struts2_Path_路径问题∙点击下载·尚学堂马士兵_Struts2_Struts2_ActionMethod_DMI_动态方法调用∙点击下载·尚学堂马士兵_Struts2_Struts2_ActionWildcard_通配符配置∙点击下载·尚学堂马士兵_Struts2_Struts2_用Action的属性接收参数∙点击下载·尚学堂马士兵_Struts2_Struts2_用DomainModel接收参数∙点击下载·尚学堂马士兵_Struts2_Struts2_用ModelDriven接收参数∙点击下载·尚学堂马士兵_Struts2_Struts2_2.1.6版本的中文问题∙点击下载·尚学堂马士兵_Struts2_简单数据验证_1∙点击下载·尚学堂马士兵_Struts2_简单数据验证_2∙点击下载·尚学堂马士兵_Struts2_访问Web元素_1∙点击下载·尚学堂马士兵_Struts2_访问Web元素_2∙点击下载·尚学堂马士兵_Struts2_模块包含∙点击下载·尚学堂马士兵_Struts2_默认Action∙点击下载·尚学堂马士兵_Struts2_Action总结∙点击下载·尚学堂马士兵_Struts2_常见问题∙点击下载·尚学堂马士兵_Struts2_结果类型_result_type_1∙点击下载·_尚学堂马士兵_Struts2_结果类型_result_type_2∙点击下载·尚学堂马士兵_Struts2_result_type_常见问题∙点击下载·尚学堂马士兵_Struts2_Global_Results_全局结果集∙点击下载·尚学堂马士兵_Struts2_动态结果集_dynamic_result∙点击下载·尚学堂马士兵_Struts2_带参数的结果集∙点击下载·尚学堂马士兵_Struts2_结果集总结∙点击下载·尚学堂马士兵_Struts2_作业∙点击下载·尚学堂马士兵_Struts2_总结与OGNL开始∙点击下载·尚学堂马士兵_Struts2_OGNL_1∙点击下载·尚学堂马士兵_Struts2_OGNL_2∙点击下载·尚学堂马士兵_Struts2_OGNL_3∙点击下载·尚学堂马士兵_Struts2_OGNL_4∙点击下载·尚学堂马士兵_Struts2_OGNL_5∙点击下载·尚学堂马士兵_Struts2_OGNL_6∙点击下载·尚学堂马士兵_Struts2_OGNL_7∙点击下载·尚学堂马士兵_Struts2_OGNL_8∙点击下载·尚学堂马士兵_Struts2_Struts标签_1_property∙点击下载·尚学堂马士兵_Struts2_Struts标签_2_set∙点击下载·尚学堂马士兵_Struts2_Struts标签_3_bean_1∙点击下载·尚学堂马士兵_Struts2_Struts标签_4_bean_2∙点击下载·尚学堂马士兵_Struts2_Struts标签_5_include∙点击下载·尚学堂马士兵_Struts2_Struts标签_6_fielderror∙点击下载·尚学堂马士兵_Struts2_Struts标签_7_if∙点击下载·尚学堂马士兵_Struts2_Struts标签_8_iterator∙点击下载·尚学堂马士兵_Struts2_Struts标签_9_ui∙点击下载·尚学堂马士兵_Struts2_Struts标签_总结∙点击下载·尚学堂马士兵_Struts2_BBS2009准备_1∙点击下载·尚学堂马士兵_Struts2_BBS2009准备_2∙点击下载·尚学堂马士兵_Struts2_BBS2009_初步了解ExtJS∙点击下载·尚学堂马士兵_Struts2_BBS2009_建立项目框架_1∙点击下载·尚学堂马士兵_Struts2_BBS2009_建立项目框架_2∙点击下载·尚学堂马士兵_Struts2_BBS2009_建立数据库∙点击下载·尚学堂马士兵_Struts2_BBS2009_建立Model与Service层_1∙点击下载·尚学堂马士兵_Struts2_BBS2009_作业∙点击下载·尚学堂马士兵_Struts2_BBS2009_建立Model与Service层_2∙点击下载·尚学堂马士兵_Struts2_BBS2009_实现页面与Action_1∙点击下载·尚学堂马士兵_Struts2_BBS2009_实现页面与Action_2∙点击下载·尚学堂马士兵_Struts2_BBS2009_总结Category_增删改查∙点击下载·尚学堂马士兵_Struts2_声明式异常处理_实现∙点击下载·尚学堂马士兵_Struts2_声明式异常处理_原理∙点击下载·尚学堂马士兵_Struts2_DefaultActionRef_Bug∙点击下载·尚学堂马士兵_Struts2_I18N原理∙点击下载·尚学堂马士兵_Struts2_I18N_1_Action级别I18N问题∙点击下载·尚学堂马士兵_struts2_I18N_2_package与Application级别I18N问题∙点击下载·尚学堂马士兵_struts2_I18N_3_处理资源文件中的参数∙点击下载·尚学堂马士兵_Struts2_I18N_4_动态语言切换∙点击下载·尚学堂马士兵_Struts2_拦截器_准备∙点击下载·尚学堂马士兵_Struts2_源码解析∙点击下载·尚学堂马士兵_Struts2_拦截器原理模拟∙点击下载·尚学堂马士兵_Struts2_自定义拦截器∙点击下载·尚学堂马士兵_Struts2_使用token拦截器控制重复提交∙点击下载·尚学堂马士兵_Struts2_认识默认的拦截器∙点击下载·尚学堂马士兵_Struts2_类型转换_1∙点击下载·尚学堂马士兵_Struts2_类型转换_2∙点击下载·尚学堂马士兵_Struts2_类型转换_3∙点击下载·尚学堂马士兵_Struts2_总结∙点击下载·尚学堂马士兵_Struts2_源码与文档∙点击下载·尚学堂科技_马士兵_JDBC_MySQL_BBS项目课堂实录视频教程∙点击下载·尚学堂科技_马士兵_BBS项目补充_MySQL简明视频教程∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第01章_JAVA简介_源代码_及重要说明∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第02章_基础语法∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第03章_面向对象∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第04章_异常处理∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第05章_数组∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第06章_常用类∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第07章_容器∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第08章_IO∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第09章_线程∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第10章_网络∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第11章_GUI∙点击下载·尚学堂科技_马士兵_JAVA视频教程_JDK5.0_下载-安装-配置∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第02章_递归补充∙点击下载·尚学堂科技_马士兵_坦克大战视频教程_java_eclipse∙点击下载·尚学堂科技_马士兵_在线聊天系统雏形视频教程_java_eclipse∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_专题_日期处理∙点击下载·尚学堂科技_马士兵_JAVA视频教程_J2SE_专题_正则表达式∙点击下载·尚学堂科技_马士兵_坦克大战图片版∙点击下载·尚学堂科技_马士兵_JAVA_坦克大战网络版视频教程∙点击下载·尚学堂科技_马士兵_JAVA_系列视频教程_BBS_2007∙点击下载·尚学堂科技_马士兵_JAVA_网上商城项目视频讲解∙点击下载·尚学堂科技_马士兵_轻松愉快LINUX视频教程∙点击下载·尚学堂科技_张志宇_SERVLET_JSP_视频教程∙点击下载·尚学堂_JUnit_00源码与文档∙点击下载·尚学堂_JUnit_01_junit_introduction∙点击下载·尚学堂_JUnit_02_assert_string∙点击下载·尚学堂_JUnit_03_hamcrest∙点击下载·尚学堂_JUnit_04_annotation∙点击下载·尚学堂_JUnit_05_annotation2∙点击下载·尚学堂_JUnit_06_runmultitests∙点击下载·尚学堂_JUnit_07_conclusion∙点击下载·尚学堂_JUnit_08_faq∙点击下载·尚学堂科技_马士兵_设计模式_01_Observer∙点击下载·尚学堂马士兵_设计模式热身_Thinking_In_OO_00_源码与文档∙点击下载·尚学堂马士兵_设计模式热身_Thinking_In_OO_01∙点击下载·尚学堂马士兵_设计模式热身_Thinking_In_OO_02∙点击下载·尚学堂马士兵_设计模式热身_Thinking_In_OO_03∙点击下载·尚学堂马士兵_设计模式热身_Thinking_In_OO_04∙点击下载·尚学堂马士兵_设计模式之_Iterator_00_源码与文档∙点击下载·尚学堂马士兵_设计模式之_Iterator_01∙点击下载·尚学堂马士兵_设计模式之_Iterator_02∙点击下载·尚学堂马士兵_设计模式之_Iterator_03.avi∙点击下载·尚学堂马士兵_设计模式之_Iterator_04.avi∙点击下载·尚学堂马士兵_设计模式之_Iterator_05∙点击下载·尚学堂马士兵_设计模式之_Iterator_06∙点击下载·尚学堂马士兵_设计模式之_Strategy_00_源码与文档∙点击下载·尚学堂马士兵_设计模式之_Strategy_01∙点击下载·尚学堂马士兵_设计模式之_Strategy_02∙点击下载·尚学堂马士兵_设计模式之_Strategy_03∙点击下载·尚学堂马士兵_设计模式之_Strategy_04∙点击下载·尚学堂马士兵_设计模式之_Strategy_05∙点击下载·尚学堂马士兵_设计模式之_Strategy_06.avi 详情∙点击下载·尚学堂马士兵_设计模式之_Strategy_07.avi 详情∙点击下载·尚学堂马士兵_设计模式之_Strategy_08∙点击下载·尚学堂马士兵_设计模式之_Strategy_09∙点击下载·尚学堂马士兵_设计模式之_动态代理_00_源码与文档∙点击下载·尚学堂马士兵_设计模式之_动态代理_01∙点击下载·尚学堂马士兵_设计模式之_动态代理_02∙点击下载·尚学堂马士兵_设计模式之_动态代理_03∙点击下载·尚学堂马士兵_设计模式之_动态代理_04∙点击下载·尚学堂马士兵_设计模式之_动态代理_05∙点击下载·尚学堂马士兵_设计模式之_动态代理_06∙点击下载·尚学堂马士兵_设计模式之_动态代理_07∙点击下载·尚学堂马士兵_设计模式之_动态代理_08∙点击下载·尚学堂马士兵_设计模式之_动态代理_09∙点击下载·尚学堂马士兵_设计模式之_工厂系列_00_源码与文档∙点击下载·尚学堂马士兵_设计模式之_工厂系列_01∙点击下载·尚学堂马士兵_设计模式之_工厂系列_02∙点击下载·尚学堂马士兵_设计模式之_工厂系列_03∙点击下载·尚学堂马士兵_设计模式之_工厂系列_04∙点击下载·尚学堂马士兵_设计模式之_工厂系列_05∙点击下载·尚学堂马士兵_设计模式_责任链_00_源码与文档_ChainOfResponsibility_Filter_Inter...∙点击下载·尚学堂马士兵_设计模式_责任链_01∙点击下载·尚学堂马士兵_设计模式_责任链_02∙点击下载·尚学堂马士兵_设计模式_责任链_03∙点击下载·尚学堂马士兵_设计模式_责任链_04∙点击下载·尚学堂马士兵_设计模式_责任链_05∙点击下载·尚学堂马士兵_设计模式之_追美眉的技术_源码与文档∙点击下载·尚学堂马士兵_设计模式之_追美眉的技术_8∙点击下载·尚学堂马士兵_设计模式之_追美眉的技术_7∙点击下载·尚学堂马士兵_设计模式之_追美眉的技术_6∙点击下载·尚学堂马士兵_设计模式之_追美眉的技术_5∙点击下载·尚学堂马士兵_设计模式之_追美眉的技术_4.avi∙点击下载·尚学堂马士兵_设计模式之_追美眉的技术∙点击下载·马士兵_设计模式之_追美眉的技术_2∙点击下载·马士兵_设计模式之_追美眉的技术_1∙点击下载·网络课堂_JavaSE补充_Path_ClassPath_00_源码与文档∙点击下载·网络课堂_JavaSE补充_Path_ClassPath_01∙点击下载·网络课堂_JavaSE补充_Path_ClassPath_02∙点击下载·马士兵_扯淡系列_00_当工作遇上找工作∙点击下载·马士兵_扯淡系列_01_找工作的过程_资料与文档∙点击下载·马士兵_扯淡系列_01_找工作的过程_6∙点击下载·马士兵_扯淡系列_01_找工作的过程_5∙点击下载·马士兵_扯淡系列_01_找工作的过程_4∙点击下载·马士兵_扯淡系列_01_找工作的过程_3∙点击下载·马士兵_扯淡系列_01_找工作的过程_2∙点击下载·马士兵_扯淡系列_01_找工作的过程_1∙点击下载·马士兵_扯淡系列_02_面试题的道与术_1∙点击下载·马士兵_自学能力训练课程(初级)_01_Log4J∙点击下载·马士兵_自学能力训练课程(初级)_02_junit.avi∙点击下载·马士兵_Flex_0100_ActionScript.rar∙点击下载·马士兵视频教程_XML_AJAX_DOM4J_JavaDB_MetaData.rar。
马士兵 JAVA视频教程-第04章__Java_异常处理
尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第04章_异常处理听课笔记09.11.27-by LoveXForce第四章 Java 异常处理2009-11-27 19:16:10 - 2009-12-1 五个关键词:try catch finally throw throws一、异常的概念◆Java异常是Java提供的用于处理程序中错误的一种机制。
◆所谓错误是指在程序运行的过程中发生一些异常事件(如:除0溢出,数组下标越界,所要读取的文件不存在)。
◆设计良好的程勋应该在异常发生时提供处理这些错位的方法,使得程序不会因为异常的发生而阻断或产生不可预见的结果。
◆Java程勋的执行过程中如出现异常事件,可以生成一个异常类,该异常类封装了异常事件的信息并将被提交给Java运行时的系统,这个过程称为抛出(throw)异常。
◆当Java运行时系统接收到异常对象时,会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕获(catch)异常。
例子:import java.io.*;public class TestEx {public static void main(String[] args) {try {System.out.println(2 / 0);} catch (ArithmeticException ae) { //自己定义的异常类对象名,系统将异常对象传递给ae里面,ae 相当于形参System.out.println("出错了");ae.printStackTrace();//常用的办法:把错误的堆栈信息打印出来!系统默认也是打印误的堆栈信息。
}}}二、 异常的分类J2SDK 中定义了很多异常类,这些类对应了各种各样可能出现的异常事件◆ Error◆ 示地声明或者捕获。
◆ Runtime Exception :一类特殊的异常,如被0除。
数组下标超出范围等,其产生比较频繁,处理麻烦,如果显示地声明或捕获将对程勋可读性和运行效率影响很大。
尚学堂 马士兵 Java视频学习顺序
第一阶段:J2SE基础数据结构正则表达式反射机制第零部分:60分钟零基础体验项目开发第一部分:J2se学习视频内容包括:尚学堂科技_马士兵_JA V A视频教程_JDK5.0_下载-安装-配置尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第01章_JA V A简介_源代码_及重要说明尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第02章_递归补充尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第02章_基础语法尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第03章_面向对象尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第04章_异常处理尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第05章_数组尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第06章_常用类尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第07章_容器尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第08章_IO尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第09章_线程尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第10章_网络尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_第11章_GUI尚学堂科技_马士兵_JA V A视频教程_J2SE_5.0_专题_日期处理尚学堂科技_马士兵_JA V A视频教程_J2SE_专题_正则表达式尚学堂科技_马士兵_JA V A视频教程_J2SE_专题_递归尚学堂科技_马士兵_JA V A视频教程_J2SE_专题_CLASSPA TH第二部分:j2se练习项目视频内容包括:尚学堂科技_马士兵_在线聊天系统雏形视频教程_java_eclipse尚学堂科技_马士兵_坦克大战视频教程_java_eclipse尚学堂科技_马士兵_坦克大战图片版尚学堂科技_马士兵_JA V A_坦克大战网络版视频教程尚学堂科技_马士兵_snake_贪吃蛇内部视频补充知识:设计模式(一部分) ,Java Annotation,Java 反射,专题_日期处理,专题_正则表达式,另外建议补充数据结构的知识。
马士兵ocral自学笔记
toad(青蛙) plsqldevelope 开发oracle客户端sys/密码as sysdba show user;alter user scott(用户名) account unlock; 用户解锁查询语句DML数据操作语言DDL数据定义语句desc emp 描述emp表(雇员表) 表头和类型conn scott/tiger 连接登陆/ 在Oracle中,用来终止SQL语句。
更准确的说,是表示了“运行现在位于缓冲区的SQL代码”。
正斜杠也用作分隔项。
表结构oracle中用ed命令打开编辑器时,默认的是notepad,若我想用其他编辑器编写,该如何设置呢?在$ORACLE_HOME/dbs/ 下查找login.sql文件,如果没有就创建一个空文件,然后在文件中加入这样一句话:define _editor=‘C:\Program Files\EditPlus 2\editplus.exe‘"="后面是你想要编辑器的路径,你可以根据情况修改。
客服端也可以,也是改那个login.sql文件;V archar2 支持国际化不用varchar了可变字符串Number(7,2) 7位数字2位小数Slect * from salgrade;Select 2*3 from dual; 就一个结果(因为此表就一条数据),否则有多少条数据就显示多少个结果Select sysdate from dual;Select ename ,sal*12 “anuual sal” from emp; 如果别名有空格或汉子应该加引号””,引号是保持住格式;否子会变为大写或错误没有津贴会为null值0!=null任何含有null 的数学表达式结果为nullSelect ename||sal from emp; 字符串连接相当于java中的+select ename||'1234asd' from emp; 字符串连接单引号select ename||'1234''asd' from emp; 两个单引号代表一个单引号select distinct deptno from emp; 去掉重复值select distinct deptno,job from emp; 去掉组合重复的select * from emp where deptno =10; 过滤select * from emp where sal >1500;SQL> select ename,sal,deptno from emp where deptno <>10; 不等于<>select ename,sal,deptno from emp where ename>'CBA'; 比较字符串(比较其ascii值)select ename,sal,deptno from emp where sal between 800 and 1500; 包含800 1500select ename,sal,deptno from emp where sal >=800 and sal <=1500;select ename,sal,deptno from emp where comm is null; 选空值select ename,sal,deptno from emp where comm is not null;select ename,sal,deptno from emp where sal in (800,1500,2000);select ename,sal,deptno from emp where ename in ('SMITH','KING','ABC');日期处理select ename,sal,hiredate from emp where hiredate > '20-2月-81';select ename,sal,hiredate from emp where deptno = 10 or sal >1000;select ename,sal,hiredate from emp where sal not in (800,1500);select ename from emp where ename like '%ALL%';select ename from emp where ename like '_A%';select ename from emp where ename like '%\%'; \ 转义字符select ename from emp where ename like '%$%'escape '$'; 自己定义转义字符为$select * from dept order by deptno desc ; 降序排列默认升序ascselect ename,sal,deptno from emp order by deptno asc,ename desc;先deptno升序再名字倒叙排列select ename,sal*12 annual_sal from emp where ename not like'_A%' and sal>800 order by sal desc;常用的SQL 函数单行函数多行函数select lower(ename) from emp; 转换成小写select ename from emp where lower(ename) like '_a%'; 查找含有a 包括大小写select upper(ename) from emp; 转大写select substr(ename,1,3) from emp;从第一个截共截3个select chr(65) from dual; 把ASC 码转换字符select ASCII('A') from dual; ASC 转select round(23.652) from dual; 四舍五入select round(23.652,2) from dual; 四舍五入两位select round(23.652,-1) from dual; 四舍五入到十位把数字或日期转换格式select to_char(sal,'$99,999.9999') from emp;select to_char(sal,'l99,999.9999') from emp; 本地货币符号select to_char(sal,'l00000.0000') from emp; 0代表一位数字,该位置没有数字强制显示日期转换select to_char (hiredate,'YYYY-MM-DD HH:MI:SS') FROM emp;select to_char (sysdate,'YYYY-MM-DD HH24:MI:SS') FROM dual;select ename,hiredate from emp where hiredate >to_date('1981-2-20 12:34:56' ,'YYYY-MM-DD HH24:MI:SS');select sal from emp where sal > to_number('$1,250.00','$9,999.99');select ename,sal*12 +nvl(comm,0) from emp; 如果comm值为null 用0替换单行函数有多少条记录就有多少条输出输入以一条记录为单位,最后结果为一条组函数,多行函数给我很多条记录只产生一条输出SUM / COUNT / AVG / MAX /MINselect max(sal),min(sal),avg(sal) from emp;select max(sal),min(sal),round(avg(sal),2) from emp;select max(sal),min(sal),to_char(avg(sal),'9999.99') from emp;select sum(sal) from emp;select count(*) from emp; 求一共多少记录select count(*) from emp where deptno=10; 一共有多少人(不为空值的字段)select count(distinct deptno) from emp;group byselect avg(sal) from emp group by deptno;select deptno,job, avg(sal) from emp group by deptno,job; 根据两个的组合分组Ename 有可能很多个max 只能有一个输出匹配不起来出现在select 类表里的字段没有出现在主函数里必须穿现在group by 里Where 对单条语句进行过滤Having对分组进行限制select avg(sal),deptno from emp group by deptno having avg(sal)>2000;执行顺序就是写的顺序总结select avg (sal) from emp where sal >1200 group by deptnohaving avg(sal) >1500 order by avg(sal) desc;子查询可以在where 和fromselect ename from emp where sal=(select max(sal) from emp);哪些人工资位于平均工资之上select ename from emp where sal > (select avg(sal) from emp);按部门分组每个部门挣钱最多的人名字部门编号select ename,deptno,sal from emp where sal in (select max (sal)from emp group by deptno ) ; 错误的写法(如果20 也有3000)select ename,sal from emp join (select max(sal) max_sal,deptno from emp group by deptno) t on (emp.sal = t.max_sal and emp.deptno = t.deptno);每个部门平均薪水的薪水等级select deptno,avg(grade) from(select deptno,ename,grade from emp join salgrade s on(emp.sal between s.losal and s.hisal))t group by deptno;查找雇员的经理人是谁自连接为表起2个名当成连个表用select e1.ename,e2.ename from emp e1,emp e2 where e1.mgr =e2.empno;连接条件过滤条件分开SQL 1999 where 只写数据过滤条件select dname,ename from emp cross join dept 交叉连接笛卡尔等值连接select ename,dname from emp join dept on(emp.deptno=dept.deptno);select ename,dname from emp,dept where emp.deptno = dept.deptno;(以前版本)select ename,dname from emp join dept using(deptno);查找emp和dept表中deptno相同的部分。
马士兵MCA高级互联网架构师学习笔记
马⼠兵MCA⾼级互联⽹架构师学习笔记```javapackage com.mashibing;public class MyCalculator implements Calculator {public int add(int i, int j) {int result = i + j;return result;}public int sub(int i, int j) {int result = i - j;return result;}public int mult(int i, int j) {int result = i * j;return result;}public int div(int i, int j) {int result = i / j;return result;}}```CalculatorProxy.java```javapackage com.mashibing;import ng.reflect.InvocationHandler;import ng.reflect.Method;import ng.reflect.Proxy;public class CalculatorProxy {public static Calculator getProxy(final Calculator calculator){ClassLoader loader = calculator.getClass().getClassLoader();Class<?>[] interfaces = calculator.getClass().getInterfaces();InvocationHandler h = new InvocationHandler() {public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {Object result = null;try {result = method.invoke(calculator, args);} catch (Exception e) {} finally {}return result;}};Object proxy = Proxy.newProxyInstance(loader, interfaces, h);return (Calculator) proxy;}}``````javapackage com.mashibing;public class Test {public static void main(String[] args) {Calculator proxy = CalculatorProxy.getProxy(new MyCalculator()); proxy.add(1,1);System.out.println(proxy.getClass());}}```**动态代理的源码:**Proxy.java的newProxyInstance⽅法:```javapublic static Object newProxyInstance(ClassLoader loader,Class<?>[] interfaces,InvocationHandler h)throws IllegalArgumentException{//判断InvocationHandler是否为空,若为空,抛出空指针异常Objects.requireNonNull(h);final Class<?>[] intfs = interfaces.clone();final SecurityManager sm = System.getSecurityManager();if (sm != null) {checkProxyAccess(Reflection.getCallerClass(), loader, intfs);}/** Look up or generate the designated proxy class.* ⽣成接⼝的代理类的字节码⽂件*/Class<?> cl = getProxyClass0(loader, intfs);* Invoke its constructor with the designated invocation handler.* 使⽤⾃定义的InvocationHandler作为参数,调⽤构造函数获取代理类对象实例*/try {if (sm != null) {checkNewProxyPermission(Reflection.getCallerClass(), cl);}//获取代理对象的构造⽅法final Constructor<?> cons = cl.getConstructor(constructorParams);final InvocationHandler ih = h;if (!Modifier.isPublic(cl.getModifiers())) {AccessController.doPrivileged(new PrivilegedAction<Void>() {public Void run() {cons.setAccessible(true);return null;}});}//⽣成代理类的实例并把InvocationHandlerImpl的实例传给构造⽅法return cons.newInstance(new Object[]{h});} catch (IllegalAccessException|InstantiationException e) {throw new InternalError(e.toString(), e);} catch (InvocationTargetException e) {Throwable t = e.getCause();if (t instanceof RuntimeException) {throw (RuntimeException) t;} else {throw new InternalError(t.toString(), t);}} catch (NoSuchMethodException e) {throw new InternalError(e.toString(), e);}}```getProxyClass0(ClassLoader loader,Class<?>... interfaces)```javaprivate static Class<?> getProxyClass0(ClassLoader loader,Class<?>... interfaces) {//限定代理的接⼝不能超过65535个if (interfaces.length > 65535) {throw new IllegalArgumentException("interface limit exceeded");}// If the proxy class defined by the given loader implementing// the given interfaces exists, this will simply return the cached copy;// otherwise, it will create the proxy class via the ProxyClassFactory// 如果缓存中已经存在相应接⼝的代理类,直接返回,否则,使⽤ProxyClassFactory创建代理类 return proxyClassCache.get(loader, interfaces);}* a cache of proxy classes*/private static final WeakCache<ClassLoader, Class<?>[], Class<?>>proxyClassCache = new WeakCache<>(new KeyFactory(), new ProxyClassFactory()); ```。
马士兵Spring课堂笔记(超级详细版)
课程内容---…详细包括整合struts hibernate------------------------------------1.面向接口(抽象)编程的概念与好处2.IOC/DI的概念与好处a)inversion of controlb)dependency injection3.AOP的概念与好处4.Spring简介5.Spring应用IOC/DI(重要)a)xmlb)annotation6.Spring应用AOP(重要)a)xmlb)annotation7.Struts2.1.6 + Spring2.5.6 + Hibernate3.3.2整合(重要)a)opensessionInviewfilter(记住,解决什么问题,怎么解决)8.Spring JDBC面向接口编程…(面向抽象编程)1.场景:用户添加2.Spring_0100_AbstractOrientedProgramminga)不是AOP:Aspect Oriented Programming3.好处:灵活什么是IOC(DI),,,有什么好处1.把自己new的东西改为由容器提供a)初始化具体值b)装配<?xml version="1.0"?>-<beans><bean class="erDAOImpl" id="u"/>(class 是个类。
Id就等于构造了一个对象)<bean class="erService" id="userService"><property bean="u" name="userDAO"/> </bean>(把u这个对象注入到UserService这个类的一个userDAO的一个属性里)-</beans>2.好处:灵活装配Spring简介包括整合struts hibernate------------------------------------1.项目名称:Spring_0200_IOC_Introduction2.环境搭建a)只用IOCi.spring.jar , jarkata-commons/commons-loggin.jar3.IOC容器a)实例化具体beanb)动态装配4.AOP支持a)安全检查b)管理transactionSpring IOC配置与应用1.FAQ:不给提示:a)window – preferences – myeclipse – xml – xml catalogb)User Specified Entries – addi.Location: D:\share\0900_Spring\soft\spring-framework-2.5.6\dist\resources\spring-beans-2.5.xsdii.URI:file:///D:/share/0900_Spring/soft/spring-framework-2.5.6/dist/resources/spring-beans-2.5.xsd iii.Key Type: Schema Locationiv.Key: /schema/beans/spring-beans-2.5.xsd2.注入类型a)Spring_0300_IOC_Injection_Typeb)setter(重要)c)构造方法(可以忘记)d)接口注入(可以忘记)3.id vs. Name(可以把Id换成name,没什么区别!)a)Spring_0400_IOC_Id_Nameb)name可以用特殊字符4.简单属性的注入a)Spring_0500_IOC_SimplePropertyb)<property name=… value=….>在配置文件里直接赋值!(在此简单属性为int和string,会自动转换)5.<bean 中的scope属性a)Spring_0600_IOC_Bean_Scopeb)singleton 单例(无论去多少次都是同一个bean)c)proptotype 每次创建新的对象6.集合注入a)Spring_0700_IOC_Collectionsb)很少用,不重要!参考程序7.自动装配a)Spring_0800_IOC_AutoWireb)byNamec)byTyped)如果所有的bean都用同一种,可以使用beans的属性:default-autowire-<bean class="erDAOImpl" name="userDAO"><property name="daoId" value="1"/> </bean><bean class="erDAOImpl" name="userDAO2"><property name="daoId" value="2"/> </bean><bean class="erService"autowire="byType" scope="prototype" id="userService"></bean> </beans>(这里会报错,因为有两个userDAO和UserDAO2都是int类型!)(如果说byname则会显示第一个的内容“1”!,因为UserService类里面的userDAO属性与第一个的名字一样!)8.生命周期a)Spring_0900_IOC_Life_Cycleb)lazy-init (不重要)c)init-method与destroy-methd 不要和prototype一起用(了解)<bean class="erDAOImpl" id="u"></bean><bean class="erService" id="userService" scope="prototype"destroy-method="destroy" init-method="init"></bean></beans>9.Annotation第一步:a)修改xml文件,参考文档<context:annotation-config />b)默认按类型by typec)如果想用byName,使用@Qulifierd)写在private field(第三种注入形式)(不建议,破坏封装)e)如果写在set上,@qualifier需要写在参数上f)10.@Resource(重要)a)加入:j2ee/common-annotations.jarb)默认按名称,名称找不到,按类型c)可以指定特定名称d)推荐使用e)不足:如果没有源码,就无法运用annotation,只能使用xml11.@Component@Service @Controller @Repository(四个一样的功能!!)a)初始化的名字默认为类名首字母小写b)可以指定初始化bean的名字首先先加载ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); 即读beans.xml里面的内容,然后通过找从com.bjsxt开始“scan”含@component的类,找到之后就初始化对象,结果在其一个属相的set方法上找到一个源为“u”的一个bean,于是就加载那个bean!12.@Scope13.@PostConstruct = init-method;(在构造对象后执行此方法)@PreDestroy = destroy-method;(在容器销毁前执行此方法)什么是AOP1.面向切面编程Aspect-Oriented-Programminga)是对面向对象的思维方式的有力补充2.Spring_1400_AOP_Introduction3.好处:可以动态的添加和删除在切面上的逻辑而不影响原来的执行代码a)Filterb)Struts2的interceptor4.概念:a)JoinPoint 释意:切面与原方法交接点即切入点b)PointCut 释意:切入点集合是com.xyz.someapp.service.下面的任何类,任何方法,任何返回值的一个切入点的集合。
马士兵JAVA基础知识整理
东北石油大学计算机与信息技术学院李勇勇Java语言基础知识整理一.计算机语言的发展史及历史地位第一代语言打孔机——纯机器语言 1.第二代语言 2.汇编第三代语言 3.(1)C、Pascal、Fortran面向过程的语言(2)C++面向过程/面向对象(3)java跨平台的纯面向对象的语言(4).NET跨平台语言4.java语言特点(1)一种面向对象的语言(2)一种平台无关的语言,提供程序运行的解释环境(3)一种健壮的语言,吸收了c/c++语言的优点,但去掉了影响程序健壮性的部分(如:指针、内存的申请与释放等)。
二.Java程序运行机制及运行过程1.java两种核心机制(1)Java虚拟机(Java Virtual Machine)(2)垃圾收集机制(Garbge Collection)2.java运行过程源程序(*.java文件)—>java编译器—>字节码(*.class文件)—>类装载器—>字节码校验器—>解释器—>操作系统平台4.java虚拟机(1)java虚拟机可以理解为是一个以字节码为机器指令的CPU。
(2)对于不同的运行平台有不同的虚拟机。
(3)Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”。
5.垃圾收集机制(1)不再使用的内存空间应回收—垃圾收集。
(2)在c/c++语言中,由程序员负责回收无用的内存空间。
(3)Java语言消除了由程序员负责回收无用的内存空间的责任,它提供了一种系统级线程跟踪存储空间的分配情况,检查并释放那些可以被释放的存储器空间。
(4)垃圾收集在java程序运行过程中自动进行,程序员无法精确进行控制和干预。
三.Java Application初步1.java源文件以“java”为扩展名。
源文件的基本组成部分是类(class)。
2一个源文件最多只有一个public类,其他类的个数不限,如果源文件包括一个public类,它必须按该类名命名。
JAVA自学之路
熟练掌握 Java/JSP /servlet /EJB/JavaBean ,熟练掌握基本 和常用的数据结构,可承担基于 可承担基于Java的B/S项目开发; 有基于 项目开发; 和常用的数据结构 可承担基于 的 项目开发 Struts2相关的项目经验,熟悉 相关的项目经验, 相关的项目经验 熟悉MVC; 熟悉 ; 熟悉Weblogic、 、 Tomcat、Apache等; 熟悉 、 等 熟悉Eclipse,能够熟练的应用集成开 , 发环境进行开发与调... 发环境进行开发与调
JAVA自学之路 JAVA自学之路
自学之路在何方? 首先要学JavaSE 首先要学JavaSE 无论如何, 无论如何,请坚持不懈的动手实 验! 抓大放小
自学之路在何方?
通过招聘网站的观察方法
以及csdn的招聘频道等 以及csdn的招聘频道等
掌握一种编程工具,比如说 NetBeans,Eclipse。 Net议大家 JavaSE的学习同步,建议大家 研究一下数据结构与算法。 向着J2EE的方向前进 向着J2EE的方向前进 在JavaSE完成之后,可以试着完 JavaSE完成之后,可以试着完 成一些小项目,同时关注一下设 计模式的内容,不必强求自己能 够完全掌握各种细节,往前走吧。
(价值3000元)Java自学之路—马士兵
Java自学之路-马士兵老师 2011年09月19日尚学堂java培训作者:马士兵老师JAVA自学之路一:学会选择为了就业,不少同学参加各种各样的培训。
决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机、嵌入式、游戏、3G、测试等。
那么究竟应该选择什么方向呢?我的意见是,不要太过相信各种培训机构或是抢手文章的说法(包括我),当你要走向社会的时候,就不要再把自己当成学生,不要把自己的将来交给别人,学会运用自己的眼睛去观察,去了解这个世界吧。
每个培训机构都会宣传自己的好处,并不能说明大的趋势。
一些新闻文章很有可能是枪手写的,不必太过相信。
国外背景的教师和课程,未必适合你。
那么怎么才能确定自己将来的方向?如何才能从纷繁复杂、或真或假的数据世界中挖出一条路?我讲一个通过招聘网站的观察方法。
可以到各种招聘的网站上查询信息(可以到google上查询招聘的网站),例如:以及csdn的招聘频道等还有一个网站也不错,,综合了各大招聘网站的数据。
这些数据都是最真实不掺假的原始数据,你可以每隔一段时间搜索一次,一些规律就会被总结出来了。
比如说我在中搜索java,全国大概提供了3万个职位。
然后要多翻几页,这样不仅能够看清楚大概有多少是有效的职位,而且还可以看清楚用人单位最关心的技能是什么,这个很重要,决定着你将来要花多少时间和精力在特定的知识点上,比如说swing,搜了一下,全国只有700个左右的职位,仔细读了一下,也并非全是有效的职位,花太多时间和精力在这个上面就不值得了,当然自己感兴趣或者为了研究的话另当别论。
不过如果是为了快速的就业,把太多时间和精力花在很多职业生涯的前一、二年用不到的知识上就太可惜了。
同时,并非某一个行业的职位数目少,就不能当作一个方向进行选择,比如.NET,我搜索到的职位数是1.6万左右,比java少,是不是就选java了呢?不一定,因为java职位虽然多,但是可能竞争者可能也多,有些方向虽然职位数不多,但是和你竞争这些职位的人数量也少,不见得就不能选择。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录JAVA自学之路一: 学会选择 (1)JAVA自学之路二: JAVA自学路线图 (2)JAVA自学之路三: 要动手 (3)JAVA自学之路四: 要事为先 (4)JAVA自学之路五: 问题解决之道 (5)1:要仔细的观察错误的现象,是的,要仔细 (5)2:要仔细思考问题会出在哪些环节(重要) (6)3:如何定位错误(重要)分析清楚有哪些环节之后,下一步就是定位到底什么环节出错了。
(6)4:如果还不行,google吧 (7)5:什么?还不行?那么就BBS吧 (7)6:还解决不了?问老师吧,这个只能是在你参加了培训的前提下了。
(8)7:还解决不了?天哪,是不是思路从根上就搞错了?写信给我,让我也学习一下,共同进步吧。
(8)JAVA自学之路六: 项目的自学 (8)JAVA自学之路七: 路线图明细 (9)一:J2SE (9)二:数据库(Oracle或者MySQL) (9)三:JDBC (10)四:HTML_CSS_JAVASCRIPT (10)五:Servlet & JSP (10)六:Struts (10)七:XML (11)八:Hibernate (11)九:Spring (11)十:EJB3.0 (11)十一:至于SOA,对于自学的同学来说,暂时不用特别关注。
(12)JAVA自学之路一: 学会选择为了就业,不少同学参加各种各样的培训。
决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机、嵌入式、游戏、3G、测试等。
那么究竟应该选择什么方向呢?我的意见是,不要太过相信各种培训机构或是抢手文章的说法(包括我),当你要走向社会的时候,就不要再把自己当成学生,不要把自己的将来交给别人,学会运用自己的眼睛去观察,去了解这个世界吧。
每个培训机构都会宣传自己的好处,并不能说明大的趋势。
一些新闻文章很有可能是枪手写的,不必太过相信。
国外背景的教师和课程,未必适合你。
那么怎么才能确定自己将来的方向?如何才能从纷繁复杂、或真或假的数据世界中挖出一条路?我讲一个通过招聘网站的观察方法。
可以到各种招聘的网站上查询信息(可以到google上查询招聘的网站),例如: /招聘频道,综合了各大招聘网站的数据。
这些数据都是最真实不掺假的原始数据,你可以每隔一段时间搜索一次,一些规律就会被总结出来了。
比如说我在中搜索java,全国大概提供了3万个职位。
位然后要多翻几页,这样不仅能够看清楚大概有多少是有效的职位,而且还可以看清楚用人单位最关心的技能是什么,这个很重要,决定着你将来要花多少时间和精力在特定的知识点上,比如说swing,搜了一下,全国只有700个左右的职位,仔细读了一下,也并非全是有效的职位,花太多时间和精力在这个上面就不值得了,当然自己感兴趣或者为了研究的话另当别论。
不过如果是为了快速的就业,把太多时间和精力花在很多职业生涯的前一、二年用不到的知识上就太可惜了。
同时,并非某一个行业的职位数目少,就不能当作一个方向进行选择,比如.NET,我搜索到的职位数是1.6万左右,比java少,是不是就选java了呢?不一定,因为java职位虽然多,但是可能竞争者可能也多,有些方向虽然职位数不多,但是和你竞争这些职位的人数量也少,不见得就不能选择。
不过,如果某一个方向的职位数目过少,你可就要小心了,选择这样的方向风险会非常大,如J2ME。
我个人觉得java/J2EE、.net、嵌入式开发是不错的三个方向。
如果非要在java和.net中选择的话,我个人是推荐java的,原因:1:Java能够开发linux、unix服务器上的程序2:JavaEE和.NET在企业应用方面的关注点是差不多的,但是学习了java如果将来想转到.net上会比较简单,几天的学习然后上手开发应该是问题不大的,但是反之就不行了。
当然如果有了些经验之后,你就会发现语言或者平台不再是技术上的阻碍,一些原理性的东西学到手,然后再加上项目经验,使用什么平台,反而不是最重要的。
不过如果非要用一种平台进入企业开发的领域,至少在目前,2007年9月,我推荐java。
完全可以不同意我的观点,但是无庸置疑,如果是为了就业,多到招聘网站阅读阅读职位的信息,对你将来的方向和学习是大有益处的。
选择是最痛苦的,看看《天生购物狂》中的刘青云就知道了,不过既然无法逃避,就作出自己的选择吧。
每个人都会受到别人的影响,在作出决定之前,要想尽各种办法让自己理性一些吧。
这样,你的选择会离正确的方向更近一些。
JAVA自学之路二: JAVA自学路线图有不少的同学发信给我,和我探讨java的自学过程应该是什么样的,毕竟有很多人因为各种各样的原因不能参加培训。
我试着给出自己的见解,抛砖引玉吧。
这个路线图是给那些为了就业的人准备的,如果只是兴趣,不一定照这个走。
这里只是讲了路线图,关于路线中的各个阶段,学到什么程度,如何学习等,可以参考后面的JAVA自学之路七:《路线图明细》。
首先要学JavaSE,这是无庸置疑的。
与此同时,是的,与此同时,和JavaSE的学习同步,建议大家研究一下数据结构与算法。
在这儿之后,你可以选择向J2ME、或者Java GUI、Socket 编程等方向努力,但是通过第一篇的办法,你可以很容易就将这方向过滤掉(永远不要忘了我们是为了就业),好吧,暂时和它们诀别,还是向着J2EE的方向前进吧。
在JavaSE完成之后,可以试着完成一些小项目,同时关注一下设计模式的内容,不必强求自己能够完全掌握各种细节,往前走吧。
掌握一种编程工具,比如说Eclipse。
数据库,可以选择使用Oracle或者MySQL开始。
JDBC,用Java连接数据库。
可以选择在这个地方切入Hibernate,也可以选择在Struts之后。
HTML CSS JavaScript,这些东西是做web项目必需的内容。
Servlet \JSP,服务器端必需。
XML 、AJAX,新的流行趋势不能不了解。
作一些小项目吧。
比如BBS、留言系统、学籍管理、商城等等,随便找一些业务逻辑比较简单的来做一做:Struts,MVC的典型应用,Hibernate,OR Mapping的典范之作。
Spring IOC + AOP,面向对象+面向切面,完善的旅程。
把以前自己的小项目加入Struts、Spring、Hibernate的元素吧。
去研究各种商业项目的业务逻辑吧,才能在你的简历中加入浓重的一笔。
EJB3.0,java在走了很多弯路后的回归之作,值得研究。
SOA,业界铁定的未来趋势,要紧紧跟随。
在后面,我会告诉你每一步的学习方法和学习重点。
JAVA自学之路三: 要动手无论如何,请坚持不懈的动手实验!学习Java要动手,仅仅是看和听是不能够学好编程的。
总有同学来信问我们这样的问题,说:"老师我看了视频了,可是怎么一动手就没有任何思路呢?" 对此,我一般都会说不要着急,如果你只是看了视频就想行云流水的话,那老师这些年的锻炼真是白费了,这么多年的苦练才能略有些行云流水的感觉,你一朝一夕就想自己能够达到,不是太奢侈了吗?作为编程的过来人想一下,当年自己学编程的时候是什么时候有思路的呢?至少也是照猫画虎画了一段时间之后吧,我本人是在某一个领域画虎画了上万行代码的时候才慢慢有自己思路的。
就像写作文,要有自己思路总是一般来说要经过几个阶段,首先学习词汇,然后学习造句,然后大量阅读别人的文章,自己模仿着写一些,逐渐的经验积累,才能形成自己的思路。
学编程,恐怕也得慢慢的来吧,只是看一看、听一听视频,是不足以学好编程的。
所以,动手吧,跟着做,一行一行的跟着敲,一个项目敲完了,比如坦克,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。
如果遇到,暂时对于一些思路不能理解的同学,我一般都会劝告说,动手写,先写代码,量变会引起质变的。
而这种质变的确发生过不少次。
提醒一句,要理解代码思路之后再跟着敲,背着敲,千万不要左边摆着别人的程序,右边自己一个一个子母的写,这就不再是程序员了,成了打字员了。
纸上得来终觉浅,所以:别问那么多,别想那么多,动手写吧。
JAVA自学之路四: 要事为先对待人生的任何事情都要:抓大放小,要事为先!对于一个以前从来没有接触过java的人,java无疑是庞大的,似乎每个领域都可以拓展开来都是一片开阔地,每一个领域要想深入接触到每一个细节所耗费的精力都是巨大的。
这个时候大家都胸怀壮志,两眼发光的盯着每一个崭新的知识点,遇见了任何一个知识点都恨不得抠的清清楚楚,明明白白。
难道这有什么不对吗?我的意见是,这样并没什么大毛病,但是学习效率太低了!我们推荐的学习方式是,抓大放小,要事为先{马士兵老师的这句话可能并不适合当代的大学生。
仔细思考}。
比如说学习J2SE的时候,学到GUI这一章,有的同学认为,既然学到这儿了,我们去把SWING细细的了解一遍吧;还有的同学,遇到了在Linux下的Shell编程,就恨不得把Shell 先学成专家才肯,或者是才敢,继续往下学习;有没有过这样的感觉,一本书的上册没有学好,觉着下册心里也没底儿,甚至非要把上册复习一遍才敢继续学习。
如果你也是这样,要去看看心理医生啦,没准儿会有洁癖的毛病。
任何事情都要追求完美才敢继续往后进行,是一种性格缺陷大胆的放弃一些东西吧,有失才有得,把自己有限的、宝贵的精力用在对于就业直接相关的地方,这才是最有效率的学习方式!等你参加工作,有了可持续发展的事业动力和经济基础,有时间有精力闲的没事儿干的时候,再去研究那些其它吧。
曾经有一个故事,说得是产能和产量的关系。
一个人喜欢读书,读了一辈子,无所不通,这时候要做任何工作都可以,他的产能到了极致,但是,他老了,即便每天产出大量的东西也不能维持多久了,一辈子的产量并没有多少。
另一个人直接工作,忙,天天在机器旁日复一日,做了一辈子,没时间学习和进修,可以想象,产量能有多大呢。
人的一生,要锻炼产能,也要及时产出,引擎要转,也要停下来加油,这两者平衡的越好,你的贡献和产量就会越大。
如果钻研的东西和产能目标(或者说近期的产能目标)无关的话,要舍得放手。
所以,对于SWING,暂时先扔在一边吧。
对于shell,对于各种协议过于详细的细节,对于喜欢的游戏编程,对于javascript各种华而不实的效果,都暂时和它们分别吧。
一切和我们的直接工作目标关联不大的东西,扔在一边或者弄清楚到足够支持下一步的学习就可以了。
{能否把这种工作目标换成其他的东西呢?}那这样岂不是妨碍我成为通晓各种细节的高手了吗?我一向不认为一个人掌握了很多很多知识点的细节就是高手了,一个人如果告诉你,回字有四种写法,你会认为他是高手吗?毫不客气的说,现在我们所教授的所有知识细节在网上或书中都可以找到,只要你肯花时间花精力去动手试,去钻研,没有什么不能掌握的。