



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
声明:此文档只适合交流学习,本人学习时笔记。请勿抄袭。2013年后期总结目录2013年12月9日 对Java的初步认识,以及Java环境配置步骤详解,□ma<4-n□inR な岳粕妬!*i刑物”セ米刑狂加シ?やれ帕ア他2013年12月11H Java中循环语句,判断语句,跳转语句及数组的应用。2013年12月12日 for循环语句、while循环语句以及数组的概念及运用。2013年12月16日 面向对象的初步认识,类,属性,方法的认识及运用。2013年12月17日 类和方法的格式及其访问范围2013年12月18日 方法的调用,包的概念,set,get方法的概念及运用。2013年12月24日(平安夜卜 异常的处理,自定义异常处理。内部类的概念及其使用。2013年12月25日(圣诞节)- 异常的处理,自定义异常处理。内部类的概念及其使用。2013年12月第12页 数据库的语句各种使用2014年3月第18页 JavaEE部分2014年4月28页 框架部分1>代码全部编译成二进制文件0.12>一般新机配置Java环境主要的步骤:a.安装jdk(jdk开发环境,jre运行环境)b.配置环境变量:两种配置方法。在path卜.添加jdk安装目录\bin:第一种是在用户环境中javahome中添加jdk女装路径。第二种是在系统环境中classpath添加jdk安装路径.c.启动eclipse后打开windows-prefcencts-General-workspace-other-UTF-8配置字节,码,若不配置的话可能会乱码。3>bin目录下存放的是可执行文件,lib目录下存放的是Java类库文件。4>〃单行注释 Z»ツ多行注释 ノ*・ ッ文档注释 注释过的字节符是不编译的。5>用记事本编写java文件用到的命令。javacdomo.java(编译java源文件)javadomo(运行domo.class字节码文件)javadocdomo.java(生成文档)exit(关闭窗口)java-version(査看jdk版本)6>mainAlt+7快捷出现main方法7>java类的开头•般大写8>数据类型分为两种:a:原始数据类型,共有八种类型(int整型32,double双精度64,float単精度32,char字符串16,boolean布尔型(只行两个值true和false)!〇short短整型16,long氏整型64,byte字节型8).后面跟的是位数,一个字节=8位。一个汉字两个字节.总而言之可以归纳为四种类型整型、字符型、浮点型、布尔型。b:引用数据类型(除了八种原始数据类型外全部的数据类型,例如String类型)。9.同一作用域下变量不能够重复定义,否则会出现错误。2013年12月10日 1>定义在方法中的变最称为局部变量。2>局部的成员变量必须初始化,否则无法ス接调用。3>全局变量可以不赋初始值,int初始值为〇,double为0.0,float为〇.。,byte为〇,char为空,short为〇,boolean%flase,long为〇。4>浮点型默认是double型,如果想使用float,那么在后面加上f, 例floatf=L25f:5>变量的使用寻找最近的变最,若是找不到会扩大范围寻找。6>内存=栈内存(基本数据类型数据)+堆内存(引用数据类型数据)。7>引用类似于C++中的指针。8>关键字命名区分大小写9>变量只在作用域范围内使用,程序结束了,生命周期结束。1。>数据转换类型分为两种(不同数据类型之间的转换称为数据类型转换):a.自动数据类型转换:遵循原则(1)两种类型互相兼容(2)目标数据类型大于源数据类型。b.强制数据类型转换(显式类型转换)定义:遵循原则(1)两种类型互相兼容(2)格式为(目标数据类型)源数据。c.强制类型的过程中若是目标数据类型小于源数据类型,可.能会发生数据丢失。11>可以发生自动类型转换的几种类型如下:float—>doublebyte->short->int->longchar-->int—>long12>强制类型转换可能会出现精度的的损失,浮点型转换小数部分会舍去。 例:doublea=(int)1.23结果为113>通常我们在打出符号"或者、的时候都没有办法正常•输出来,这时可以用转意字符、例:输出"的时候应该是"'"",''则是、14>关系运算符(ー共八种):一元运算符如下:++、ー、二元运算符如下:+、・ヽ・、ノ、%。15>做算术运算的时候结果的数据类型与参与运算的最高的数据类型相同(与大数据相同)。16>++i是先加后运算 i++是先运算后加例子i=10:i+++++i16>++i是先加后运算 i++是先运算后加17>关系表达式有6种,结果是boolean类型,只有两个值,true,fiasco6种分别如ド:==!=< <=> >=例子:inta=10.intb=15booleanresult=a>b结果为flase。18>赋值运算符永远是在最后オ进行运算的。19>逻辑运算符如ド:逻辑或|逻辑ワ&短路或|| 短路O&&逻辑与短路之间的区别:逻辑或所运兑的式子所有的不管能否判断的对错与否都会全部的运行一遍,但是短路或若是第一判断正确足以确定此题的结果那么将不会往下运算了。20>Java中对于标识符的命名规则作了如下限制:只能由英文字母、数字、下划线“二’和“$”符号组成:必须以英文字母、、”或“$”开头,即不能以数字开头:除“二’和“$”以外,不能包含其它任何特殊字符:不能与关键字冲突:严格区分大小写。2013年12月11日 1〉关于控制台的输入代码:Scannersc=newScanner(System.in);2>关于接收控制台的输入数据代码:sc.nextlnt。;类型可以根据情况定义。3>成员变量(全局变量),局部变量。4>i+=j,相当于i=i+j。5>不同类型之间运算可能会发生精度损失 例子:inti;doublej;i+=j;j+前谁保存的结果就是谁的数据类型。6>三元运算符: 表达式1?表达式2:表达式3 若表达式1成立则执行表达式2.若是不成立则会执行表达式3.intk=i>j?i:j。例子:Scannersc=newScanner(System.in);System.out.println(N请输入第一个数:inta=sc.nextlnt();System.out.println("请输入第二个数:");intb=sc.nextlnt();System.out.println("请输入第三个数:");intc=sc.nextlnt();inti=a>b?b:a;//a和b中最小的数i=i>c?c:i;〃abc三个数种最小的数intk=a>b?a:b;k=k>c?k:c;//abc最大的数intj=(a>i&&a<k)?a:(b>i&&b<k)?b:c;〃分别用a,b,c三个数进行比较,取中间的数System.out.println("三个数从小到大排列依次为:"+i+","+j+","+k);7>换位思想inti;intj;intsum=i;i=j;j=sum;这种思想类似于两杯水和个空杯互相调换水的位置。8>取个位十位百位千位的代码:Scannersc=newScanner(System.in);System.out.println("请输入ー个四位数的整数:");inta=sc.nextlnt();intal=a/1000;inta2=a%1000/100;inta3=a%1000%100/10;inta4=a%1000%100%10;System.out.println("千位:"+al);System.out.println("百位:"+a2);System.out.println("十位:"+a3);System.out.println("个位:"+a4);9>if()条件语句如果成立的话将会执行后面{}里面的语句。在if()后面若是不加10的话只能控制if()后面的一条语句。10>ifelseif,中若成立将会执行1,若不成立将会执行语句2,执行到哪个成立了就会停止执行。而if,语句不管成立不成立都会・直执行下去。如果有多个if语句,那么else将与最近的・个if语句相配对。else不能够单.独使用,都则会出错。ll>switch case语句中注意后面结束的时候要加break,否则将・直执行下条语句,直到执行完.default语句是类似于else的功能。12>switchcase语句中所支持的数据类型为char型,byte型,int型,short型。2013年12月12日 l>closePriject是关闭暂时不用的工程。2》不同版本jdk的工程相互导入时出现的错误时的解决方案:单击工程右键调出BuildPath-ConfigureBuildPath-libraries中删除jre后再添加一个新的jre,在c盘下的jre的安装目录3>system.out.print(""+a+b+c);若是前面不加符号的话,括号里面的数据就被当做是加起来运算,而不是字符串连接。4>while(表达式){循环语句}表达式为boolean型,若为true的话将执行语句,否则将不会执行。5>\t换单元格'n是换行。6>while(表达式){循环语句}可以可以作为一个判断的计时器,一直到判断成立后オ结束判断。7>dowhile是先循环后判断,因此语句至少会被执行ー次。8>for(表达式1,表达式2,表达式3):表达式1先执行后执行表达式2进行判断,若是成立的话将会执行循环语句,再执行表达式3后再跳回2中进行判断。若是不成立的话将会退出循环。9>我达式1只执行・次,变量的初始化。10>f。比;}死循环。提示错误,无法到达此语句。{)可以是1-3个表达式。ll>break是跳出当前循环,continue跳出当次循环,继续执行卜.次循环。12>数组引用类型.卜.标从。开始。引用类型必须使用new开辟新的内存空间•注意数组ド标越界。13>两个数组地址指向ー个数组,数组改变则全部改变。引用赋值不是复制而是把地址给了另ー个引用类型。2013年12月16日 1>面向对象性编程,就是使用对象进行程序设计简写OPPo2>类时抽象的,对象时具体的。 类ー-ー属性一一方法3>publicclassStudent{intage;Stringname;privatecharsex;StringstNo;publicvoidsetSex(charsex){/Z修改器。。。。。 。。。this.sex=sex;publicchargetsex(){returnsex;publicvoideat(){System.out.printin("姓名:"+name+"\n"+"性别:"+sex+"\n"+"编号:"+stNo+"\n"+"年龄"+age+”ーー在打三国战纪ッ;publicvoidfuck(){System.out.println(name+"—在文思海辉工作");)publicstaticvoidmain(String[]args){Studenta=newStudent();Studentb=newStudentO;a.age=20;="李胜飞";a.sex='女’;a.stNo="000001";a.eat();a.fuck();b.age=22;="蛋飞";b.sex='女';b.stNo="000002";b.eat();))4>类是由属性和方法共同组成的,类中可以只有属性或者方法。5>封装(隐藏属性.方法)6〉继承代眄的重用。7>多态性灵活性。8>java的入口方法是main方法。 类名引用名=new类名():实例化。9>ー个文件里面可以有多个类,只有一个是公共类。1。>私有的只能够在内部访问,外部是无法访问。11>类的设计原则:a属性通常设置为private,只只能够在本类中使用。b成员方法通常设置成public类型,可以随意的访问。12>实例化一个对象,彫参和实参。13>构造方法与类同名。.访问权限为public(当前)。.构造方法名称与类同名。.没有返冋值类型。.有java虚拟机调用。.如果没有显示定义构造方法,系统会提供•个无参的构造か法。•般不会使用.public类名(){} return关键字返冋值,可以作为结束语句。2013年12月17日ー1>所谓的私有数据在其他类中不能好访问是指直接访问。可以使用构造方法为数据成员赋值(构造方法最常见)peopleaa=newpeople("wang"/12333")访问权限类名(形参列表){方法体}构造方法主要是为了分配资源,变量的初始化。2>常见的特殊的方法:构造方法和main函数。每个对象必须执行一次。3>经过运律或者是相关的处理给出的结论叫做业务逻辑处理。4>return语句后面不能够跟语句,应该是程序的最后一条话・句。5>无返回值的方法中也可以放return6>访问权限返回值类型方法名称(形参列表){方法体}带参方法一般的格式7》重载,重写,多态性的体现:重载:1.方法名相同2.参数列表不同,数量顺序,类型。3.统一作用域。8>亜我是成员变量拥仃共同的成员方法。9>set方法为修改牆,gat方法为读取获得2013年12月18日 1>成员方法指向调用它的方法,引用初始值不赋值的话默认为null2>类属性和成员属性之间的名相同,赋值格式一般为=name;这个是必有。this总是指向当前对象。即上面的定义的全局变量,即局部变量名称=全局变量名称。3>引用全局变量必须是显示引用this关键字。为显示调用。隐式调用为nname=name;4>静态变量,变量共享,调用它的成员方法必须是静态,静态变量是共有的,可以用作访问量,或者是银行卡存钱。5>静态方法中只能够引用静态成员变量,静态的成员变量可以放在非静态的成员方法中使用。6>静态的成员变量属于当前类的,可以直接通过类名进行访问。不需要创建对象。格式为类名,方法名〇7>非静态成员方法虽然是所有对象共享的,但还是属于对象的。8>静态成员方法中没有this关键字。9>定义时应该注意包名不应该相同,在・个文件中加载「多个包,Ctrl+shift+D删除多余的包。10>this关键字总是指向当前对象。ll>set,get方法的格式,set方法中带有参数而且是没有返冋值的,而get方法中却是有返冋值的。publicStringgetName(){returnname;)publicvoidsetName(Stringname){=name;)2013年12月19日 1>继承的可以实现代码朮用,基类为父类,派生类为子类。子类继承父类之后所拥有的方法为(父类+子类)方法和属性。继承用关键字关键字extends来实现。publicclassbextendsa意思就是类b继承了类a。2>构造か法是不能够别显小调用,广•类对象创建的条件是父类必须先被创建出来。用super关键字调用,若是实例化失败则J’•类没有办法实例化。3>super. 关键字可以调用父类的构造方法和父类的属性变量。类似this4>単继承一个派生类只可以继承一个基类。不可逆。5>作用位置:类属性和方法。 访问位置:本类,本包中的类,非本包中的类,非本包中的子类。类上面可以访问的范围是:public缺省属性上:publicprivatepretected缺省6>各个属性的访问范围:public全部都可访问private本类中其余均不可protected本类,同包中的子类和非子类,非本包中的子类。缺省本类,本包中的子类和本包中的非子类。7>多态,重载重写・2013年12月19日 1>抽象类的定义及实例化:publicabstractclassPlanel{publicabstractvoidfly();publicabstractvoidland();)classCopterlextendsPlanel{publicvoidfly(){//TODOAuto-generatedmethodstub)publicvoidland(){//TODOAuto-generatedmethodstub))2>接口的定义:publicinterfaceIPIane{publicvoidland();2014.1.121.査询语句:(査询全部)select*from表名(插入数据)insertinto表名values(值)(删除数据)deletefrom表名where条件(更改数据)update表名set修改语句where条件语句2013年12月24日平安夜 1>异常处理,常遇到的异常有如下几种:Exception异常层次结构的根类,可以捕捉到任何的错误ArithmeticException算术异常,如:除数为0HlegalArgumentException方法接收到非法参数ArraylndexOutOfBoundsException数组ド标越界NullPointerException访问空引用ClassNotFoundException不能加载所需的类NumberFormatException字符串转换数字失败lOExceptionI/O异常的根类FileNotFoundException找不到文件EOFException文件结束RuntimeException许多java.lang异常的基类2>如果遇到错误的话会直接停止运行,不会往下运行了。3>Exception类是所有的异常类的父类。printStackTract()是打印全部信息,堆栈信息。4>finally不管有没有抛出异常这句话都会执行。5>trycatch组合方式两种:try—catch try—finally6>异常层次越高越往下放,否之お的异常会报错。7>trycatch套用各自处理各自所掌握了语句。8>创建异常 必须继承〉Exception类。9>throw(newAgeExceptionf))J手动抛出。内部处理,那里出现了错误就在哪处理。10>throws将内部异常抛给了主调用函数publicclassThrowDemo{/Z函数内部处理(哪里出现异常哪里处理)publicvoidsetAge(){System.out.print("请输入年龄age:");Scannerscanner=newScanner(System.in);intage=scanner.nextlnt();if(age<011age>120){try(throw(newAgeException。);}catch(AgeExceptione){e.printStackTrace();}}else{System.out.println("你的年龄是:"+age);)//使用throws关键字将异常抛给主调函数publicvoidsetAgel()throwsAgeException{System.out.print("请输入年龄age:',);Scannerscanner=newScanner(System.in);intage=scanner.nextlnt();if(age<011age>120){throw(newAgeException());)else{System.out.println("你的年龄是:"+age);ThrowDemodemo=newThrowDemof);demo.setAgelO;)publicstaticvoidmain(String[]args){ThrowDemodemo=newThrowDemo();demo.setAgeO;try(demo.fun();}catch(AgeExceptione){e.printStackTrace();ll>n内部类:publicinterfaceIlnnerClass{publicvoidfun();publicclassTestlnner{privateStringname="NUT";publicvoidtest(){//IlnnerClassinnerClass=newlnnerClasslmpl();IlnnerClassinnerClass=newIlnnerClassO{@Overridepublicvoidfun(){System.out.println(name);System.out.println("--FUN1——");innerClass.fun();publicstaticvoidmain(String[]args){Testlnnertestlnner=newTestlnnerf);testlnner.test();数据库部分修改密码:Usemysql;Updateusersetpassword=(Mroot")whereuser=/root,;conndiscpasswpasswordusername(管理员操作)exitcreateusertest(用户名)identifiedbytest(密码);比较常用的3中角色:connect(连接)、dba,resource(给予资源,如建表、表空冋授权等功能)SQL>dropusertestcascade;SQL>grantconnecttotest;SQL>createprofilelock_accountlimitfailed_login_attempts3password_lock_time2;配置文件已创建SQL>alterusertestprofilelock_account;SQL>alterusertestaccountunlock;mysql>showdatabases;mysql>usetest;mysql>showtables;mysql>select*fromtbl_student;mysql>insertintotbl_student(id,username,age)values(default,'NIIT4',20);mysql>desctbl_student;mysql>deletefromtbl_studentwhereid=6;mysql>updatetbl_studentsetage=25whereusername='niit2,;对数据库的操作:增、删、改、査mysql>select*fromtbl_scorewheresnoin(101,105)ordegree>83;并集(满足A的条件或者满足B的条件)mysql>select*fromtbl_scorewheresnoin(101,105)anddegree>83;交集(满足A的条件并且满足B的条件)mysql>select*fromtbl_scorewheresnoin(101,105)anddegree<=83;差集(A-B:满足A的条件单是不满足B的条件)mysql>select*from(select*fromtbl_scorewheredegree>83)tbl_tempwheresno=101;成绩大于83的学号为101的mysql>selectavg(tbl_temp.degree)from(select♦fromtbl_scorewheredegree>83)tbl_temp;成绩大于83的平均分数食询出每ー门课程中比sno=101的同学成绩高的学生mysql>selecttbl_score.scid,tbl_score.sno,tbl_o,tbl_score.degreefromtbl_score,(select*fromtbl_scoregroupbyenohavingsno=101)tbl_tempwheretbl_o=tbl_oandtbl_score.degree>tbl_temp.degree;貪逸出stdl的没门课程的成绩mysql>selecttbl_student.sname,tbl_ame,tbl_score.degreefromtbl_student,tbl_course,tbl_scorewheretbl_score.sno=tbl_student.snoandtbl_o=tbl_oandtbl_student.sno=101;case使用selectdegree,(casedegreewhen90then'A'when88thenBelse'C'end)gradefromtbl_scorewherescid=l;selectdegree,(casewhendegree>89then'A'whendegree>88then'B'else'Cend)gradefromtbl_scorewherescid=l;table创建mysql>createtableifnotexiststbl_user(uidint(10)notnullauto_increment,usernamevarchar(45)notnull,ageint(10),primarykey(uid));mysql>createtableifnotexiststbl_userl(uidint(10)notnullautojncrementprimarykey,usernamevarchar(45)notnull,ageint(10));mysql>createtableifnotexiststbl_user2(uidint(10)notnull,usernamevarchar(45)notnull,ageint(10));table删除mysql>droptableifexiststbl_user;mysql>droptabletbl_userl;添加主键mysql>altertabletbl_user4addconstraintprimarykey(uid);删除主键mysql>altertabletbl_user4dropprimarykey;外键当前表中的外键要是引用表中的主键外键的数据类型要与引用表中的数据类型•致创建表的时候加入外键mysql>createtabletbl_teacher(tnointegernotnullautojncrementprimarykey,tnamevarchar(45)notnull);mysql>createtabletbl_course(cnointegernotnullauto_increment,tnointegernotnull,cnamevarchar(45)notnull,primarykey(cno),constraintfk_teacherforeignkey(tno)referencestbl_teacher(tno));建表之后加入外键mysql>altertabletbl_courseadd>constraintfk_teacherforeignkey(tno)referencestbl_teacher(tno);删除外键mysql>altertabletbl_coursedropforeignkeyfk_teacher;check约束(mysql中的check约束只起到标识作用)mysql>createtabletbl_uer(uidintegernotnullautojncrementprimarykey,usernamevarchar(45)notnull,sexchar(2)check(sex='F'orsex='M'));set约束mysql>createtabletbl_user(uidintegernotnullautojncrementprimarykey,usernamevarchar(45)notnull,sexset('F'/M'));添加UNIQUE约束(建表同时)mysql>createtabletbl_user(uidintegerauto_incrementnotnull,usernamevarchar(45),sexset('F','M'),primarykey(uid),uniquekey(username));添加UNIQUE约束(建表之后)mysql>altertabletbl_useraddconstraintununique(username);删除UNIQUE约束mysql>altertabletbl_userdropindexun;建立索引mysql>createtabletbljndex(idintegerautojncrementnotnull,namevarchar(45),ageintegecprimarykey(id),index(name));添加索引mysql>createuniqueindexunid_userontbl_user(username);删除索引mysql>dropindexunid_userontbl_user;创建视图(虚拟的表)mysql>createorreplaceviewstudent_gradeasselecttbl_student.sname,tbl_ame,tbl_score.degreefromtbl_student,tbl_score,tbl_coursewheretbl_score.sno=tbl_student.snoandtbl_o=tbl_o;删除视图mysql>dropviewstudent_grade;显示当前视图mysql>showcreateviewstudent_grade;js部分//JavaScriptDocument<!-变量的定义及输出ー〉functionfun(){!-JS变量时弱变量类型->varstr="HelloWorld!";i=15;!-页面上直接输出的数据,当页面加载的时候就被输出ー〉document.write(str);}<!--if else语句—>functionfunl(){vardate=newDate();vari=15;varhour=date.getHours();if(hour<10){〈トーalert弹出警告框->alertC'Hello");}elseif(i==15){alert("i==15");)else{alert("World");))<!-switch->functionfun2(){vardate=newDate();vard=date.getDate();switch(d){alert(18);break;alert(19);break;alert(20);break;default:alert("default");))<!-消息框->functionfun3(){varresult=confirm("确认退出?");if(result){alert("退出");}else{alert-取消");functionfun4(){varname=prompt("lnputYourName","*');if(name!=null&&name!={alert(name)))functionguess(){varcount=3;//如果num为非零数字的话都表示true»只有当num为零的时候为falsewhile(count){varnumber=prompt("猜数字游戏,请输入ー个数字ッ巧;if(number==20){alert("恭喜你猜对了!”)count=0;}elseif(number<20){count--;alert("你猜的数字偏小,你还有"+count+"次机会");}elseif(number>20){count--;alert("你猜的数字偏大,你还有"+count+"次机会");}else{count—;alert("你输入的不是数字,你还有"+count+"次机会");}}}/Z带返回值,并且带有参数的函数functionfun5(str){varstrl=str+'*NUT'*;returnstrl;)//forinfunctionfun6(){vararrays=newArray();arrays[0]="NIIT1";arrays[l]="NIIT2";arrays[2]="NIIT3";〃ar代表数组的卜.标for(arinarrays){document.writeln(arrays[ar]);))functionfun7(){vartd=document.getElementByld("uid");td.bgColor="ftFFOOOO";)functionfun8(){vartd=document.getElementByld("pid");td.bgColor="ffFFOOOO";)functionfun9(){vartdl=document.getElementByldCuid'*);vartd2=document.getElementByld("pid");tdl.bgColor="#FFFFFF";td2.bgColor='*#FFFFFF";}//trycatchfunctionfunlO(){try(arerealert("HelloNUT");/Z此方法不存在}catch(errl){alert(errl.description);)functionstartTime(){vartoday=newDate();varh=today.getHours();varm=today.getMinutes();vars=today.getSeconds();//addazeroinfrontofnumbers<10m=checkTime(m);s=checkTime(s);document.getElementByld('txt').innerHTML=h+":"+m+":"+s;/Z让startTime()方法每隔500亳秒执行ー次setTimeout('startTime()',500);)//如果数值小于9前面加〇functioncheckTime(i){if(i<10){i="0"+i)returni}//操作cookiefunctiongetCookie(c_name)(if(document.cookie.length>0)(c_start=document.cookie.indexOf(c_name+"=")if(c_start!=-l){c_start=c_start+c_name.length+lc_end=document.cookie.indexOf(";M/C_start)if(c_end==-l)c_end=document.cookie.lengthreturnunescape(document.cookie.substring(c_start,c_end))))return"")functionsetCookie(c_name,value,expiredays)(varexdate=newDate()exdate.setDate(exdate.getDate()-^expiredays)document.cookie=c_name+"="+escape(value)+((expiredays==null)?"":expires="+exdate.toGMTString()))functioncheckCookieO(username=getCookie('username')if(username!=null&&username!=""){alertfWelcomeagain,+username+,!')}else(username=prompt('Pleaseenteryourname:',*"*)if(username!=null&&username!=****){setCookie('username',username,365))))/Z对表单进项验证functionfunl2(filedName,textAtt){with(filedName){if(value==null11value==巧{alert(textAtt);returnfalse;}else{returntrue;)))functionvalidate_form(thisform){with(thisform){if(funl2(username,"Usernamemustbefilledout!")==false){/Z使某个域获得焦点username.focusO;returnfalse;functionfunl3(){/Z通过name拿到相应的表单域varuserFiled=document.getElementsByName("usernamel").item(0);/Z通过id拿到相应的表单域varuserFiledl=document.getElementByld("uidl");if(userFiled.value==null11userFiled.value== (alert("用户名不能为空!");userFiled.focus();returnfalse;}else{returntrue;}}functionfunl4(){varform=document.getElementByld("forml");varuserFiled=document.getElementsByName("username2").item(0);varspan=document.getElementByldf'errorMessage");if(userFiled.value==null11userFiled.value==""){span.style.fontSize="12px";span.style.color="red";span.innerHTML="*用户名不能为空”;userFiled.focus();}else{form.submit();))functionfunl4_l(){varuserFiled=document.getElementsByName("username2").item(0);varspan=document.getElementByld("errorMessage");if(userFiled.value.length>0){span.innerHTML="";))functionfunl4_2(){varuserFiled=document.getElementsByName("username2").item(0);userFiled.value="";)//with关键字的用法,with中存放的是将要操作的域或对象functionfunl5(){with(Math){varnum=abs(-12);varmaxNum=max(20,25);)alert(num);alert(maxNum);)/Z图像地图的显示内容functionfunl6(text){vartextshow=document.getElementByld("pidl");textShow.innerHTML=text;)〃计时秒表varcount=1;〃记录按钮显示的varc=0;/Z秒表计数所用vart;/Z变换按钮functionfunl7(){varbtn=document.getElementByld("blM);if(count%2==0){funl7_3();btn.value="Start";count++;}else{funl7_2();btn.value="Stop',;count++;))/Z重置functionfunl7_l(){funl7_3();count=1;c=0;document.getElementByld("bl").value="Start";document.getElementByld("timeld").value=0;)/Z计数functionfunl7_2(){document.getElementByld("timeld").value=c;C++;t=setTimeout("funl7_2()",1000);)/Z停止计数functionfunl7_3(){vark=15;dearTimeout(t);)/Z创建对象functionfunl8(){obj=newObject();obj.Name="NUT";alert(obj.Name);)j2ee部分:MyEclipse安装及其使用:.在任意的位置安装MyEclipse.搜索Tomcat配置添加tomcat文件夹导入文件,再在c盘中添加jdk路径。.worksapace中配置为utf-8编码,jps,html全部配置成utf-8编码方式后就可以正确使用了。配置过滤器的步骤:.编写过滤器publicclassFilterimplementsFilter{privateStringcharacter;publicvoidinit(FilterConfigargO)throwsServletException{System.out.println("…・过滤器被初始化一character=arg0.getlnitParameter("encoding");〃获取配置文件中名字为encoding的值}publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainarg2)throwslOException,ServletException{System.out.println("--过滤器被执行ーrequest.setCharacterEncoding(character);〃将request和response设置成utf-8编码方式response.setCharacterEncoding(character);arg2.doFilter(request,response);〃此方法是告诉过流器向下执行其它的过滤器或者是Servlet)publicvoiddestroy!){System.out.printlnf"-ー过滤器被销毁—");)).在web.xml文件中配置过滤器<filter><filter-name>encod</filter-name>〃名称及其路径<filter-class>com.niit.filter.EncodingFilter</filter-class><init-param><param-name>encoding</param-name>〃编码方式及其名称<param-value>utf-8</param-value></init-param></filter><filter-mapping><filter-name>encod</filter-name>〃根据名称找到对应的文件的路径<url-pattern>/*</url-pattem>〃名称及其表示何servlet从此过港器做出请求</filter-mapping>.<l-URL传参使用的是get方式传参-><ahref=',servlet/UrlServlet?name=niit&password=0000">llr!传参</a><br/>.连接数据库取数据核心代码:conn=DBUtil.getConnection()J〃获得数据库的链接statement=conn.createStatement();〃防止注入Stringsql="select*fromtbl_user";resultSet=statement.executeQuery(sql);/Z遍历结果集while(resultSet.nextO)(〃遍历把集合全部封装在对象里面user=newUser。;user.setName(resultSet.getString{"username"));user.setSex(resultSet.getString(3));user.setAge(resultSet.getlnt("age"));users.add(user);.当前端页面提交的方式为get的时候执行doGet方法当前端页面提交的方式为post的时候执行doPost方法.获取配置文件web.xml中的数据:value=config.getlnitParameterf'key");.默认执行doGet方法,若是找不到doget执行的是将会报出doGet方法找不到的错误客户端请求的所有请求信息全部被封装到了request中,Servlet只需在request中读取就可以客户端发送过来的数据,在Servlet中接收的时候全部看做是String类型□.request:请求作用域,一个请求一个相应session:会话作用域,失效情况:1.服务器关了:2.浏览器关了:3.session到期了(30分钟)session数据是保存在服务器端,cookie是保存在客户端,两者相似12..接受页面表单传来的数据:username=request.getParameter("uname");13..把数据存在session中(服务器端):request.getSessionO.setAttributef'username",username);//相当于ー个map前者是key值,后者是value值.在前端页面显示存在session中的值:<%=session.getAttribute("username")%>.request.getRequestDispatcher("../success.jsp").forward(request,response);/Z请求转发.response.sendRedirect("../fail.jsp");/Z重定向.<formaction="servlet/loginServlet"method="posビ》衣示表单请求的servlet的路径和方法。.request是内置对象。容器为用户(web容器tomcat)实例化,用户直接使用。pagecontext:只在・个页面中保存属性,跳转之后无效request:只在ー次回话中保存,服务器跳转后依然有效session:在次会话范围中,无论何种跳转都可以使用,但是新开的浏览器中无法使用.application:在整个服务器上保存,所有用户都可以使用。.把值时装在对象里面取出來:UserBeanuserBean=newUserBean();session.setAttribute("123",userBean);//ftiuserBean对象存在session作用域内UserBeanuserBean=(UserBean)session.getAttribute("123");〃取出来对象Username:<%=userBean.getUsernameO%xbr> 〃对象再调用值Password:<%=userBean.getPassword()%><br>.配置名称和指定路径的类还有作用域范围:<jsp:useBeanid="userBean"class="com.niit.bean.UserBean"scope="session"x/jsp:useBean>获取值用的:<jsp:getPropertyproperty="username"name="userBean"/><jsp:getPropertyproperty="password"name="userBean"/>!-ー自动匹配所有的属性值-><jsp:setPropertyproperty="*"name="userBean"/>1ー自动匹配指定的属性值-><jsp:setPropertyproperty="username"name="userBean"/>1•・自动指定的属性值赋值ー〉<jsp:setPropertyproperty="username"param="password"name="userBean"/>.JavaBean:publicget,set方法无参的构造方法request.getRemoteAddr();〃获取IP值include是载入把当前页面的信息载入到另ー个页面中H.地址不变.遍历集合:<c:forEachvar="user"items="${users}">//usre是定义的名称,users是集合的对象。${user.username}${user.password}</c:forEach>.el表达式:UserBeanuserBean=newUserBean();userBean.setUsername("NNIT,');userBean.setPassword("0000");${username}〃直接取值${password)${user.username)${user.password}爱好:<inputtype="checkbox"name="habit"value="Reading">i^45(inputtypeゴcheckbox"nameゴhabiピvalueゴMusic"〉听音乐<inputtype="checkbox"name="habit"value="Travelling">^i^<br/>pageContext:提供对页面属性的访问<br/><!-获取用户的IP地址ー〉${pageContext.request.remoteAddr}<br/><!-获取当前页面的地址ー〉${pageContext.request.requestURL}<br/><hr/>param:返冋客户端的请求参数的字符串偵<brノ〉用户:<%=request.getParameter(',username")%><br/>密码:<%=request.getParameter("password")%><br/>用户:${param.username}<br/>密码:${param.password}<br/><hr/>paramValues:返回映射至客户端的请求参数的ー组但<br/〉${paramValues.habit[O]}<br/><!-如果想全部输出的话,要借助于JSTL-〉<c:forEachitems="${paramValues.habit}"var="habit">${habit}</c:forEach><hr/>cookie:返回映射至单个Cookie对象・的Cookie名称<brノ〉${cookie.cName.value}<br/><hr/>initParam:返冋映射至单个值的上ド文初始化参数名称<br/><%=this.getServletContext().getlnitParameter("pNameN)%><br/>${initParam.pName}<hr/><!一如果想让ド面的语句按原格式输出的话,那么要把ッ前页面的EL表达式禁用掠或者使用转义字符ー〉\${123}<!-设置所有的JSP页面的EL表达式不可用ー〉<jsp-config><jsp-property-group><url-pattern>*.jsp</url-pattern><el-ignored>false</el-ignored></jsp-property-group></jsp-config>在配置文件中配置属性值<context-param><param-name>pName</param-name><param-value>Param-Value</param-value></context-param><%Cookiec=newCookie("cName","niit");response.addCookie(c);%>jstl标签库<c:setvar="num"value="15"x/c:set><hr/>使用c:if标签<br/〉test:用来指定条件判断的表达式var:测定结果的变量名,用来保存条件判断的结果ー〉<c:iftest="${num>5}*'var="result">HelloNIIT!<br/>${result}<br/><hr/>使用c:out标签vbr/>value输出的值,通常里面放的是el表达式default:默认值escapeXml:是否按原格式,是否过滤XML<c:outvalue="${num)"default=""escapeXml=",'x/c:outxbr/><c:outvalue="${numl}"defau^^defalutValue"escapeXml=M"x/c:outxbr/><c:outvalue=M${'<h3>Hello</h3>'}"default="defalutValue"escapeXml="true"x/c:outxbr/><hr/>使用c:set,c:remove标签<br/><!-var:变量名value:变最值target:var和target属「两个不同版本,var设置基本变量,target用来设置bean属性property:bean中的属性值—><c:setvalue="123Mvar="number"x/c:set><c:removevar="number”/>${number}<br/><c:settarget="${user}"property="usemame"value="NIIT"x/c:set><c:settargetゴ${user}"property="password"value="llll"x/c:set>用户:${user.username}<br/>密码:${user.password)<br/><hr/>使用cxatch标签<br/><1-var:存放异常信息-><c:catchvar="cat"><%inti=10/0;%></c:catch>${cat}<br/><c:iftest="${cat=='java.Iang.ArithmeticException:/byzero')"><spanstyleゴ'color:red">除数不能为零</spanxbr/></c:if><hr/>使用c:choose<br/><!-cxhoose标签单独不能使用c:when相当于if语句(可以有1个或者多个)c:otherwise相当于else(只能有1个或者〇个)—><c:choose><c:whentest="${num==123)">Hello</c:when><c:whentest="${num==15}">World</c:when><c:otherwise>NIIT</c:otherwise></c:choose><hr/>使用c:forEach标签<br/>items:将要进行循环遍历的集合(通常用EL表达式接收相应的集合对象)var:代收当前遍])]集合的对象begin:开始的条件(从第几条数据开始遍历)默认值为〇end:结束的条件,缺省值为集合的尺度step:代表步长,默认值为1varStatus:通示循环状态的变量,此变量ド行如卜.属性:cout:计数器从1开始index:索弓|ド标从。开始ー〉<tableborder="l"width="600"><tr><th>编号</th><th>用户〈八h><th>密炽/th></tr><c:forEachitems="${users}"var="user"begin="O"end="4"step="l"varStatus="status"><tr><td>${status.count}</td><td>${user.username}</td><td>${user.password}</td></tr></c:forEach></table><hr/>使用c:forTokens标签<br/><c:forTokensitems="${strs}"delims=",Mvar="str">${str)<br/></c:forTokens><%@pagelanguage="java"contentType="text/htmI;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"><title>lnserttitlehere</title></head><scripttype="text/javascript">//XMLHttpRequest对象是浏览器内部对象,用来发送HTTP请求和接收HTTP响应varxmlHttp;/Z创建XMLHttpRequest对象functioncreateXMLHttpRequest(){if(window.ActiveXObject){//不同浏览器所用的不同xmlHttp=newActiveXObjectf'Microsoft.XMLHTTP");}else{xmlHttp=newXMlHttpRequest();〃如果不是ie浏览器的话就币:新创建一个functionshowData(){〃1.创建XMLHttpRequest对象createXMLHttpRequest();〃3.向服务器发送请求varurl="servlet/ShowDataServlet";xmlHttp.open("GET",url,true);〃打开数据通道//onreadystatechange属性存有处理服务器相应的函数,处理服务器的响应xmlHttp.onreadystatechange=callback;xmlHttp.send(null);〃发送数据setTimeoutCshowDataO,,200〇);〃两秒钟刷新次页面〃回调函数,处理服务器响应functioncallback(){readyState的值有。、1、2、3、40:请求未初始化(在调用open〇之前)1:请求已提交(调用send。之前)2:请求已发送(这里通常可以从响应得到内容的头部)3:请求处理中(响应中通常有部分数据可用,但是服务器还没有完全响应)4:请求已完成(可以访问服务器响应并使用)status=200:连接成功,状态正常if(xmlHttp.readyState==4){if(xmlHttp.status==200){/Z接收数据并显示varshowArea=document.getElementByld("showlD");〃获取div的idvarjsonData=xmlHttp.responseText;〃接收servlet传过来的数据varjsonObj=eval('('+jsonData+')');〃字符串类型装换成对象类型varmesg="<tableborder='l'align='center'width='600'><tr><th>用户名〃thxth>密码〃th><ハr>";forfvari=0;kjsonObj.length;i++)(mesg+="<trxth>"+jsonObjfi].username+"</th><th>"+jsonObj[i].password+"</th></tr>Mmesg+="</table>"showArea.innerHTML=mesg;〃显示信息的))</script><bodyonload="showData()"><divid="showlD"x/div></body></html>配置svn步骤:.安装VisualSVN-Server-2.7.4.msi文件.在window—MyEclipseConfigurationCenter—software-addsite—svn—2.4.5两个required,个hl下面的是两个Library.右边加我出来提交.在window中preferces-team-svn〃这・个在页面实现数字时钟的方法<scripttype="text/javascript">functionstartTime(){vardate=newDated;varY=date.getFullYearO;varM=(date.getMonth()+l);varD=date.getDateO;varh=date.getHours();varm=date.getMinutes();vars=date.getSeconds();m=checkTime(m);s=checkTime(s);document.getElementByld('mydate').innerHTML=Y+ +M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 居民对预防接种、儿童保健服务满意度调查问卷
- 地下墙接头施工方案
- 广东庭院水景施工方案
- 电梯拉槽施工方案
- 河道施工方案范本大全
- 2025年钻井监督面试题及答案
- 4年级下册英语书第1单元李阳跟读
- 4级英语听力技巧
- 测量施工方案检查记录
- 光储项目施工方案
- 腾讯招聘测评题库答案大全
- 旅游提成协议书
- 第六章《平面向量及其应用》同步单元必刷卷(基础卷)(考试版)
- 校园欺凌谈话记录表
- 2024年4月重庆公务员考试申论真题及答案解析
- 2016-2023年济南工程职业技术学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 浙江省烟草专卖局(公司)管理类岗位招聘笔试真题2023
- 2024年全国高中生物联赛竞赛试题和答案
- 台州模具行业现状分析
- 会客厅策划方案
- 过敏性鼻炎中医治疗
评论
0/150
提交评论