首先,我们进行建立一个JavaBean类,命名为Student.java类
然后进行编写DAO类
在jsp中使用DAO与VO,进行对数据库的访问,然后将数据布局到jsp页面中,进行布局数据
❷ 在jsp中使用JavaBean连接数据库
这个是连接access的javaBean,首先配置access数据源,数据源名称设为info.mdb,此文件放在test文件夹下,编译后将生成的infoBean.class放在claeese下的test文件夹下即可。用access写个数据库info.mdb里面写个表student,两个字段id name。
package test;
import java.sql.*;
public class infoBean{
private String ab="sun.jdbc.odbc.JdbcOdbcDriver";
private String ac="JDBC:odbc:info.mdb";
Connection conn=null;
ResultSet rs=null;
Statement stmt;
public infoBean(){
try{
Class.forName(ab);}
catch(java.lang.ClassNotFoundException e){
System.out.println("infoBean():"+e.getMessage());}
}
public ResultSet executeQuery(String sql){
rs=null;
try{
conn=DriverManager.getConnection(ac);
stmt=conn.createStatement();
rs = stmt.executeQuery(sql);}
catch(SQLException ex){
System.err.println("aq.executeQuery:"+ex.getMessage());}
return rs;
}
public void executeUpdate(String sql)
{stmt=null;
rs=null;
try{
conn=DriverManager.getConnection(ac);
stmt=conn.createStatement();
stmt.executeUpdate(sql);
stmt.close();
conn.close();}
catch(SQLException e1)
{System.err.println("executeUpdate:" + e1.getMessage()); }
}
public void closeStmt()
{
try{
stmt.close();
}
catch (SQLException e2)
{
e2.printStackTrace();
}
}
public void closeConn()
{
try{
conn.close();
}
catch (SQLException e3)
{
e3.printStackTrace();
}
}
}
在jsp页面中引用时,显示数据库内容:
<%@ page contentType="text/html;charset=GB2312" import="java.sql.*" %>
<jsp:useBean id="inBean" class="test.infoBean" scope="page"/><html><head></head><body><table>
<tr><th>11</th><th>11</th></tr>
<%
ResultSet rs=inBean.executeQuery("SELECT * FROM student");
while rs.next(){
%>
<tr><td><%=rs.getString(1)%></td><td><%=rs.getString(2)%></td></tr>
<%}%>
</table></body></html>
在jsp中删除,
<%@ page contentType="text/html;charset=GB2312" import="java.sql.*" %>
<jsp:useBean id="inBean" class="test.infoBean" scope="page"/><html><head></head><body>
<%
String id=request.getParameter("id");
inBean.executeUpdate("Delete from student where id='"+id+"'");
%>
</body></html>
其中id是上一个页面传过来的;
jsp中修改:
<%@ page contentType="text/html;charset=GB2312" import="java.sql.*" %>
<jsp:useBean id="inBean" class="test.infoBean" scope="page"/><html><head></head><body>
<%
String id=request.getParameter("id");
String name=request.getParameter("name");
inBean.executeUpdate("update student set name='"+name+"' where id='"+id+"'");
%>
</body></html>
我还有javaBean连接mysql,sql server的例子,也有关于javaBean完整简单的小项目,你要的话,给邮箱,发给你
❸ servlet调用JavaBean连接数据库
MVC模式中的模型层对应的组件是JavaBean类。可分为业务模型和数据模型。当客户端发送请求时,服务器端Servlet接收请求,并根据数据,调用模型中的业务逻辑方法处理数据,并调用数据模型中的方法访问数据库。最后把执行结果返回servlet,servlet根据结果转向不同的页面,以响应客户请求。
希望能够帮助你,呵呵。
❹ 什么是javabean有什么用
1、概述:
JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。众所周知,属性名称符合这种模式,其他Java 类可以通过自身机制发现和操作这些JavaBean 属性。 换句话说,javabean就是一个java的类,只不过这个类你要按上面提到的一些规则来写,比如必须是公共的啊,无参构造啊等等,按这些规则写了之后,这个javabean可以在程序里被方便的重用,使开发效率提高。
2、介绍:
最初,JavaBean的目的是为了将可以重复使用的软件代码打包标准。特别是用于帮助厂家开发在综合开发环境(IDE)下使用的java软件部件。这些包括如Grid控件,用户可以将该部件拖放到开发环境中。从此,JavaBean就可以扩展为一个java web 应用的标准部件,并且JavaBean部件框架已经扩展为企业版的 Bean(EJB)。
JavaBean 和 Server Bean(通常称为 Enterprise JavaBean (EJB))有一些基本相同之处。它们都是用一组特性创建,以执行其特定任务的对象或组件。它们还有从当前所驻留服务器上的容器获得其它特性的能力。这使得 bean 的行为根据特定任务和所在环境的不同而有所不同。
3、JavaBean的任务:
(1) 一个开发良好的软件组件应该是一次性地编写,而不需要再重新编写代码以增强或完善功能。
(2) JavaBean组件在任意地方运行是指组件可以在任何环境和平台上使用,这可以满足各种交互式平台的需求。
(3)JavaBean组件在任意地方的重用说的是它能够在包括应用程序、其他组件、文档、Web站点和应用程序构造器工具的多种方案中再利用。
❺ JAVA web 与数据库的连接到底是怎样连的啊
JAVA Web开发中与数据库的连接操作,配置:
1、新建数据库。
新建登录角色,在新建数据库的时候把数据库的所有权交给你新建的角色。用用户和密码控制数据库。保证数据库的安全。
2、编写context.xml文件 Xml文件的目的是封装用户和密码,也是封装的一种,方便操作。
以下为context.xml文件样例:
<?xml version="1.0" encoding="utf-8"?>
<Context reloadable = "true">
<Resource
name="jdbc/sampleHS"
type="javax.sql.DataSource"
maxActive="14"
maxIdle="10"
username="hstaoshu"
maxWait="5000"
driverClassName="org.postgresql.Driver"
password="hstaoshu"
url="jdbc:postgresql://localhost:5432/hstaoshu"/>
</Context>
详细说明:
name="jdbc/sampleHS"里面的ssampHS是可改名称,建议根据需要自己命名;
username="hstaoshu"
password="hstaoshu"此两项为你新建的数据库登录角色用户名和密码信息,只有匹配 了才能访问。这里简单为了表示,把用户名和密码弄成了跟数据库名字一样。其实这是很不安全的。
url="jdbc:postgresql://localhost:5432/hstaoshu"/>
这是连接数据库的URl,就像访问网站的地址一样。没有这个是无法访问数据库的。localhost:5432表示本地端口。一般不需要改动,如果你在配置数据库的时候改动过端口,那么你需要把它改回来。/hstaoshu是你的数据库名称。
其他选项请勿擅自改动。
3、编写DAO类。
DAO类的作用是与数据连接后,对数据库的一些操作的封装。封装的作用。为了更好的数据管理。
DAO是真正如何使用数据库的关键步骤,前两步只是部署和配置。
private static InitialContext context = null;
private DataSource dataSource = null;
//一般把跟数据库的连接放在DAO类的构造函数里,只要被实例化,就能和数据库连接。
public BookDAO() {
try {
if (context == null) {
context = new InitialContext();
}
dataSource = (DataSource) context.lookup("java:comp/env/jdbc/sampleHS");
// 连接数据库,前面在context.xml文件配置里的URl
} catch (NamingException e2) {
e2.printStackTrace();
}
}
public Connection getConnection() {
Connection conn = null;
try {
conn = dataSource.getConnection();// 获得数据源的连接对象
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
做完上面的三步操作,开发环境已经完全和数据库连接OK,可以开始数据库的操作了。一般来说,对数据库的操作语句都是提前封装好的。这样修改起来会对下面的代码影响降到最小。
如下:
// ------------------数据库操作语句代码封装------------------
/* 查看所有图书 */
private static final String SELECT_ALL_SQL = "SELECT * FROM book";
那么在使用的时候只要直接调用:
pstmt = conn.prepareStatement(SELECT_ALL_SQL);
❻ 如何用javaBean连接数据库
关于JSP中调用JavaBean实现数据库连接和操作!
首先是JavaBean的原程序
//——————————————————————
package
mywebconn;
import
java.sql.*;
public
class
JDBCrs
{
//
static
final
String
sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
static
final
String
sConnStr="jdbc:odbc:Driver={MicroSoft
Access
Driver
(*.mdb)};DBQ=D:/myWeb01/WebMole1/test.mdb";
Connection
conn=null;
ResultSet
rs=null;
public
JDBCrs()
{
try
{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException
e)
{
System.err.println(e.getMessage());
}
}
//
the
public
public
ResultSet
executeQuery(String
sql)
{
rs=null;
try
{
conn=DriverManager.getConnection(sConnStr);
Statement
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}
catch(SQLException
ex){
System.err.println("aq.executeQuery
"+ex.getMessage());
}
return
rs;
}
public
void
executeUpdate(String
sql)
{
try
{
conn
=
DriverManager.getConnection(sConnStr);
Statement
stmt
=
conn.createStatement();
stmt.executeUpdate(sql);
conn.close();
}
catch(SQLException
ex)
{
System.err.println("aq.executeUpdate
"+ex.getMessage());
}
}
public
void
close()
{
try
{
if
(!conn.isClosed())
{
conn.close();
}
}
catch
(SQLException
ex)
{
System.err.println("conn.close
"+ex.getMessage());
}
}
}
//——————————————————————
这个JavaBean叫JDBCrs(自己命名)
这个JavaBean是属于mywebconn这个包的(自己定义)
其中有一个叫executeQuery(String
sql)的返回ResultSet对象的方法!
当调用这个方法后,最好要调用close()这个方法关闭连接!
还有一个叫executeUpdate(String
sql)的方法,该方法不返回对象,只执行SQL语句,当执行完后会自动
关闭数据库连接!
String
sDBDriver和String
sConnStr字符串变量要根据实际情况做更改!!
在页面被调用时:
//保证可以使用ResultSet对象
//id
属性是被实例化后的名称
❼ 如何用javaBean连接数据库
汗颜了...
看写的这代码.. 写了个demo... 有注释. 可以参考下..
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectMySQLDatabase {
public static final String URL = "jdbc:mysql://localhost:3306/test";
public static final String USER = "root";
public static final String PASSWORD = "root";
public static final String DRIVER_CLASS = "com.mysql.jdbc.Driver";
static {
try {
// 加载数据库驱动.. 在整个JVM里面. 只需要执行一次就OK.. 所以一般设计成静态代码块里面..
Class.forName(DRIVER_CLASS);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
/**
* 工具类.. 都是静态方法.. 所以一般构造器私有..
*/
private ConnectMySQLDatabase() {
}
/**
* 获得连接的方法.
*
* @return
* @throws SQLException
*/
public static Connection getConnection() throws SQLException {
Connection conn = null;
try {
conn = DriverManager.getConnection(URL, USER, PASSWORD);
return conn;
} catch (SQLException e) {
throw e;
}
}
/**
* 测试方法.
*
* @param args
*/
public static void main(String[] args) {
Connection conn = null;
try {
conn = ConnectMySQLDatabase.getConnection();
// do something what u want ...
} catch (SQLException e) {
e.printStackTrace();
} finally {
ConnectMySQLDatabase.close(conn);
}
}
/**
* 关闭数据库连接方法.
*
* @param conn
*/
public static void close(Connection conn) {
if (null != conn) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
conn = null;
}
}
}
关于你提出的问题...稍微解释下..
调用Class.forName("org.gjt.mm.mysql.Driver"); 这个方法.. 可能会throws出..
java.lang.ClassNotFoundException.
所以得. try catch 一下.. 才能通过编译..
DriverManager.getConnection(connStr, "root", "root");
这些异常同理....
"一个项目下的JSP文件能用".. 知道问什么能用吗. ??
应为jsp编译成Servlet的时候.. 所有的异常都给throws了.. 不用显示的写try catch了..
最后提个设计的建议..
类似于这种操作数据库的工具类..
最好设计成全静态的方法.. 不用连次数据库就new个对象.
That's all I want to say..
❽ 怎么用javabean查询数据库
如果想用javabean的形式查询数据库的话,你可以试试mybatis技术,他给你集成了很多实用的功能,利用参数拼接等等.
❾ JavaBean连接数据库问题!
String sql = "select * from admin";
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
//你可以获取返回的rs对象 然后:
while(rs.next()) {
int name = rs.getString("username");
int pass = rs。getString("password");
System.out.println(name+ " " + pass);
}
❿ javabean 中访问数据库路径该怎么写
import Java.sql.*;
public class AccessDB {
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:Driver={MicroSoft Access Driver *.mdb)};DBQ = Northwind.mdb";
String user = "";
String pwd = "";
Connection conn;
Statement stmt;
ResultSet rs;
public MyDB() {
try {
Class.forName(driver);
} catch (Exception e) {
System.out.println(e);
}
}
//创建不可滚动的连接
public void connect() {
try {
conn = DriverManager.getConnection(url,user,pwd);
stmt = conn.createStatement();
} catch (Exception e) {
System.out.println(e);
}
}
//创建可以滚动的连接
public void connect2() {
try {
conn = DriverManager.getConnection(url,user,pwd);
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
} catch (Exception e) {
System.out.println(e);
}
}
//关闭连接
public void close() {
try {
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
System.out.println(e);
}
}
//查询语句
public ResultSet executeQuery(String sql) {
try {
if (stmt == null) {
connect();
}
rs = stmt.executeQuery(sql);
} catch (Exception e) {
System.out.println(e);
}
return rs;
}
}