韩顺平循序渐进学java从入门到精通(全知识点笔记整理)
Java韩顺平笔记
第1讲内容介绍.项目演示.原理剖析
1. 课程包括:java面向对象编程,java图形界面,java数据库编程,java文件i/o流,java网络编程,java的多线程
2. Java历史:1990 sun 启动绿色计划 1992 创建 oak语言—
> java
1994 gosling 参加硅谷大会演示java功能震惊世界 1995 sun 正式发布java第一个版本,目前最新的是jdk7.0
3. java开发工具:记事本,jcreator,jbuilder,netbean,eclipse
4. jdk包括:jre(java运行环境)
java的工具:编译器javac.exe解释执行器java.exe java的类库:3600多个,常用的150多个
5. 第一个程序:
//功能:显示―HelloWorld‖
//public:表示类是公共的,一个文件中只有一个public类 //class:表示这个是一个类
//HelloWorld:类名(公共类的类名,必须和文件名一样)
public class HelloWorld {
//一个主函数,程序的入口 public static void main (String args[]) { //执行语句
System.out.println("helloWorld!"); } }
6. Java源程序(.java文件)——>java字节码文件(.class文件)——>由解释执行器(java.exe)将字节码文件加载到java虚拟机(jvm)——>字节码文件(.class)就会在java虚拟机中执行l,average); } }
第2讲变量.数据类型
1. 在java里面int占4个字节,long占8个字节
2. Java基本数据类型:
整数:(byte一个字节:-128---127 int四个字节:-2147483648---+2147483647
short两个字节:-32768---+32767 long八个字节:)
小数(浮点):float double
布尔:boolean
字符:char(两个字节,可以存放汉字, char test1 ='中';)
引申到字符串(类)
3.在java中对char进行运算的时候,直接是当做ASCII码对应的整数
4.数据不能从高精度到低精度的转换
Byte float a=3.4;是过不去的,在java中小数默认是double(双精度)的 应该写成是float a=3.4f;不过可以强制转换:int a=(int)1.2; int b=(int)1.9 5. int a=1;int b=a+1.2; a先是往高精度转换,然后赋给b,就报错改成int a=1;double b=a+1.2; 或者int a=1;float b=a+1.2f; 就解决了 第4讲流程控制 1. switch case语句中,switch条件表达式的数据类型应该和后面case的类型一致 2. switch case语句中,可用的数据类型主要是:byte short int char enum 第5讲类与对象 1. 面向对象编程-类与对象 类名首字母大写 类里面的元素叫类的成员变量/属性 2. 类的定义 package 包名; class 类名extends 父类implements 接口名 { 成员变量; 构造方法; 成员方法; } 3. 如何创建对象: 先声明再创建Cat cat1;cat1=new Cat(); 一步到位Cat cat1 =new Cat(); 4. 引用传递类似于指针一样 第8讲this 类变量 1. this属于类的对象的而不是属于类的 2. 5this不能在类的外部使用,只能在类定义时候使用! 3. 可以用类名直接访问静态变量 第9讲类方法封装 1.类变量是该类的所有对象共享的对象,一改全改了 2.定义语法:访问修饰符static 数据类型变量名 3. public class Demo9 { static int i=1; static { System.out.println("zhixingyicile"); i++; }//会自动执行一次,也只有一次 public Demo9() { System.out.println("ffffffff"); i++; } public static void main(String args[]) { Demo9 t1=new Demo9(); System.out.println(Demo9.i); Demo9 t2=new Demo9(); System.out.println(i); } } 4.类方法(静态方法、静态函数):属于所有对象实例的 5.Java中:类变量(static)原则上用类方法(static)去访问;类方法中不能访问非静态变量 ,就是非类变量,但是普通的成员方法可以访问静态变量(类变量) 使用:类名.类方法名对象名.类方法名 6.非类变量就是实例变量,属于每个对象自己的 7.Java面向对象编程的三(四)大特征:封装、继承、多态(、抽象) 8.抽象:把一类事物的共有的属性和行为提取出来,形成一个物理模板,此研究问题的方法就是抽象 9.封装:把抽象出来的数据和对数据的操作封装在一起,数据被保护在内部,程序的其它部分只有通过被授权的操作(成员方法),才能对数据进行操作。 10.封装的访问控制修饰符 11.四种访问控制符: 公开级别:public 受保护级别:对子类和同一个包中的类公开 默认级别:没有修饰符,向同一个包的类公开,子类不可以访问类中默认级别的元素的 私有级别:用private修饰,只有类本身才能访问 公开>受保护>默认>私有 12. 13.包的三大作用:区分相同名字的类当类很多的时候可以很好的管理类控制访问范围 14.包的打包命令:package com.xiaoming 一般放在文件的开始的地方 15.引包命令:improt 包名 第10讲访问修饰符重载覆盖 1.一个文家中如果只有public类,那么这个public类可以不用主函数 2. 不想被继承就设为protected 3.子类最多只能继承一个父类,Java里面不允许一个子类继承多个父类,C++却可以,如Java中一定要呢,就用接口吧 4.Java的所有类都是Object 的子类,继承层次数没有限制 7.方法重载:类的同一种功能的多种实现方式,取决于调用者传递的参数 8.方法重载注意事项: 方法名相同 方法的参数类型,个数,顺序至少有一项不同 方法的修饰符可以不同 方法的返回类型可以不同 另外: 只是返回类型不一样并不构成重载 只是控制访问修饰符不一样不构成重载 第11讲约瑟夫问题(丢手帕问题) 1.方法覆盖的:子类有一个方法和父类的某个方法名称、返回类型、参数一样 2.方法覆盖注意: 子类的方法的返回类型、参数、方法名称要和父类的一样,否则编译出错 子类方法不能缩小父类方法的访问权限,但是扩大是可以的,子类抛出比父类更少的异常 第十二讲多态 1.多态性:访问子类可以通过访问父类: Animal cat =new Cat(); Animal dog =new Dog(); 2.在使用多态的时候,如果有使用覆盖函数,那么被覆盖的方法(即是父类中的的那个相应的方法)是要存在的。 3. 多态:一个引用(类型)在不同情况下的多种状态,可使代码更加灵活 4.java允许父类的引用变量引用它子类的实例,是自动完成的 第十三讲抽象类接口(难点重点) 1.父类方法的不确定性,用抽象类修饰这个方法,abstract。 2.抽象类还是可以一样被继承 3. 当一个类继承的类是抽象的类时候,就要把抽象类中的所有的抽象方法全部方法实现 4.用abstract关键词来修饰的时候,一定是抽象类和抽象方法 5.在使用中不多,公司笔试的时候考很多 6.抽象类不能被实例化,只有被继承以后再去实例化 7.抽象类不一定要包含abstract方法,就算没有abstract方法,也不能实例化它 8.一旦类包含了abstract方法,这个类必须声明为abstract 9.抽象方法不能有主体“{}“ 11.接口不能被实例化 12.接口中的所有方法都不能有主体 13.抽象类里面是可以有实现了的方法的 14.接口中的所有方法都不能有主体,即都不能被实现 15.接口是更加抽象的抽象类!!!! 16.一个类继承抽象类或是使用接口,那么就要实现所有的抽象方法 17.一个类可以实现多个接口 18.接口中可以有变量(但是不能用private,protected修饰) 19.接口中的变量本质上都是静态的,而且是final,不管你加不加static,所以可以直接使用:接口名.变量名 20.在java开发中,经常把常用的变量定义在接口中作为全局变量使用 访问形式:接口名.变量名 21.一个接口不能继承其它的类,但是可以继承别的接口 22.接口体现了程序设计的多态和高内聚低耦合的思想 第十四课final 作业评讲 1.实现接口和继承父类的区别: 2.java是单继承,一个类只允许继承一个父类,这种单继承的机制可以保证类的纯洁性,比C++的多继承机制简洁 3.实现接口可以看做是对单继承的一种补充 4.继承是层次式的,不太灵活,修改某个类就会打破这种继承的平衡,但是接口就不会,因为只针对实现接口的类才起作用 5.用接口体现多态: 6.前期绑定:在程序运行之前就进行绑定,由编译器和连接程序实现,又叫静态绑定,如static方法和final方法,包括private方法,它是隐式fi nal的 7.后期绑定:在运行的时候根据对象的类型进行绑定,由方法调用机制实现,因此又叫动态绑定,或是运行时绑定,除前期绑定外的所有方法都属于后期绑定 9.final概念:final可以修饰变量和方法 当不希望父类的某些方法被子类覆盖的时,可以用final修饰 当不希望类的某个变量的值被修改,可以用final修饰 当不希望类被继承时,可以用final修饰 10.final修饰的变量一般用下划线书写 11.如果一个变量是final的,那么定义时候必须赋初值 12.final修饰的变量又叫常量,一般用XX_XX_XX命名 13.final什么时候用: 处于安全的考虑,类的某个方法不允许修改 类不会被其它的类继承 某些变量值是固定不变的,比如pi 第15讲讲题目 1.switch只能对int、short、byte以及枚举类型进行判断,case后面只能是常量表达是 2.猜拳的java程序设计: 有个人Tom设计他的成员变量,成员方法,和电脑猜拳,电脑每次都产生一个随机数0,1,2,0表示石头,1表示剪刀,2表示布。请实现: 第16讲数组 1.数组是可以存放多个同一类型的数据 2.用法: 程序员用法:数组定义:数据类型数组名[]=new 数据类型[大小]; 如:int arr[]=new int[5]; 或者是int[] arr=new int[5]; 或者是int []arr=new int[5]; 数组引用:数组名[下标] 没事找事用法:数组定义:int arr[]; arr=new int[5]; 或者是int[] arr; arr=new int[5]; 或者是int []arr; arr=new int[5]; 数组引用:数组名[下标] 古板用法:int a[]={1,2,3,4,5,6,7,8,9,0}; 数组引用:数组名[下标] 3.知道数组的大小:arr.length(成员属性) 4.引用在栈里面,对象在堆里面 5.对象数组: 4.对象、字符串的很多不能用”==”,用的话是表示地址相等,比较字符串的内容是否相等是用equals方法 5. 数组可存放同一类型数据 简单数据类型(int,float)数组,可以直接赋值 对象数组在定义后,赋值时候需要再次为每个对象分配空间【即是:new 对象】 数组大小必须事先指定,如:int x;int a[]=new int[x];是可以的 数组名可以理解为指向数组首地址的引用 数组的下标是从0开始标号的 第十九讲多维数组 1.多维数组,定义: 语法:类型数组名[][]=new 类型[大小][大小] int a[][]=new int [2][3] 第二十讲二进制位运算移位计算 1.0的反码和补码都是0 2.我们只会针对有符号的数才讲反码补码 3.java没有无符号数,换言之,java中的数都是有符号的 4.在计算机运算的时候,都是以补码的方式运算的 5.按位与& 或| 异或^ 取反~ 6.~-2=-3(00000010->11111101->11111100->10000011) 7.2&3=00000010 2|3=00000011 ~-5=(1000 0101->11111010- >11111011(补码)->00000100)4 8.有3个移位运算符: >>算术右移:低位溢出,符号位不变,并用符号位补由于移动而空出的高位 <<算术左移:符号位不变,地位补0 >>>逻辑右移: 9.记住:对负数操作就要先找补码!!!正数也是,只不过不边罢了。得到的结果如果是正数就结束,如果是负数就再折腾一下,转变成原码才行。 10.-1移动任意位都是-1 11.1<<2(相当于是*4)=4,-1<<2(相当于是*4)=-4 12. 而对于有符号数,其左移操作还是逻辑左移,但右移操作是采用逻辑右移还是算术右移就取决于机器了!(算术右移和逻辑右移的区别是:算术右移不右移符号位,即最高位,右移后前补0还是1取决于符号位的值;逻辑右移执行时将移动符号位,右移后前补0) 第21讲集合 1.集合类泛型异常的处理 2.解决方法:链表或者集合类(可以动态的改变),请熟悉常用的集合类 3.集合类分类: List结构的集合类: ArrayList类,LinkedList类,Vector类,Stack类 Map结构的集合类 HashMap类,HashTable类 Set结构的集合类 HashSet类,TreeSet类 Queue结构的集合类 Queue接口 4.Java中所有的对象都是从Object继承下来的 5.子类交给父类,可以自动转换,反过来就要强制转换 6.ArrayList中可以多次存放同样的人,ArrayList本质是存放引用 7.从ArryList中删除对象 第22讲集合 1.字符串相等是地址相等而不是内容相等! 2.雇员管理系统程序的编写(自己改进了一点,不完全,继续改进……) 3.LinkedList addFirst表示把元素加在链表的最前面(类似于栈一样) addLast表示把元素加在链表的最后面(类似于队列一样)getFirst getLast remove removeFirst removeLast 4.Vector: 5.Stack用法:(加的时候是在前加的) 第二十三讲集合 1.HashMap HashMap hm=new HashMap(); Emp emp=new Emp(“s001”,”aaa”,3.4f); 2. HashMap可以存放空置但是HashTable不能存放空值。 3.Hashtable是基于陈旧的Dictionary的,HashMap是Java1.2引进的Map接口的一个实现 4.Hashtable是线程同步的,这个类中的一些方法保证了Hashtable 中的对象是线程安全的。而HashMap是异步的,因而HapMap中的对象并不是线程安全的。因为同步的要求会影响执行的效率,所以如果你不需要线程安全的集合那么使用HashMap是一个很好的选择,这样可以避免由于同步而带来的不必要的性能开销,从而提高效率。 5.值:HashMap可以让你将空值作为一个表的条目的key或value,但是Hashtable是不能放入空值的(null) 6.HashTable由于是同步的,有锁,因此是存在等待的,HashMap 允许 7.ArrayList和Vector区别: Vector是同步的,是线程安全的,更安全 ArrayList是异步的,不是线程安全的,没有Vector安全 数据增长:Vector缺省情况下是自动增长原来一倍的数组长度,适合保存大量的数据;ArrayList是原来的50% 8.如果要求线程安全,使用Vector、Hashtable,否则ArrayList、LinkedList、HashMap 9.如果要求键值对,使用HashMap、Hashtable 10.如果数据量大又考虑线程安全,使用Vector 第二十四讲集合补充 HashMap和Hashtable都是实现Map的接口的,ArrayList和LinkedList都是实现List的接口的 10.泛型可以更安全和提高代码重用率,泛型可以利用反射机制拿到类的一系列信息,从而提高代码的优越性。 第二十七讲作业讲评 跳水成绩打分系统 第二十八讲作业讲评 1.静态变量不给初值也是可以的,默认为0,如果前面有final就一定要赋值了 2.布尔值之间可以用”==”号 3.if(i==1 & j==2)// 由于”i==1”返回了布尔值,所以就可以过去,否则就不行,但是c中就没有这样的顾虑,c会自动转换成boolen 4.继承中不能缩减被继承的父类中函数的范围(针对函数的参数的范围) 5. Math.floor -> 取一个比某数小的最大整数 Math.round -> 四舍五入 Math. ceil ->取一个比某数大的最小整数//ceil:天花板Math.min-> 需要两个数被操作 6.substring(beginIndex,endIndex)——>起始索引包括,结束索引不包括 7.字符串的序数也是从0开始计数 8.Java的内存区分为:代码区、栈区和堆区 9.普通变量定义和初始化的时候直接放在栈区,不是普通变量的引用在栈区,对象在堆区 10.类中含有静态变量(函数)时候:直接在数据区(申请空间) 11.堆区中有字符串引用池(string pool),它存放字符串的引用,当字符池发现有字符时就指向字符,字符是存放在堆区中的。相同的字符串指向相同的地址,但是如果要用new来初始化,地址就不一样了,因为new是直接去开辟堆区的空间的。 12.对于对象来讲,==是比较地址 13.a.equals(b)区分大小写,a.equalsIgnoreCase(b)就不区分大小写 14.如果希望在子类中调用父类的构造函数,那么一般要求在子类的构造函数中调用 15. super表示当前正要调用该类它父类的变量或方法。 第三十八讲线程坦克大战6 1.线程有:新建、就绪、运行、阻塞、死亡状态 2.运行中若资源突然不够用了,就阻塞,等待,一旦又满足条件了就进入就绪状态,如果还是可以满足条件,就再次进入运行状态;运行结束就死亡。 3.在java中,一个类要当作线程来使用有两种方法: 继承Thread类,并重写run函数 实现Runnable接口,并重写run函数(如果已经继承了别人的话,在不能多重继承的情况下使用接口) 6.字节流:以字节方式读写的流,可以读取二进制文件和任何类型的文件byte(InputStream,OutputStream) 字符流:可以用于读写文本文件,不能操作二进制文件(Reader,Writer) 7.常见io流——文件对象 4.常用IO流——缓冲字符流,直接操作String BufferedReader StreamReader 5.总结: FileInputStream文件字节流:File f=new File("d:\\test.txt"); FileInputStream fis=null; FileReader文件字符流:fr=new FileReader("c:\\ttt.txt"); fw=new FileWriter("d:\\ccc.txt"); BufferedReader缓冲字符流:fr = new FileReader("c:\\ttt.txt"); (读行)br=new BufferedReader(fr); 第五十二讲试题评讲 主要是复习以前的东西: 1.在try里面抛出异常和发生一般的异常是一样的,都会被catch 住 2.final修饰的类不能被继承了 final修饰方法,该方法不能被覆盖 final用于声明属性、方法和类,分别表示属性不可变,方法不可重写,类不可继承 3. 4.包的声明必须是源文件的第一句话 5.类的成员变量可以不赋初值,就是不初始化,但是如果是局部变量就需要给初值 6.字符串相比是比地址,如果字符串一样的话就是一样的地址 第五十三讲数据库概念 4.数据库的基本结构 物理数据层:数据库的最内层 概念数据层:数据库的中间层,数据库的整体逻辑表示 逻辑数据层:用户所看到和使用的数据库 9.SQL语言包括: 数据定义语言(DDL):create、drop、alter 数据操作语言(DML):insert、update、delete 数据查询语言(DQL):select语句 数据控制语言(DCL):grant、revoke、commit、rollback等10. --如何显示平均工资和最高工资GROUP BY select avg(sal), select avg(sal),max(sal),deptno from emp group by deptno 11.having往往和group by结合使用,可以实现对分组查询到的结果进行筛选,并可以排序 select avg(sal),deptno from emp group by deptno having avg(sal)<2000 order by avg(sal) desc 12.显示平均工资低于2000的部门号和它的平均工资 select avg(sal),deptno from emp group by deptno having avg(sal)<2000 13.总结: ·分组函数只能出现在选择列表、having、order by子句中 ·顺序:group by 、having、order by ·在选择列中如果有列、表达式和分组函数,那么这些列和表达式必须出现在group by子句中,否则报错,反过来group by中的字段也一定要出现在前面的select列表中 第六十一讲复杂查询(多表查询) 1.多表查询是指基于两个或者两个以上的表或是视图的查询 2.笛卡尔积:select * from emp,dept 3.如果两张表有相同的字段,就需要带上表名或者用别名 select ename,sal,loc,e.deptno from emp e,dept d where d.deptno= e.deptno 4.凯文·米特尼克:黑客 5. 自连接:同一张表上的连接查询 显示某个员工的上级和他的上级名字 select ename from emp where empno=(select mgr from emp where ename='blue') 6.对于自连接可以考虑将表分开的意思,看成两张表 select worker.ename 雇员,boss.ename 老板from emp worker,emp boss where worker.mgr=boss.empno 7.子查询是指嵌入在其它sql语句中的select语句,也叫嵌套查询 8.单行子查询:返回单行数据的子查询。select * from emp where deptno=(select deptno from emp where ename='lucy') 9.多行子查询:返回多行数据的子查询 --查询和部门10的工作相同的雇员的名字岗位工资部门号 select * from emp where job in (select distinct job from emp where deptno=10) 排除10号部门的: select * from emp where job in (select distinct job from emp where deptno=10) and deptno!=10 10.在from子句中使用子查询??? 第六十二讲复杂查询 1.如何显示高于部门平均工资的员工的信息,相当于是:1.首先知道各个部门的平均工资 --将1的结果当做一个临时的表 select emp.ename,emp.sal,tmp.myavg from emp,(select avg(sal) myavg,deptno from emp group by deptno) tmp where emp.deptno=tmp.deptno and emp.sal>tmp.myavg 当在from子句中使用子查询时候,该子查询会被作为一个临时表来对待,当在from子句中使用子查询时候必须给予查询指定别名 2.分页查询,按照雇员id号升序取出 3. -- 请显示第2个到第4个入职的雇员,按照时间的先后顺序,如下: --top后面的数代表要取出几条记录 select top 3 * from emp where empno not in (select top 1 empno from emp order by hiredate) order by hiredate 7.左外连接、右外连接 显示公司每个员工和他上级的名字 左外连接(left join):左边的表的记录全部要出现,左边表的元素全部要出现,如果没有匹配的记录就用空来填 select w.ename b.ename from emp w left join emp where w.mgr=b.empno 右外连接(right join):右边的表的记录全部要出现,右边表的元素全部要出现,如果没有匹配的记录就用空来填 内连接(inner join):显示所有匹配的,不匹配的就不显示了 第六十三讲约束 1.sql server 2000约束包括: not null: null意思是什么都没有,就像房子没有建起来,但是’’代表占空间了,就像房子建了但是里面没有什么东西 unique:表示不允许重复,是唯一的,但是可以是空值,不过只能是放一个空值,两个空值代表是一样的值。同一个表中,主键只有一个,但是unique可以有多个。 第六十五讲sql server jdbc 1.sql server里面都用单引号没问题的 2.显示ResultSet结果集,可以理解为表行的结果集,理解为游标,定义ResultSet rs,此时rs指向结果集的第一行的前一行,rs.getInt(1),括号里面的数字是列,会报空指针,取出第一行的第一列用rs.next(),rs是按照行循环取出的,现在我们就循环取出,rs.next()。 3.Statement和PreparedStatement区别: ①Statement:直接将程序送到数据库 ②PreparedStatement:它先预编译了一下再传送到数据库中,PreparedStatemen还t带有缓存机制,缓解数据库的压力,效率高,适合使用batch,比较好的解决系统本地化问题,而且能有效防止危险字符的注入,解决sql的注入漏洞问题。 /**画坦克1.0 */ import java.awt.Color; import java.awt.Graphics; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.JFrame; import javax.swing.JPanel; public class MyTankGame extends JFrame { MyPanel mp=null; public static void main(String[] args) { MyTankGame mtk=new MyTankGame(); } public MyTankGame() { mp=new MyPanel(); this.add(mp);//把面板加入窗体 //注册监听 this.addMouseListener(mp); this.addKeyListener(mp); this.addMouseMotionListener(mp); this.addWindowListener(mp); this.setTitle("坦克大战");//窗体标题 this.setSize(600,400);//大小,宽,高(像素) this.setLocation(300,300);//显示位置。左边距,上边距 //禁止用户改变窗口大小 this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true);//显示 } } //我的面板 class MyPanel extends JPanel implements HTML 一、HTML有关知识点 1.html介绍 html是一种标记语言,主要的用途是开发网页,使用html可以展现文字、图片、视频、声音,html是我们web开发(网站开发)。 2.html可以做什么 ?html可以编写静态网页 ?该静态网页可以包括文字、图像、动画、声音、表格、链接。从而构成一个个漂亮的网页 3.Html发展历史 4.Html的基本结构 5.是标记(也叫元素),标记的一般格式: <元素名[属性=“属性值”]>元素内容标签> 如果没有内容可以用:<元素名[属性=“属性值”]/> 6.Html实体标记 7.Html常用标记 ?html超链接 ●_blank 新的窗口 ●_self 本窗口 ●_parent 父窗口 ●_top整个浏览器窗口 ?html图像元素 ?html表格 韩顺平java坦克大战1.0版本_源代码
韩顺平html笔记
?无序列表 --用于说明行 --用于说一小格
?有序列表
?框架 ?表单元素
循序渐进学从入门到精通
Java韩顺平笔记 第1讲内容介绍.项目演示.原理剖析 1. 课程包括:java面向对象编程,java图形界面,java数据库编程,java文件i/o流,java网络编程,java的多线程 2. Java历史:1990 sun 启动绿色计划 1992 创建 oak语言— > java 1994 gosling 参加硅谷大会演示java功能震惊世界 1995 sun 正式发布java第一个版本,目前最新的是jdk7.0 3. java开发工具:记事本,jcreator,jbuilder,netbean,eclipse 4. jdk包括:jre(java运行环境) java的工具:编译器javac.exe解释执行器java.exe java的类库:3600多个,常用的150多个 5. 第一个程序: //功能:显示―HelloWorld‖ //public:表示类是公共的,一个文件中只有一个public类 //class:表示这个是一个类 //HelloWorld:类名(公共类的类名,必须和文件名一样) public class HelloWorld { //一个主函数,程序的入口 public static void main (String args[]) { //执行语句 System.out.println("helloWorld!"); } } 6. Java源程序(.java文件)——>java字节码文件(.class文件)——>由解释执行器(java.exe)将字节码文件加载到java虚拟机(jvm)——>字节码文件(.class)就会在java虚拟机中执行l,average); } } 第2讲变量.数据类型 1. 在java里面int占4个字节,long占8个字节 2. Java基本数据类型: 整数:(byte一个字节:-128---127 int四个字节:-2147483648---+2147483647 short两个字节:-32768---+32767 long八个字节:)
韩顺平2011玩转oracle10g视频教学课堂笔记(完整版)
顺平j2ee系列教程--玩转oracle10g学习笔记 引言: 数据保存问题? 可使用文件保存和数据库保存。 使用文件保存数据存在几个缺点: 1、文本的安全性问题; 2、文件不利于查询和对数据的管理; 3、文件不利于存放海量数据; 4、文件在程序中控制不方便。 为解决数据保存问题,专家们设计出更加利于管理数据的东东--数据库(本质就是一个软件),它能更有效的管理数据。数据库是衡量一个程序员水平的重要指标。 数据库 1、数据库的本质就是一款软件,这个软件专门用于管理和维护数据; 2、数据存放在数据库中。 数据库服务器、数据库和表的关系 所谓安装数据库服务器,只是在机器上装了一个数据库管理程序,这个管理程序可以管理多个数据库,一般开发人员会针对每个应用创建一个数据库。 为了保存应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体的数据。 数据库服务器、数据库和表的关系如图所示:
为什么选择oracle--性能优越 概述:目前主流数据库包括 微软: sql server和access 瑞典MySql: AB公司mysql ibm公司: db2(处理海量) 美国Sybase公司: Sybase ibm公司: informix 美国oracle公司: oracle 做项目时应当如何选择数据库? 1、标的(项目预算); 2、功能的要求; 3、并发数(多少人用); 4、安全、稳定性。 5、操作系统(unix[solaris,freeBSD,aix,hp unix]/linux/window) oracle数据库的认证 oca(oracle certified associate)初级认证 ocp(oracle certified professional)中级认证 ocm(oracle certified master)高级认证 oracle10g安装步骤: 1、安装文件 2、把10201_database_win32.zip文件copy到没有中文的路径下 3、检查服务选项,确定本机没有安装过oracle数据库,如果有则卸载 4、将压缩包解压后,双击setup.exe文件进行安装。 说明:建议大家自己建立一个文件目录,比如d:/hsporacle/oracle,然后把数据库安装到
基于JavaSocket网络编程的山寨QQ
基于J a v a S o c k e t网络编程的山寨Q Q 标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]
基于Java Socket 网络编程的山寨QQ (学习韩顺平老师的视频整理出的笔记) 内容含盖: 1.Java 面向对象编程 2.界面编程 3.网络编程 4.多线程 5.文件I/O操作 6.数据库操作 一、网络基础 TCP/IP协议 Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台电脑规定一个地址。
二、端口 端口详解 在开始讲什么是端口之前,我们先来聊一聊什么是 port 呢?常常在网络上听说『我的主机开了多少的 port ,会不会被入侵呀!?或者是说『开那个 port 会比较安全?又,我的服务应该对应什么 port 呀?呵呵!很神奇吧!怎么一部主机上面有这么多的奇怪的port 呢?这个 port 有什么作用呢? 由于每种网络的服务功能都不相同,因此有必要将不同的封包送给不同的服务来处理,所以啰,当你的主机同时开启了FTP与 WWW 服务的时候,那么别人送来的资料封包,就会依照 TCP 上面的 port 号码来给 FTP 这个服务或者是 WWW 这个服务来处理,当然就不会搞乱啰!(注:嘿嘿!有些很少接触到网络的朋友,常常会问说:咦!为什么你的计算机同时有 FTP、WWW、E-Mail 这么多服务,但是人家传资料过来,你的计算机怎么知道如何判断?计算机真的都不会误判吗?!现在知道为什么了吗?!对啦!就是因为 port 不同嘛!你可以这样想啦,有一天,你要去银行存钱,那个银行就可以想成是主机,然后,银行当然不可能只有一种业务,里头就有相当多的窗口,那么你一进大门的时候,在门口的服务人员就会问你说:"嗨!你好呀!你要做些什么事?"你跟他说:"我要存钱呀!",服务员接着就会告诉你:喝!那么请前往三号窗口!那边的人员会帮您服务!这个时候你总该不会往其它的窗口跑吧?! ""这些窗口就可以想成是port 啰!所以啦!每一种服务都有特定的 port 在监听!您无须担心计算机会误判的问题呦! ) ·每一个 TCP 连接都必须由一端(通常为 client )发起请求,这个 port 通常是随机选择大于 1024 以上(因为0-1023有特殊作用,被预定,如FTP、HTTP、SMTP等)的port 号来进行!其 TCP 封包会将(且只将) SYN 旗标设定起来!这是整个联机的第一个封包;
韩顺平java作业
1、做一个加法器,计算他们的和; 2、做一个减法器,计算他们的差; 3、做一个乘法器,计算他们的积; 4、做一个除法器,计算他们的商(和余数) 目的:变量定义、初始化、赋值;运算符和表达式;输出语句。 5、打印5行8列星号 6、打印半金字塔(先打印空格,在打印星号) 7、打印金字塔 8、已知掌上游戏机一台320元,mp3一台260元,公司举行抽奖,公司有18人,一等奖 游戏机,二等奖mp3,购入5台游戏机,13台mp3。问总价是多少,公司实际平均给每人花费了多少钱(4980 276.6666) 9、掌上游戏机一台X元,mp3一台Y元(X,Y由用户输入),公司举行抽奖,公司有30人, 一等奖游戏机5台,二等奖mp313台。问总价是多少,公司实际平均给每人花费了多少钱。 10、10、已知掌上游戏机一台320元,mp3一台260元,公司举行抽奖,公司有30人, 一等奖游戏机X台,二等奖mp3Y台(X,Y由用户输入)。问总价是多少,公司实际平均给每人花费了多少钱。 11、输出九九乘法表,要求行列对齐 12、请使用三个整形变量完成如下功能: 用户输入两个整数值; 计算两数的和,输出此和; 求出两数的平均值,输出平均值(整数即可); 求出平均数>第二个数的关系表达式的值,输出此值; 用第一个数减去上边关系表达式的值,得到他们的差,输出差; 存储第二个数的变量累乘上式的结果,输出次变量的当期值; 存储第一个数的变量累加第二个变量,输出第一个变量的当前值。 测试:输入3 5 得到的分别是:8 4 0 3 15 18 13、渔夫出海打渔,收货若干(36): 渔夫卖掉一半的鱼,然后送给隔壁的海伦3条; 渔夫又卖掉了剩下的鱼的三分之二,自己又吃了一条; 海伦来看渔夫,渔夫家里还剩四条。问他那天打了多少鱼? 14、有一个猴子摘了一堆桃子,当即吃了一半,可是桃子太好吃了,她又多吃了一个, 第二天他把第一天剩下的桃子吃了一半加一个,就这样到第十天早上她只剩下一个桃子,问他一共摘了多少个桃子(1534) 15、计算1+2+3+。。。。+20=?思考如果让用户输入一个整数N,计算累加和: 1+2+3+```+n=? 16、丢手帕问题 17、一元多项式的求和 (1)一元多项式的表示问题,对于任意一个一元多项式: F(x)=a0+a1*X+…+an*xn 可以抽象为一个由系数,指数对构成的线性表,且线性表中各元素的指数项是递 增的:A={ (a0,0),(a1,1),(a2,2),….(an,n)} (2)用一个单链表表示上述线性表,节点结构为:
韩顺平servlet笔记(个人总结版)
第一课 第二课tomcat 简单模拟
package com.my.first; import java.io.*; import https://www.360docs.net/doc/aa17298077.html,.*; publicclass Mytomcat { /** * @param args */ publicstaticvoid main(String[] args) throws Exception { ServerSocketss = new ServerSocket(9999); Socket s = ss.accept(); System.out.println("在9999上等待。。。"); OutputStreamos =s.getOutputStream(); BufferedReaderbr = new BufferedReader(new FileReader("f:\\hello.html")); String str=""; while((str = br.readLine())!=null){ os.write(str.getBytes()); } br.close(); os.close(); s.close(); // ss.close(); } } 在浏览器中输入 http://localhost:9999 就会出现“hello world” 第三课 启动tomcat 各种问题总结
第四课
第五课 虚拟目录 如在f盘存放着各种web应用,但是空间不够了,这是我在d盘弄个文件当做该web应用的文件。但是要在server.xml中指定一下。 步骤:1、在那个磁盘下建立“f:\web2”,并建立相关的资源文件 2、在server.xml中配置
JAVA 使用SQL SERVER 2014 EXPRESS
JAVA 使用SQL SERVER 2014 EXPRESS 这不是一个专家文档,作者在JAVA和SQL SERVER 方面都是菜鸟。本文仅仅记录了作者在学习用JAVA访问SQL SERVER 2014 EXPRESS 中的经过,通过学习系统文档和网络上的文档,最终成功以JDBC:ODBC 和 JDBC 两种方法访问SQL SERVER 2014 EXPRESS。 1:使用JDBC:ODBC 方法 这个方法学自韩顺平的“Java从入门到精通”视频。由于他的课程比较早,里面的JAVA和SQL SERVER 都比较早,所以要略作修改。具体操作方法可以看他的视频。 我的软件环境是: 1.Win7 x64 English 2.Eclipse IDE for Java Developers Version: Kepler Service Release 2 3.Jre7 4.Jre8 (default) 执行语句是: 1.Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 2.Connection ct=DriverManager.getConnection("jdbc:odbc:LearnSQL1"); 当执行第一句装载驱动的时候出来问题,通过网上找原因,最后确认是最新的jr8 不支持。改成jr7就一切OK了。 2:使用JDBC 方法 这个方法同样这个方法学自韩顺平的“Java从入门到精通”视频。不过不知是他当年不需要,还是忽律了部分没讲,仅仅按照他讲的是装载不了驱动的。经过学习,特别是百度文库中“周红花0”的文档“Eclipse 连接 SQL Server 2012数据库 (支持jre1.7)”(以下简称周或周文),成功的完成任务。大部分的操作来着于周的文档,在他的基础上略作修改,在作者的机器上成功运行,不知在其他机器上能否一次成功 。 1.SERVER 授权 如周所说,要用 SQL Server and Windows Authentication mode 方式,否则会错。修改授权登陆方式请看周文中的链接。 2.安装、配置SQL SERVER 大部分同周文,有如下不同。 1:协议名称不同
韩顺平html+css+js之JS笔记
韩顺平html+css+js 之JS笔记 Javascript的基本介绍 ?JS是用于WEB开发的脚本语言: ?脚本语言是什么: ?脚本语言不能独立使用,它和HTML/JSP/PHP/https://www.360docs.net/doc/aa17298077.html,配合使用 ?脚本语言也有自己的变量,函数,控制语句(顺序,分支,循环) ?脚本语言实际上是解释性语言(即在执行时直接对源码进行执行) ?Java程序.java→.class→jvm , js→浏览器(js引擎来解释执行) ?Js在客户端(浏览器)执行 ?因为js是由浏览器来执行的,因此这里有个问题,不同类型的浏览器可能对js的支持不一样。
韩顺平Spring笔记
①spring是什么? struts 是 web 框架 (jsp/action/actionfrom) hibernate 是 orm框架,处于持久层. spring 是容器框架,用于配置bean,并维护bean之间关系的框架 ?spring中有一个非常概念: bean (是java中的任何一种对象javabean/service/action/数据源./dao, ioc(控制反转inverse of control) di( dependency injection 依赖注入) ?画一个框架图 快速入门 开发一个spring项目. 1.引入spring的开发包(最小配置该包把常用的jar都包括, 还要写日志包 2.创建spring的一个核心文件 , [hibernate有核心 struts核心文件 ], 该文件一般 放在src目录下,该文件中引入 xsd文件: 可以从给出的案例中拷贝一份. 3.配置bean
韩顺平java从入门到精通视频教程(全94讲)学习笔记整理(齐全)
java平台 1、J2SE java开发平台标准版 2、J2EE java开发平台企业版 java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序。不同系统上要安装对应的虚拟机才可以运行java程序 开发步骤 1、编写源文件 (.java) 2、编译源文件为类文件(.class)可用J2SE或J2EE编译 3、在虚拟机上运行 注释 //单行注释 /* */多行注释 java内容介绍 java编程可以分成三个方向: 1、java se (j2se)桌面开发 java中的基础中的基础 2、java ee (j2ee)web开发 3、java me (j2me)手机开发 java se课程介绍 java面向对象编程(基础) java图开界面开发 java数据库编程 java文件io流编程 java网络编程 java多线程编程 java ee基础1 java面向对象编程--数据库编程-->java se java 基础2 html--css--javascript-->div+css java ee中级部分 Servlet--Jsp-->mvc模式 java ee高级部分 Struts--Ejb--Hibernate--Spring--Ajax(ext,dw2)-->ssh框架 java之父gosling 1990 sun启动绿色计划 1 | 445
1992 创建oak语言-->java 1994 gosling参加硅谷大会演示java功能,震惊世界 1995 sun正式发布java第一个版本,目前最新是jdk7.0 java开发工具 记事本、(jcreator、jbuilder退出舞台了)、netbean、eclipse 如何选择开发工具 先选择记事本,对java有一定了解后再使用eclipse高级开发工具 为什么呢? 1、更深刻的理解java技术,培养代码感 2、有利于公司面试 java语言的特点 1、java语言是简单的 2、java语言是面向对象的 3、java语言是跨平台(操作系统)的[即一次编译,到处运行] 4、java是高性能的 java第一个程序hello.java 运行java程序要安装和配置jdk jdk是什么? 1、jdk全称java dvevlopment kit中文java开发工具包 2、jdk是sun公司开发的 3、jdk包括jre(java runtime envirnment)java运行环境、一堆java工具和java基础的类库(类共3600左右,常用类在150个左右) 4、可以在https://www.360docs.net/doc/aa17298077.html,下载 **开发安装jdk,用户执行需要安装jre 配置JDK 添加环境变量即可 windows下配置jdk 在计算机属性--高级设置--环境变量--添加PATH将JDK所在路径指定即可。多个环境变量设置时需要用;号进行隔开 1、编写第一个hello.java //注释 (解释) 作者: //功能:在控制台显示"hello" //日期:2013.11.28 //public:表示这个类是公共的,一个java文件中只能有一个public类 //class:表示这是一个类 //hello:类名(公共类的类名必须和文件名一致) public class hello{ 2 | 445
java开发实习报告
郑州轻工业学院 校外实习报告实习名称:软件工程实践 院(系):软件学院 姓名:张婷婷 专业班级:软件工程(卓越计划)12-1 学号:541 校外指导教师:郭苗 校内指导教师:赵晓君 实习单位:昆山杰普软件科技有限公司 成绩: 2015-2016学年第1学期
目录 第一部分实习概括 第二部分实习内容 1.1学习生活........................................... 1.1.1coreJava学习.................................... 1.1.2数据库学习...................................... 1.1.3Javaweb学习..................................... 1.2面试与就业......................................... 2公司实习 ................................................ 2.1工作环境........................................... 2.2工作情况........................................... 3公司项目总结 ............................................ 3.1项目功能实现....................................... 3.2功能模块完善....................................... 3.3测试与上线......................................... 4生活感想 ................................................ 5实习感想 ................................................
韩顺平.2011最新版.玩转oracle视频教程(笔记)
韩顺平—玩转ora cle视频教程笔记一:Oracle认证,与其它数据库比较,安装
Oracle安装会自动的生成sys用户和system用户: (1)sys用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限,该用户默认的密码是change_on_install (2)system用户是管理操作员,权限也很大。具有sysoper角色,没有create database的权限,默认的密码是manager (3)一般讲,对数据库维护,使用system用户登录就可以拉 也就是说sys和system这两个用户最大的区别是在于有没有create database的权限。 二: Oracle的基本使用--基本命令 sql*plus的常用命令 连接命令 1.conn[ect] 用法:conn 用户名/密码@网络服务名[as sysdba/sysoper]当用特权用户身份连接时,必须带上as sysdba或是as sysoper 2.disc[onnect] 说明: 该命令用来断开与当前数据库的连接 3.psssw[ord] 说明: 该命令用于修改用户的密码,如果要想修改其它用户的密码,需要用 sys/system登录。 4.show user 说明: 显示当前用户名 5.exit 说明: 该命令会断开与数据库的连接,同时会退出sql*plus 文件操作命令 1.start和@ 说明: 运行sql脚本 案例: sql>@ d:\a.sql或是sql>start d:\a.sql 2.edit 说明: 该命令可以编辑指定的sql脚本 案例: sql>edit d:\a.sql,这样会把d:\a.sql这个文件打开 3.spool 说明: 该命令可以将sql*plus屏幕上的内容输出到指定文件中去。 案例: sql>spool d:\b.sql 并输入 sql>spool off 交互式命令 1.& 说明:可以替代变量,而该变量在执行时,需要用户输入。 select * from emp where job='&job'; 2.edit 说明:该命令可以编辑指定的sql脚本 案例:SQL>edit d:\a.sql
韩顺平老师java视频课程笔记1-13课
JA V A学习记录 第一讲 //pulic:表示这个类是公共的,一个java文件中只能有一个public类//class :表示这是一个类 //Hello:类名(公共类的类名必须和文件名一致) public class Hello { //一个主函数,相当于是程序的入口 public static void main (String args[]) { /* 多行注释*/ //System.out.println("hello"); int a=10;// 定义一个变量,变量名位a,它的值为10 // int为4个字节,long为8个字节int b=20; int result=a+b //输出结果 system.out.println("结果是"+result) } } 第二讲JA V A基本数据类型 四大类型 整数类型 小数(浮点)类型 基本数据类型 布尔类型 字符类型 1.整数类型 整数类型表示一个整数,常用的整数类型有: byte, short, int, long 范围: byte 一个字节-128 – 127 short 两个字节-32768 - 32767 int 四个字节-2147483648 – 2147483647 long 八个字节 一个字节= 八个byte
例:一个byte 0 0 0 0 0 0 0 1 最高位为符号位0表示正数,1表示负数 1 1 1 1 1 1 1 1 – 0 1 1 1 1 1 1 1 2.小数(浮点)类型 常用类型有float, double 3.布尔类型 可以表示:真或者假,类型是boolean 4.字符类型 表示单个字符,字符类型是char,chai是两个字节,可以存放汉字。 多个字符称为字符串,在java中用String表示,String属于类。 . 在java中,对char进行运算的时候,直接当做ascii码对应的整数对待。(汉字则是unic码) 定义变量int a 初始化变量int a = 45 给变量赋值int a ; a =45 基本数据类型转换 int a = 1.2 错误会损失精度 double a = 4 正确数据类型可以自动从低精度向高精度转换。 byte 韩顺平—玩转oracle视频教程笔记一:Oracle认证,与其它数据库比较,安装 Oracle安装会自动的生成sys用户和system用户: (1)sys用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限,该用户默认的密码是change_on_install (2)system用户是管理操作员,权限也很大。具有sysoper角色,没有create database的权限,默认的密码是manager (3)一般讲,对数据库维护,使用system用户登录就可以拉 也就是说sys和system这两个用户最大的区别是在于有没有create database的权限。 二:Oracle的基本使用--基本命令 sql*plus的常用命令 连接命令 1.conn[ect] 用法:conn 用户名/密码@网络服务名[as sysdba/sysoper]当用特权用户身份连接时,必须带上as sysdba或是as sysoper 2.disc[onnect] 说明: 该命令用来断开与当前数据库的连接 3.psssw[ord] 说明: 该命令用于修改用户的密码,如果要想修改其它用户的密码,需要用 sys/system登录。 4.show user 说明: 显示当前用户名 5.exit 说明: 该命令会断开与数据库的连接,同时会退出sql*plus 文件操作命令 1.start和@ 说明: 运行sql脚本 案例: sql>@ d:\a.sql或是sql>start d:\a.sql 2.edit 说明: 该命令可以编辑指定的sql脚本 案例: sql>edit d:\a.sql,这样会把d:\a.sql这个文件打开 3.spool 说明: 该命令可以将sql*plus屏幕上的内容输出到指定文件中去。 案例: sql>spool d:\b.sql 并输入 sql>spool off 交互式命令 1.& 说明:可以替代变量,而该变量在执行时,需要用户输入。 select * from emp where job='&job'; 2.edit 说明:该命令可以编辑指定的sql脚本 案例:SQL>edit d:\a.sql 3.spool java项目实战视频教程 java项目实战教程视频这篇文档收集了我平时百度网盘共享的一些java视频教程;这里免费分享给大家,希望能帮助到大家,希望大家希望!!谢谢!!! 名称:动力节点_王勇DRP_中国电信客户分析系统视频教程 地址:https://www.360docs.net/doc/aa17298077.html,/s/1Gc58I 名称:OA项目 地址:https://www.360docs.net/doc/aa17298077.html,/s/1EGAve 名称:java基础教程|博客项目 地址:https://www.360docs.net/doc/aa17298077.html,/s/1xfD3b 名称:2009年博客系统项目(共37集,更新完)[37个视频文件+2个rar文件-2.13G+资源大小地址:https://www.360docs.net/doc/aa17298077.html,/s/1racuO 名称:[尚学堂][王建平]【CMS文章内容管理系统(10天)清晰版本配代码】 地址:https://www.360docs.net/doc/aa17298077.html,/s/19qVba 名称:java教学视频|北风网extjs+2项目视频教程 地址:https://www.360docs.net/doc/aa17298077.html,/s/1racsc 名称:传智播客2011年3月9日-2011年7月4日JavaEE+Andriod就业班 地址:https://www.360docs.net/doc/aa17298077.html,/s/169cmt 名称:2012年-2013年传智播客java JavaEE+物联云计算就业班视频教程[完整版]【IT教程网独家共享,互联网上绝无仅有】 地址:https://www.360docs.net/doc/aa17298077.html,/s/1b0XlN 名称:2013传智播客java全套系列视频教程 地址:https://www.360docs.net/doc/aa17298077.html,/s/13Rr5P 名称:张孝祥java视频教程|银行业务调度系统视频教程 地址:https://www.360docs.net/doc/aa17298077.html,/s/147mQB 名称:黑马程序员2012JAVA全套系列视频教程 地址:https://www.360docs.net/doc/aa17298077.html,/s/1EaDH3 名称:北风网--Flex系列从入门到精通配项目案例(S2SH+Mysql实现在线通讯录) 地址:https://www.360docs.net/doc/aa17298077.html,/s/1EGAll 韩顺平jsp学习笔记 jsp u j2ee核心13种技术: 程序员必须掌握的技术:java,servlet,jsp。 13种技术规范. u j2ee程序员修炼成精法门 u jsp 版本的用户管理系统:将servlet版本改为jsp版本,只使用jsp技术完成(modle1模式开发) 并且在后面可通过jsp版的用户管理系统的改写,非常自然过渡到mv设计模式,更进一步到mvc设计模式 开发工具:myeclipse u jsp概述: jsp是servlet技术的补充,访问jsp的过程:如果是第一次访问,jsp文件被服务器翻译成一个对应的java文件(servlet),然后,再被编译成.class文件并加载到内存中。如果是以后访问jsp,那就直接调用内存中的jsp实例,所以,第一次访问jsp慢,后面访问jsp的速度就会变快了。(hello.jsp来说明运行原理:tomcat下的work下有将jsp转换为servlet的代码) 1. 为什么出现:程序员在开发过程中,发现servlet做 界面非常不好,jsp对servlet的补充(对界面的补充,jsp界面好做) 2. jsp=html+java片段+jsp标签(语法)+javascript(css):综合 3. jsp功能的强大是因为可以与javabean结合使用(即:jsp作前台(界面),javabean作后台(逻辑层))。 4. Jsp是什么:1.jsp运行在服务器,2.jsp(java server page)3。Jsp基础是servlet(相当于对servlet的包装)4.jsp 是综合技术:一个公式:jsp=html+java代码+jsp标签 +javascript(css) 比较综合5.jsp无需配置,直接使用,如果你修改了jsp文件,不需要重新reload web应用6.jsp如何访问:http://ip:8088/web应用名.jsp路径u jsp的概述:元素 1. 指令元素 2. 脚本元素 3. 动作元素 u jsp与servlet的关系: 1. jsp与servlet是对应关系 2. jsp是以servlet为基础的 u 编写一个计算器的实例: 1. 表单提交处理的jsp页面为:<form action=”chuli.jsp”>韩顺平玩转oracle视频教程笔记
java项目实战视频教程
韩顺平jsp学习笔记