`
xuweijian2009
  • 浏览: 22918 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

在servlet中使用Bean

阅读更多
按着Sun公司的定义,JavaBean是一个可重复使用的软件组件。实际上JavaBean是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象,简称bean。由于javabean是基于java语言的,因此javabean不依赖平台,具有以下特点:
  1. 可以实现代码的重复利用
  2. 易编写、易维护、易使用
  3. 可以在任何安装了Java运行环境的平台上的使用,而不需要重新编译。
  编写javabean就是编写一个java的类,所以你只要会写类就能编写一个bean,这个类创建的一个对象称做一个bean。为了能让使用这个bean的应用程序构建工具(比如JSP引擎)知道这个bean的属性和方法,只需在类的方法命名上遵守以下规则:
  1. 如果类的成员变量的名字是xxx,那么为了更改或获取成员变量的值,即更改或获取属性,在类中可以使用两个方法:
  getXxx(),用来获取属性xxx。
  setXxx(),用来修改属性xxx.。
  2. 对于boolean类型的成员变量,即布尔逻辑类型的属性,允许使用"is"代替上面的"get"和"set"。
  3. 类中方法的访问属性都必须是public的。
  4. 类中如果有构造方法,那么这个构造方法也是public的并且是无参数的。

----------------------------------------------------------
在servlet中使用Bean和在通常程序中使用Bean类似
    属性名称第一个字母必须小写,例如:private productId
   一般具有getters and setters
但Bean不应具有GUI表现
一般是用来实现某一业务逻辑或取得特定结果
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


public class DB {

	public static Connection getConnection(){
		Connection conn= null;
		try{
			Class.forName("com.mysql.jdbc.Driver");
			conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/ssh?user=root&password=123456");
		}catch(SQLException e){
			e.printStackTrace();
		}catch(ClassNotFoundException e){
			e.printStackTrace();
		}
		return conn;
	}
	public static Statement getrStatement(Connection conn){
		Statement stmt = null;
		try {
			stmt = conn.createStatement();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return stmt;
	}
	public static ResultSet getResultset(Statement stmt,String sql){
		ResultSet rs = null;
		try {
			rs = stmt.executeQuery(sql);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return rs;
	}
	public static void close(Connection conn){
		if(conn != null){
			try {
				if(!conn.isClosed()){
					conn.close();
					conn = null;
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
	public static void close(Statement stmt){
		if(stmt != null){
			try {	
					stmt.close();
					stmt = null;
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
	public static void close(ResultSet rs){
		if(rs != null){
			try {
					rs.close();
					rs = null;
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
}

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class ShowRsUseBeanServlet extends HttpServlet{

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		
		response.setContentType("text/html");
		response.setCharacterEncoding("UTF-8");
		PrintWriter out = response.getWriter();
		out.println("<table border='1'>");
		out.println("<tr><td>content</td></tr>");
		
		Connection conn = DB.getConnection();
		Statement stmt = DB.getrStatement(conn);
		String sql = "select * from t_user";
		ResultSet rs = DB.getResultset(stmt, sql);
		
		try {
			while(rs.next()){
				out.println("<tr>");
				out.println("<td>"+rs.getString("name")+"</td>");
				out.println("</tr>");
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		out.println("</table>");
		
		DB.close(rs);
		DB.close(stmt);
		DB.close(conn);
	}
}

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

	<servlet>
		<servlet-name>ShowRsUseBeanServlet</servlet-name>
		<servlet-class>ShowRsUseBeanServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>ShowRsUseBeanServlet</servlet-name>
		<url-pattern>/ShowRsUseBeanServlet</url-pattern>
	</servlet-mapping>

</web-app>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics