0. JSP简介
1. JSP语法
2. 内置对象
3. JAVABEAN
4. 文件操作
5. 数据库操作
6. JAVA SERVLET
7. JSP实用XML
附录一:数据库连接池的实现
附录二:servlet例子
附录三:servlet部署文件例子
附录四:DOM例子
0.JSP简介 |
配置环境变量:
JAVA_HOME——c:/java/jdk
CLASSPATH——c:/java/jdk/lib/tool.jar…
Path——c:/java/jdk/bin
CATALINA——c:\tomcat
CATALINA_BASE——c:\tomcat
CATALINA_HOME——c:\tomcat
Tomcat_home——c:\tomcat
Tomcat配置虚拟目录:
在conf/server.xml中修改:
<Context path=”/hello” docBase=”d:/myjsp/zhulin” debug=”0” reloadable=”true”/>
当多个用户同时访问一个JSP页面时,Tomcat服务器为每个客户启动一个线程,该线程负责执行常驻内存的字节码文件来响应响应客户的请求。
|
1.JSP语法 |
<%! %>标记之间声明变量和方法
<% %>程序片
<%= %>java表达式
<!-- --> html注释
<%-- --%>JSP注释
指令标记:
<%@ include file=”” %> 在JSP页面某处将某个文件整体嵌入
动作标记:
<jsp:include page=”a.jsp”/>或 <jsp:include page=”a.jsp”>
<jsp:param name=”a” value=”<%=mya %>”/> …
</jsp:include>
此标记也是将一个文件嵌入到当前页面,但与指令标记include所不同的是:
指令标记include:在编译阶段就处理所需的文件,页面执行速度快;
动作标记include:在JSP页面运行时才加载,处理速度慢,其优点是可以用param标签。
<jsp:forward page=”a.jsp”/>或 <jsp: forward page=”a.jsp”>
<jsp:param name=”a” value=”<%=mya %>”/> …
</jsp: forward >
停止当前页面的继续执行,而转向执行page指定的页面。且浏览器的url地址不变
|
2.内置对象 |
Request:可以获取客户机信息
Response:可以设置contentType属性
也可以设置HTTP头,如response.setHeader(“refresh”,”5”);//每5秒刷新一次
可以用于重定向:response.sendRedirect(url);
Session:void setAttribute(String,Object)
Object getAttribute(String)
Void remove(String)
在tomcat的conf/web.xml中设置session时间,单位为分钟:
<session-config><session-timeout>30</session-timeout></session-config>
Application:void setAttribute(String,Object)
Object getAttribute(String)
Void removeAttribute(String)
Out:输出流 如out.println();
|
3.JAVABEAN |
javabean类的构造方法必须是public,无参数的
使用bean时:1. 先倒入该类所在的包:<%@ page import="zhulin.*" %>
2. 加载要使用的bean:<jsp:usebean id="user" class="zhulin.user" scope="page" />
3. 使用<jsp:setProperty name="user" property="*" />可以将当前表单中的控件的值设定给BEAN
|
4.文件操作 |
File类:获取文件(文件夹)本身的一些信息
用文件字节流读写文件:FileInputStream:顺序地读取文件,只要不关闭流,每次调用read方法都顺序地读取源中其余内容。
FileOutputStream:顺序地些文件,只要不关闭流,每次调用write方法都顺序地向输出流中写入内容。
用文件字符流读写文件:FileReader,FileWriter
字节流不能直接操作Unicode字符,所以在读汉字时容易出现乱码,而字符流就可以避免这个现象。
BufferedReader,BufferedWriter类用来提高读写效率。
RandomAccessFile流的指向既可以作为源也可以作为目的地。
|
5.数据库操作 |
数据库连接方式:
1.JDBC-ODBC桥接器:优点:ODBC提供了数据库访问的通用平台,使得JDBC可以访问几乎所有类型的数据库。
缺点:使得应用程序依赖于ODBC,移植性差。
代码如:Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:zhulin","sa","sa");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from users");
2.用纯JAVA数据库驱动程序:用JAVA语言编写的数据库驱动叫做纯JAVA数据库驱动。
代码如:Class.forName("org.gjt.mm.mysql.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/zhulin","sa","sa");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from users");
提高数据库操作的方法:
1. 数据库连接池
2. 使用预处理语句:Connection.prepareStatement(sql);
附录:数据库连接池的实现
|
6.JAVA SERVLET |
创建一个servlet对象的类就是编写javax.servlet.http包中的HttpServlet类的子类。
为了能让TOMCAT服务器用字节码文件创建对象,必须为Tomcat服务器编写一个部署文件。
tomcat服务器通过读取web.xml管理servlet对象。
HttpServlet类的方法:
init()
service()
destory()
doGet()
doPost()
HttpServletResponse类的重定向方法:sendRedirect():重定向的目标页面无法使用request获取用户提交的数据。
RequestDispatcher类的转发方法:forward():转发的目标页面可以使用request获取用户提交的数据。
附录:servlet例子
servlet部署文件例子
|
7.JSP实用XML |
DOM(document object model):sun公司提供了DOM解析器,解析XML文件的API(java API for XML parsing,JAXP)
附录:DOM例子
|
附录一:数据库连接池的实现 |
/** * 数据库连接池 * 作者:朱林 * 版本:1.0 * 日期:2009.12.23 */
package dboperate; import java.sql.*; import java.util.LinkedList;
public class Conlib { String conn_str="jdbc:mysql://localhost:3306/zhulin";//---------数据库 String username="zhulin";//---------------数据库用户名 String password="000000";//-------------数据库密码 int connum=10; //连接池容量 LinkedList<Connection> list; //存放Connection对象的链表 /** * 初始化 */ public Conlib() { try { Class.forName("org.gjt.mm.mysql.Driver"); } catch(java.lang.ClassNotFoundException e) { System.err.println("驱动登记异常:"+e.getMessage()); } list=new LinkedList<Connection>(); //创建连接池 for(int k=0; k<connum; k++) { try { Connection conn=DriverManager.getConnection(conn_str,username,password); list.add(conn); } catch(SQLException ex) { System.err.println("数据库连接异常:"+ex.getMessage()); } } } /** * 获取连接池中的一个连接 */ public synchronized Connection getOneConnection() { if(list.size()>0) { return list.removeFirst(); } else return null; } /** * 放回一个连接 */ public synchronized void putBackOneConnection(Connection con) { list.addFirst(con); } }
|
附录二:servlet例子 |
package com.akazam; import java.io.*; import javax.servlet.*; import javax.servlet.http.*;
public class helloservlet extends HttpServlet {
//init完成必要初始化工作 public void init(ServletConfig config) throws ServletException { super.init(config); }
//当servlet对象创建后会自动调用执行service函数,响应客户的请求 public void service(HttpServletRequest request,HttpServletResponse response) throws IOException { response.setContentType("text/html;charset=GBK"); //设置响应的MIME类型 PrintWriter out=response.getWriter(); //获取一个向客户发送数据的输出流 out.println("<html><body>hello</body></html>"); } }
|
附录三:servlet部署文件例子 |
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>com.akazam.helloservlet </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
|
附录四:附录:DOM例子 |
package com.akazam; import java.io.*; import org.w3c.dom.*; import javax.xml.parsers.*;
public class DOMparse { public DOMparse() { try { //创建DOCUMENT对象读取XML文件 DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance(); DocumentBuilder builder=factory.newDocumentBuilder(); Document document=builder.parse(new File("d:\\a.xml")); Element root=document.getDocumentElement(); //获取根节点 NodeList elementNodes=root.getElementsByTagName("姓名"); //... } catch(Exception e){} } }
|
分享到:
相关推荐
JSP&Servlet学习笔记,适合初学jsp和servlet的人群,初学者学习可能有点困难
学习JSP的相关读书笔记,可作为平时学习JSP的参考资料或者作为课设的总结
Servlet &JSP学习笔记NetBeans源代码,课本中所有的源代码,NetBeans版本,服务器为Tomcat
JSP学习笔记(三)-----使用JSP处理用户注册和登陆
jsp学习笔记
林学良Jsp&Servlet学习笔记,html格式的,很基础的学习文档。
web学习笔记总结,关于JSP很详尽的例子和说明,动手实现例子会更加有利于自己的理解和使用,总结用于期末考试和记忆使用,可以作为考试参考和入门学习的资料。
该资源为本人在专业培训学校的jsp学习笔记,内容非常全面!
《JSP & Servlet学习笔记(第2版)》是作者多年来教学实践经验的总结,汇集了学生在学习JSP&Servlet;或认证考试时遇到的概念、操作、应用等各种问题及解决方案。 《JSP & Servlet学习笔记(第2版)》针对Servlet 3.0的...
jsp学习笔记2
jsp学习笔记3
jsp学习笔记5
[JSP&Servlet;学习笔记(第2版)]。
自己的html javaScript jsp学习笔记
一套详细的jsp学习笔记及相关的oop笔记
JAVA-WEB学习笔记+JSP学习笔记
书 名: JSP网络编程学习 封面 笔记 作 者:傅进勇 李波 出版社: 电子工业出版社 出版时间: 2008 全书内容分为7篇,共23章,第一篇为“JSP应用开发基础”,主要讲述JSP技术背景情况、JSP技术的基本原理及开发...
JSP Servlet 学习笔记 第2版 林信良 随书光盘 第3卷
JSP学习笔记-2.pdf
JSP学习笔记1 韩顺平的视屏截图和自己的心得 连载 和大家共分享