JSP原理笔记(三)

   JSP中的隐式对象:即在写jsp页面是不用添加任何引用就可以默认使用的对象。

解决jsp页面的中文乱码问题,一种是页面显示本身乱码,这种情况只要在page指令中添加contentType并制定charset为gbk或gb2312或utf-8等可以解析中文的码型。

另一种是页面数据在数据传送后乱码。

一般有两种解决中文方案:1,在数据处理页面先改变编码,再接受数据:request.setCharacterEncoding("能够解析中文的编码类型");

注意:这里"能够解析中文的编码类型"必须与数据源页面一致,如果源页面的charset为“utf-8”,那么这里就应设置为utf-8,否则仍旧会乱码。

//页面默认的编码方式为ISO-8859-1或utf-8

2, 先解码再编码

步骤一:将接收到的数据用"ISO-8859-1"进行解码为字节流

步骤二:解码后采用数据源页面一致的编码new一个新字符串。

String name=new String(request.getParameter("name").getBytes("ISO-8859-1"),"utf-8");

request.getHeader()可以获取请求头信息,其中的referer属性可以追踪参数页面来源,可以用用于防盗链等。

request作用域只在一次请求中有效。请求转发可以再次访问request作用域中的数据,但是请求重定向就不可以访问request作用域中的参数了。

 

 日历代码:

import java.util.*;
public class CalendarTest
{
	public static void main(String[] args){
		GregorianCalendar  d=new GregorianCalendar();
		int today=d.get(Calendar.DAY_OF_MONTH);
		int month=d.get(Calendar.MONTH);
		d.set(Calendar.DAY_OF_MONTH,1);
		int weekday=d.get(Calendar.DAY_OF_WEEK);
		System.out.println("Sun Mon Tue Wed Thu Fri Sat");
		for(int i=Calendar.SUNDAY;i<weekday;i++)
		
			System.out.println("    ");
			do{
			int day=d.get(Calendar.DAY_OF_MONTH);
			System.out.printf("%3d",day);
			if(day==today)
				System.out.print("*");
			else
				System.out.print(" ");
			if(weekday==Calendar.SATURDAY)
				System.out.println();
			d.add(Calendar.DAY_OF_MONTH,1);
			weekday=d.get(Calendar.DAY_OF_WEEK);


			}while(d.get(Calendar.MONTH)==month);
			if (weekday!=Calendar.SUNDAY)
			
				System.out.println();
			
		

	}
}


 TimerTest:

import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
import javax.swing.Timer;
public class TimerTest{
	public static void main(String[] args)
	{
		ActionListener listener=new TimePrinter();
		Timer t=new Timer(3000,listener);
		t.start();
		JOptionPane.showMessageDialog(null,"Quit program?");
		System.exit(0);
		
		}
}
class TimePrinter implements ActionListener{
	public void actionPerformed(ActionEvent event){
		Date now=new Date();
		System.out.println("at the tone,the time is"+now);
			Toolkit.getDefaultToolkit().beep();
	}
}


 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值