|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
你总不能说你写框架吧,那无疑会加大工作量,现在大多企业采取的是折中的办法,就是改别人写好的框架,可要改框架,前提是你对这个框架足够的了解,这就更难了。js|技能一,重定向页面1,response.sendRedirect("url");
2,response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
response.setHeader("Location",newLocation);
二,HTMLEncoder和URLEncoder
1,HTMLEncoder自界说,准绳:不输入,&-"&",<-"<",>-"gt;","-"""
2,URLEncoder在java.net包中有界说
原型:publicstaticStringencode(Strings)
比方:URLEncoder.encode("http://wwww.aaa.com/sss.jsp?name=小鬼")
三,在JSP中读写文件
1,用FileOutputStream初始化PrintWriter,然后用print大概println办法写文件
PrintWriterpw=newPrintWriter(newFileOutputStream("file1.txt"));
pw.println("Helloworld!");
pw.close();//如有毛病thowIOException
用FileWriter初始化PrintWriter,然后用print大概println办法写文件
Filef=newFile("file1.txt");
PrintWriterpw=newPrintWriter(newFileWriter(f));
pw.print("Helloworld!
");
pw.close();
2,用InputStreamReader大概FileReader初始化BufferedReader,然后用readLine()办法读取文件
BufferedReaderbr=newBufferedReader(newFileReader("file1.txt"));
Stringrt=br.readLine();//开头为null
br.close();
3,用FileWriter初始化PrintWriter,然后用pint大概println办法增加文件
PrintWriterpw=newPrintWriter(newFileWriter("file1.txt"),true);
4,importjava.io.*;
Filef=newFile(request.getRealPath(""),"file1.txt");
booleanf.exists();
f.delete();f.createNewFile();
Filed=newFile(request.getRealPath(""));
booleand.exists();
d.delete();d.mkdir();
request.getRealPath("url");//假造目次映照为实践目次
request.getRealPath("./");//网页地点的目次
request.getRealPath("../");//网页地点目次的上一层目次
Filef=newFile("path","file1.txt");
f.getName();
f.isFile();
f.isDirectory();
f.canRead();
f.canWrite();
f.isHidden();
f.lastModified;
f.createNewFile();
f.length();
Filed=newFile("path");
Filelist[]=d.listFiles();//list是一个File数组
for(inti=0;i<list.length;i++)out.println(list.getName());
FileReaderfr=newFileReader("path"+"file1.txt");
if(fr.read()==-1)//空文件
fr.close();
fr.read(inti)//读取i个字符,-1假如不再无数据
file://用BufferedReader能够一次读取一行数据
fr.skip(inti);//略过i个字符
在援用parseInt等函数的时分,堕落是NumberFormatException等
Random取得随机数,
Randomrd=newRandom((newDate()).getTime());
intp=Math.abs(rd.nextInt())%s;//s为0到的局限
四,URL重组、表单埋没域Cookie
1,这些是用来填补HTTP协定无形态特性的手艺(Sessions手艺)的一部分
2,URL重组是用Get办法向服务器发送的信息“?param1=value1¶m2=value2&...¶mn=valuen”
假如服务器已在超链接下面作了session标志,那末客户端经由过程这个走超链接发送请来时就会包括此标志
3,form中的<inputtype=hiddenname="key1"value="value1"/>也能够像URL重组那样利用。
4,Cookie对象
Cookiec=newCookie("key","value");
response.addCookie(c);
Cookie[]c=request.getCookies();
c.setMaxAge(intk);//k以秒为单元
一样平常扫瞄器能放20个Cookie
五,session对象
1,session对象不单单能放String数据,还能放庞大的对象。
2,session.putValue("key1",Object1);
Objecto=session.getValue("key1");
六,处置JSP中的中文成绩
1,ASCII码
8bit存储,0~31和127是把持字符,32~126是可见字符。
2,GB2312
两个8bit暗示。前一个127~255,以辨别ASCII码。
3,Unicode
能够将天下上几十种笔墨编码一致在统一种编码机制下。以16bit为单元存储。0x0000~0xffff
4,ISO-8859-1或称为Latin-1,8859-1。在Unicode所占的值域为0~255,低位为ASCII扩大到0~255,然后在高位补上0x00,构成16bit(此处不太懂)。
5,字节和unicodeJava内核是unicode,class文件也是。可是流倒是接纳的byte体例。char为unicode体例,byte是字节体例。转换函数:sun.io内里:
publicstaticByteToCharConvertergetDefault();//猎取体系利用的编码体例。
publicstaticByteToCharConvertergetConverter(Stringencoding);
ByteToCharConverterc=NewByteToCharConverter(["encoding"]);
Byte[]s=c.convertAll(Char[]d);
也能够Char[]d=c.converterAll(Byte[]s);
6,一些函数:
Integer.toHexString(inti);
Strings;s.getBytes();
String(byte[]);String(byte[],encoding);//constructors
file://关于Unicode编码盘算独自写一篇
七,猎取JVM属性值
Propertiesprops=System.getProperties();
Enumerationenum=props.propertyNames();file://key列举
key=(String)enum.nextElement();
Strings=(String)props.getProperty(key);
八,JSP毛病处置
1,一切可被throw和catch的Exception对象都承继自Throwable。Exception应当被catch才对;Error对象也是承继自Throwable,只是不该该catch,而的停止程序。
2,catch序列针对的Exception应当从初级到初级才对。
3,转译毛病和客户端端哀求毛病。jsp源程序毛病、import路径不准确等会在天生ServletClass文档时发生转译毛病(500)。在实行ServletClass时客户端哀求毛病会被catch。
4,毛病发生时,能够jsp:forward来把持,但更好是用errorPage来处置。也能够thrownewException("errMsg")。
用java开发web只要两本书:一本是关于java基础的,一本是关于jsp、servlet的就可以了。开发周期长,我就来讲句题外话,现在有很多思想都是通过java来展现。 |
|