[原创]熟练JSP/Servlet/JDBC_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2213 | 回复: 0   主题: [原创]熟练JSP/Servlet/JDBC        下一篇 
jun.wu
注册用户
等级:上尉
经验:535
发帖:24
精华:0
注册:1970-1-1
状态:离线
发送短消息息给jun.wu 加好友    发送短消息息给jun.wu 发消息
发表于: IP:您无权察看 2017-4-19 14:41:09 | [全部帖] [楼主帖] 楼主

JSP全称Java Server Pages,是一种动态网页开发技术。由应用服务器中的JSP引擎来编译和执行嵌入的Java脚本代码,然后将生成的整个页面信息返回给客户端。


JSP的页面组成元素包括:    

静态内容:HTML静态文本;    

指 令: 以“<%@”开始以“%> ”结束,比如:<%@include file="Filename" %>;    

表达式:<%=Java表达式 %>;    

小脚本: <% Java 代码 %>;    声 明 :<%! 方法 %>;    

注释 :<!-- 这是注释,但客户端可以查看到 -->           

       <%-- 这也是注释,但客户端不能查看到 --%> 

   

JSP的九大内置对象为:request,response,session,applicaton,out,pagecontext,page,config,exception。



JSP中的三种指令

<%@ page ... %>     定义网页依赖属性,比如脚本语言、error页面、缓存需求等等

<%@ include ... %>  包含其他文件

<%@ taglib ... %>   引入标签库的定义


Jsp中的动作

<jsp:include ... />        在页面被请求的时候引入一个文件。

<jsp:useBean ... />        寻找或者实例化一个JavaBean。

<jsp:setProperty ... />    设置JavaBean的属性。

<jsp:getProperty ... />    输出某个JavaBean的属性。

<jsp:forward ... />        把请求转到一个新的页面。

<jsp:plugin ... />         根据浏览器类型为Java插件生成OBJECT或EMBED标记。

<jsp:attribute ... />      设置动态定义的XML元素属性。


Servlet是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。


Servlet 生命周期可被定义为从创建直到毁灭的整个过程。

Servlet 通过调用 init () 方法进行初始化。

Servlet 调用 service() 方法来处理客户端的请求。

Servlet 通过调用 destroy() 方法终止(结束)。

最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。



JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成 ,使用JDBC实现对多种关系数据库的统一操作,需要使用JDBC驱动。


package com.landingbj.com;


import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.Statement;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;


public class DBManage {

static Connection conn = null;

static Statement stmt = null;

static PreparedStatement pstmt = null;

static ResultSet rs = null;

//连接MySQL

static String driver = "com.mysql.jdbc.Driver";

static String url = "jdbc:mysql://127.0.0.1:3306/db_music"; 


//连接MSSQL

// static String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

// static String url = "jdbc:sqlserver://localhost;databasename=db_music"; 


//连接Oracle

// static String driver = "oracle.jdbc.driver.OracleDriver";  // 连接驱动

// static String url = "jdbc:oracle:thin:@localhost:1521:ORCL";   // 访问oracle路径

private static Connection getConnect(){

try {

Class.forName(driver);

conn = DriverManager.getConnection(url,"root","root");

} catch (Exception e) {

e.printStackTrace();

}

return conn;

}

public static ResultSet getResultSet(String sql){

conn = getConnect();

try {

pstmt=conn.prepareStatement(sql);

rs= pstmt.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

public static ResultSet getResultSet(String sql,Object[] params){

conn = getConnect(); 

try { pstmt = conn.prepareStatement(sql); 

for (int i = 0; i < params.length; i++)  

pstmt.setObject(i+1, params[i]); rs = pstmt.executeQuery(); 

catch (SQLException e) { e.printStackTrace(); 

return rs; 

}

public static int modifyEntiy(String sql, Object[] params){ 

int num = 0; conn = getConnect(); 

try { pstmt = conn.prepareStatement(sql); 

for (int i = 0; i < params.length; i++) { 

pstmt.setObject(i+1, params[i]); 

num = pstmt.executeUpdate(); closeAll(); 

} catch (SQLException e) { 

e.printStackTrace(); 

return num;

}

public static void closeAll(){ 

if (pstmt != null){ try { pstmt.close(); pstmt = null; 

} catch (SQLException e) { 

e.printStackTrace();

} if (stmt != null){ try { stmt.close(); stmt = null; 

} catch (SQLException e) { 

e.printStackTrace();

}if (rs != null){ try { rs.close(); rs = null; 

} catch (SQLException e) { 

e.printStackTrace();

}if(conn != null){ try { conn.close(); conn = null;

} catch (SQLException e) { 

e.printStackTrace(); 

}

}





赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论