javaweb-part2 ---servlet /web项目结构 /编码三部曲

Serverlet
serverlet是Java中处理用户请求的类,浏览器请求时,
按匹配规则寻找Serverlet.调用service 方法来处理请求
xml//Servlet
<servlet>
<servlet-name>fuhao</servlet-name>//对应的名字
<servlet-class>com.rupeng.test1.Demo4Servlet</servlet-class>//对应的 class文件
</servlet>
<servlet-mapping>
<servlet-name>fuhao</servlet-name>//对应的名字
<url-pattern>/fuhao</url-pattern>//虚拟路径后面接着的路径名
</servlet-mapping>

 

项目结构
webRoot里面的子文件都是可以直接访问的.
除了META-INF WEB-INF 两个子文件夹中的子文件时访问者无法直接拿到
第三方的jar包都放在WEB-INF 下的lib文件夹里

(项目名称为虚拟路径.WebRoot是根目录 /代表.
WebRoot下的images文件夹则是localhost:端口号/项目名称/images)

<form action="">/action为xml里的url的路径名/
表单标签和<input type="submit" />是搭配使用的
提交的时候提交所有form标签内有name属性的标签.
以name="value" 这样的方式提交到服务器.
checkbox 选中则值为on 没选中则为null
input/select/textarea/这样的默认有name的标签可以填写的是可以提交的.
提交的标签相应的value的值.
<input type="submit" name="a1" value="a1"/>同时又几个submit时提交的
是点击那个submit以及他对应的name=value的值
<input type="RadioButton" name="" value="">当name一样的RadioButton
只有选中的RadioButton才会被提交到服务器.

 

URL编码
JavaScript用
ecodeURI对整个URL进行编码
ecodeURIComponent对URL中有作用的name=value的值 进行编码.
decode是解码

Java中用URLEncoder.encode(str,"uft-8")来进行编码
URLdecoder.decode(str,"utf-8")解码

关于中文的编码格式.
养成良好的习惯,用utf-8(或其他的)格式来统一设置编码格式
(HttpServletRequest req, HttpServletResponse resp)
String str=req.getParameter("wangzhan");
//读取
byte [] bytes= str.getBytes("ISO-8859-1");
String utf8str=new String(bytes,"UTF-8");

//显示三部曲
resp.setContentType("text/html;charset=uft-8");
resp.setCharacterEncoding("UTF-8");
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

resp.setContentType("text/html")/text/plain ..指定以什么样的格式来输出.
是文本内容还是其他的格式

 

posted on 2017-09-03 21:13  小丰残月  阅读(139)  评论(0编辑  收藏  举报

导航