学习过程中的相关问题解决

解决方法:
这怎么说呢?误打误撞了属于是,在某个文件中定义为
然后,在另一个.java文件中就不要出现已经用到过的名字,不然就会报错,注意一下哈!

解决方法:
大概率是form表单中的action属性,被赋予的路径的问题

可以这样解决:
在原有路径的基础上加上如图所示的内容,即可成功运行;

解决方法:

对于POST请求方式,需要在获取相关信息之前,添加这样一行代码:(设置输入流编码)

req.setCharacterEncoding("UTF-8");//根据页面编码设置

对于GET请求方式,需要先从二进制转为十六进制;(先编码,后解码)

示例:(需要清楚的是,无论哪一种展现形式,它们的字节都是一样的)

String name="张三";

1、URL编码

String encode=URLEncoder.encode(username,"utf-8");
System.out.println(encode);

2、URL解码

//String decode=URLDecoder.decode(encode,"utf-8");
String decode=URLDecoder.decode(encode,"ISO-8859-1");
Syste.out.println(decode);

3、转换为字节数据

byte[] bytes=decode.getBytes("ISO-8859-1");

4、将字节数组转换为字符串

String s=new String(bytes,"utf-8");

String.out.println(s);

我发现,其实,解决问题二的方法对解决该问题同样有效!

代码:

String username=request.getParameter("username");
byte[] bytes=username.getBytes(StandardCharsets.ISO_8859_1);
username=new String(bytes,StandradCharsets.UTF_8);
System.out.println(username);

1、明确路径谁使用?

浏览器使用------需要加虚拟目录(项目访问路径)

服务器使用------不需要加虚拟目录

目前只有requset的转发不需要加虚拟目录

动态获取虚拟目录:

String contextPath=req.getContextPath();
req.sendRedirect(contextPath+"/resp2");
posted @ 2022-09-25 15:25  yesyes1  阅读(13)  评论(0编辑  收藏  举报