代码改变世界

jsp学习笔记

2012-12-03 20:37  我是流氓兔~~  阅读(172)  评论(0编辑  收藏  举报

JDBC-ODBC是在JDK中是有SUN本身开发出来的一套数据库访问操作。

准备access数据库

编码:

--》装入JDBC驱动程序

--》创建与数据库的连接

--》创建语句对象---Statement--PreparedStatement

--》利用语句对象执sql语句得到的结果

--》处理结果

--》结束

<%@page contentType=text/html ;charset=gb2312%>

<%page import=java.sql.*%>

定义数据库驱动程序

<%

String  DBDRIVER=sun.jdbc.odbc.jdbcodbcDriver;

定义连接对象

String  DBURl=jdbc:odbc:名称“;

 

Connection conn=null;

//操作数据库

Statement stmt=null;

/使用Statement可以向数据库中执行sql语句

-----stmt.executeUpdate(sql) 

-----stmt.executequery(sql) select使用,返回resultSet实例化

String sql=null;

Resultset rs=null;

%>

<%

加载驱动

Try{

class.forName(DBDRIVER);

}

Catch(Exception e)

{

开发中不能用out.println输出错误信息!!!

Out.println(数据库驱动程序加载失败!!);

}

%>

Connection连接数据库

Con=DriverManager.getConnection(url,id,password);

<%

Try{

Conn=DriverManager.getConnection(DBURL)

}

Catch(Exception e)

{

开发中不能用out.println输出错误信息!!!

Out.println(数据库连接失败!!);

Try{

Stmt=conn.createStatement();

Sql=insert into person(name,password,age)values(name,password,age);

stmt.exectuteUpdate(sql);

Sql=update person set name=’’,password=’’,age=’’where id=3’”;

Sql=delect  from  person where id=4;

//

 

 

Stmt=conn.createStatement();

Sql=select id,name,password,age from person;

rs=stmt.executeQuery(sql);

%>

<table border=1 width=80%>

<tr>

<td>ID</td>

<td>姓名</td>

<td>密码</td>

<td>年龄</td>

</tr>

While(rs.next()){

Int id=rs.getInt(1);

String name=rs.getString(2);

String password=rs.getString(3);//可以加字段也可以加具体的

Int age=rs.getint(age)

%>

<tr>

<td>id:<%=id%>,/td>

<td>id:<%=name%></td>

<td>id:<%=password%></td>

<td>id:<%=age%></td>

</tr>

 

<h2>id:<%=id%>,姓名:<%=name%>,密码:<%=password%>,年龄:<%=age%></h2>

<%

}

%>

</table>

<%

}

Catch(Exception e)

{

Out.println(操作数据库失败!!)

}

//关闭数据库

Try{

Stmt.close();//关闭操作

Conn.close();//关闭连接

}

Catch(Exception e){

Out.println(数据库关闭失败);

}

%>

 

如何插入数据库

//接受表单参数

//乱码处理

<%request.setCharacterEncoding(gb2312);

String name=request.getParameter(name);

String password=request.getParameter(password);

Int age=0;

Tyr{

Age=integer.prarseint(request.getParameter(age)

}

Catch(){

}

重新组合新的sql语句

Sql=insert into person(name,password,age) values(

 

 

批处理的概念。

 

所有的javabean必须放在一个包内

Javabean必须声明成public class 类型, 文件名称与类名一致

所以的属性必须封装

设置和取得属性可以通过setter getter;

 

Package  包名

Public class 类名{

//封装

Private string name;

Private string password;

Public void setName(String name)

{

This.name=name;

}

Public void setPassword(String password)

{

This.password=password;

}

Public String getName(){

Return this.name

}

Public String getPassword(){

Return this.password;

}

}

调用javabean

<%@ page contentType=text/html;charset=gb2312%>

<%@page import=包名%>

<%

//实例化对象

类名 实例化

例如:

<%

SimpleBean sb=new SimpleBean();

sb.setName(www);

sb.setPassword(344);

%>

<h1>姓名:<%=sb.getName()%></h1>

<h2>密码:<%=sb.getPassword()%></h2>

 

如何不导包

 <jsp:useBean id=sb scope=page class=包名.类名/>

 

使用一下代码可以代替掉一切的setter方法调用

<jsp:setProperty name=sb property=*/>

Name:已经声明过的javaBean对象的(id);

Property:表示要设置的属性,如果为*  则自动匹配。

<jsp:setProperty name=sb property=name/>取得自己想要的属性值

<jsp:setProperty name=sb property=name param=XXX/>自己来设置自己想要的值,此例:param 的值赋给name 

如果输入的值是一个变量,可以用表达式输出

String name =””;

String password=””;

<jsp:setProperty name=sb property=name value=<%=name%>/>

<jsp:setProperty name=sb property=password value=<%=password%>/>

回顾:

Jsp中属性的范围有四种

Page 

Request 

Session

Application