JSP的学习

创建JSP文件

创建一个JavaWeb文件然后在WebContent文件夹New一个JSP FIle文件然后打上JSP文件的文件名
并且保证编码为UTF-8

关于<% %>

<% %>符号中间他在启动是是会被Tomcat解析而不再里面则像HTML文件直接执行

客户端与服务端

客户端 ---->应用服务器---->数据库服务器
客户端:浏览器,手机,等其他应用程序
应用服务器:java的Tomcat,.net的IIS
数据库服务器:数据库信息

jsp实现:在HTML的这个静态页面基础之上实现了跟客户端交互的动态效果.
交互中,经常使用:
1.request.getParameter("值");接受客户端发送的内容
2.response则是用于服务端响应客户端,而作为响应对象,response又分为两种响应:
A.输出内容(比如直接输出一个错误信息){而输入内容又分为HTML,json}
B.跳转(比如直接响应一个错误的页面)

如何不打开Eclipse运行web文件

在web项目上右键项目打开Export点击WAR-File
Destionatio:保存到的路径
在下面的两个选项中
Export source files:导出源码,源码在classes目录下
OVerwrite existion file:覆盖已经存在的文件

在解压了文件之后产生一个war文件,把war文件放到Tomcat的webapps目录下,
然后出去打开bin目录下的startup.bat文件双击打开,
然后就自动启动tomcat,
这样就不用打开Eclipse应用程序就可以打开web文件了,不用的时候关闭双击shutdown.bat就可以了

"注意:要配置好JAVA_HOME不然双击没用"

关于JSP实现了静态的HTML中,插入了动态的代码是 真的好吗?

答案是非常不好的(具有高度的耦合).
在servlet:在动态的代码中,插入静态HTML:

    PrintWriter out = response.getWriter();
	out.println();
	out.println("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">");
	out.println("<html>");
	out.println("<head>");
	out.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">");
	out.println("<title>Insert title here</title>");
	out.println("</head>");
	out.println("<body>");
	//<%=new java.util.Date() %>
	out.println("<font size=\"7\">"+new java.util.Date()+"</font>");
	//out.println("<font size="7"><%=new java.util.Date() %></font>");
	out.println("</body>");
	out.println("</html>");

总结:
1.jsp跟servlet没有本质上的区别.
2.在jsp中的HTML代码,例如<html>,会自动变成out.print("<html>"),这一个过程是全由Tomcat替程序员完成,在早期编写代码的时候是手动打out.print()的
3.PrintWriter out=response.getWriter();
在servlet中,out对象其实是来自于response对象,而在jsp中也是可以使用response.getWriter(),但是jsp其实已经内置out对象,所以在jsp中不用写PrintWriter out=response.getWriter();
4.jsp中一共预先定义了9个这样的对象,分别是request,response,session,application,out,pagecontext,config,page,exception(考试会考)
但是日常基本99.99%只用reques,response,out,session

sessio对象:

因为http协议是无状态的,所以每次访问后,链接都会断开,所以可以使用session对象获得之前链接的信息
session一般用于:登录

json

1.单个对象{}
2.单个对象中,里面包含多个对象{"name":"张三","sex":"男"}
3.多个对象[{},{},{}],这个是一个对象数组,里面有三个{},所以包含了三个对象
posted @ 2018-06-05 19:30  世界上最瘦的男人  阅读(246)  评论(0编辑  收藏  举报