Web03。 获得请求行,请求头信息。防盗链,将信息插入到数据库

请求行

    request
    //请求行
	//1.获得提交方式
	String method = request.getMethod();
	System.out.println(method);
	//2.获得uri url(post/get获得内容一样)
	String uri = request.getRequestURI();
	StringBuffer url = request.getRequestURL();
	System.out.println(uri);
	System.out.println(url);
	//3.获得?后面的内容(了解)
	String queryString = request.getQueryString();
	System.out.println(queryString);

请求头

	//1.获得request请求头 (getIntHeader getDateHeader)
	String header = request.getHeader("user-agent");
	System.out.println(header);
	//2.获得客户端地址
	String remoteAddr = request.getRemoteAddr();
	System.out.println(remoteAddr);
	//3.referer:资源来源(通过哪里访问的) -------配合go.html来使用
	String referer = request.getHeader("referer");
	System.out.println(referer);

案例:防盗链

    String referer = request.getHeader("referer");
	//判断是自己服务器访问的该链接
	if(referer == null||referer.startsWith("http://localhost:8000")) {
		response.setContentType("text/html;charset=utf-8");
		response.getWriter().write("天气凉快一点哦");
	}else {
		//跳转到自己的首页(重定向)
		response.sendRedirect("/web03/index.html");
	}

配合form.html来使用 表单的name为username 则获得对应的值

     request.getParameter("username");
     //解决中文乱码问题
     username = new String(username.getBytes("ISO8859-1"),"UTF-8");
     //通过一个名字获得多个值
     request.getParameterMap();

案例 将信息插入到数据库中
详情参见 web03—web2
//UserDaoImpl

  String sql = "insert into user values(?,?,?,?,?,?,?,?,?,?)";
	try {			
	qu.update(sql,user.getUid(),user.getUsername(),user.getPassword(),user.getName(),user.getEmail(),user.getTelephone(),user.getBirthday(),user.getSex(),user.getState(),user.getCode());
		System.out.println("注册成功");




	//UserRegisterTest

    User user = new User();
	UserDao ud = new UserDaoImpl();
	try {
		//将从表单获得的值封装成一个对象user。
		BeanUtils.populate(user, request.getParameterMap());
	} catch (IllegalAccessException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	} catch (InvocationTargetException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	String uid = UUID.randomUUID().toString();
	user.setUid(uid.replace("-", ""));
	ud.saveUser(user);
	response.sendRedirect("/web03/index.html"); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值