Servlet如何调用JavaBean?
发布网友
发布时间:2022-04-09 09:57
我来回答
共7个回答
热心网友
时间:2022-04-09 11:27
Servlet中调用javabean当然是直接new了,在JSP中用<jsp:usebean id="objectName" class="BeanName">
id对应的就相当于对象名,一个reference,class对应的是javabean的类名,全路径
热心网友
时间:2022-04-09 12:45
JavaBean是一种特殊的Java类,既是Java类,就可以像其它Java类一样使用,<jsp:usebean id="xxx" class="xxx"> 标记,转换成Servlet后,实际上就是调用了JavaBean的默认的无参构造方法,楼上说的new一个对象没错。
热心网友
时间:2022-04-09 14:19
servlet虽然是特殊的类
虽然特殊,但还是类
所以类的特点他都继承了
用new是可以
在dopost或者doget方法里调用
bean不过就是一个做了些*的JAVA类
他的使用当然就和其他的类是一样的
生成类的实例然后对其进行调用
热心网友
时间:2022-04-09 16:11
MVC模式
servlet是控制器,也就是C,control,
jsp是视图,显示的,也就是V,view
javabean那只好是M了,model.
javabean 里面定义对象 和写方法,
servlet吊用方法,jsp显示效果 ,其实jsp也可以做servlet,现在这中利用jsp+servlet+javabean,不怎么流行了,利用myeclipse插件(Hibernate ,struts,spring),比这好得多 。
参考资料:http://hi.baidu.com/comasp
热心网友
时间:2022-04-09 18:19
就是直接NEW嘛,你无论如何,都要先得到Bean对象呀.
对于后台来说它是一个整体,在一个工程下的各个部门,实在想有明白,就看一下STRUTS框架,的ACTION.同行QQ 我:450706983
热心网友
时间:2022-04-09 20:43
首先你那个要打包到一个文件夹里面
然后在Servlet里面首先要引入那个JavaBean
import 包名.JavaBean
还是发个实例你去看吧
package chap10.servlet;
import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import chap10.db.DBUtil;
import chap10.BookBean;
public class QueryBookServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException
{
final String SQL = "select * from BookList where isbn=?";
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
String address = "unknownBook.jsp";
//创建JavaBean对象
BookBean book = new BookBean();
try
{
//获取数据库连接
conn = DBUtil.getConnection();
stmt = conn.prepareStatement(SQL);
//指定参数
stmt.setString(1,request.getParameter("isbn"));
//执行查询
rs = stmt.executeQuery();
if(rs != null)
{
rs.next();
//改变JavaBean中的属性
book.setIsbn(rs.getString("isbn"));
book.setTitle(rs.getString("title"));
book.setAuthor(rs.getString("author"));
book.setPublisher(rs.getString("publisher"));
book.setPrice(rs.getInt("price"));
address = "displayBook.jsp";
}
}
catch(SQLException e)
{
}
//清理
DBUtil.closeResultSet(rs);
DBUtil.closeConnection(conn);
//将JavaBean放到request作用域中
request.setAttribute("bookBean",book);
//跳转到JSP页面
RequestDispatcher dis = request.getRequestDispatcher(address);
dis.forward(request,response);
}
}
package chap10;
public class BookBean {
//ISBN号
private String isbn;
//书名
private String title;
//作者
private String author;
//出版社
private String publisher;
//价格
private int price;
public BookBean() {
}
public BookBean(String isbn,String title,String author,
String publisher,int price)
{
this.isbn = isbn;
this.title = title;
this.author = author;
this.publisher = publisher;
this.price = price;
}
public String getIsbn() {
return isbn;
}
public void setIsbn(String isbn) {
this.isbn = isbn;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getPublisher() {
return publisher;
}
public void setPublisher(String publisher) {
this.publisher = publisher;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
}
package chap10.db;
//不是一个javaBean,是一个封装了数据库的常用操作,有较强的可重用性
import java.sql.*;
public class DBUtil
{
static String serverName = "localhost";
static String sDBDriver = "oracle.jdbc.driver.OracleDriver";
static String dbInstance = "xdf";
static String sConnStr = "jdbc:oracle:thin:@"+serverName+":1521:"+dbInstance;
static String dbUser = "scott";
static String userPwd = "tiger";
/**
*得到一个Connection对象
*@return java.sql.Connection
*/
public static Connection getConnection()
{
Connection conn = null;
try
{
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr, dbUser, userPwd);
}
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
catch(SQLException e1)
{
e1.printStackTrace();
}
return conn;
}
/**
*关闭指定的结果集
*@param rs 要关闭的结果集
*/
public static void closeResultSet(ResultSet rs)
{
if( rs != null)
{
try
{
rs.close();
}
catch(SQLException e)
{
}
}
}
/**
*关闭指定的Statement
*@param stmt 要关闭的Statement
*/
public static void closeStatement(Statement stmt)
{
if( stmt != null)
{
try
{
stmt.close();
}
catch(SQLException e)
{
}
}
}
/**
*关闭连接
*@param conn 要关闭的连接
*/
public static void closeConnection(Connection conn)
{
if( conn != null)
{
try
{
conn.close();
}
catch(SQLException e)
{
}
}
}
}
你看了之后就晓得了!
热心网友
时间:2022-04-09 23:25
new JavaBean