jsp学习(五)

时间:2023-03-09 19:11:58
jsp学习(五)

在进行jsp与jdbc连接时,出现这样一个错误,提示如下:

java.net.ConnectException: Connection refused: connect

后来发现是由于mysql数据库没开。

  <%@ page language="java" contentType="text/html;charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page language="java" %>
<%@ page import="org.gjt.mm.mysql.Driver" %>
<%@ page import="java.sql.*" %>
<%
//驱动程序名
String driverName="com.mysql.jdbc.Driver";
//数据库用户名
String userName="xiaohengdada";
//密码
String userPasswd="123456";
//数据库名
String dbName="xh";
//表名
String tableName="account";
//联结字符串
String url="jdbc:mysql://localhost/xh";
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connection=DriverManager.getConnection(url,userName,userPasswd);
Statement statement = connection.createStatement();
String sql="SELECT * FROM "+tableName;
ResultSet rs = statement.executeQuery(sql);
//获得数据结果集合
ResultSetMetaData rmeta = rs.getMetaData();
//确定数据集的列数,亦字段数
int numColumns=rmeta.getColumnCount();
// 输出每一个数据值
out.print("id");
out.print("|");
out.print("name");
out.print("|");
out.print("money");
out.print("<br>");
while(rs.next()) {
out.print(rs.getString(1));
out.print("|");
out.print(rs.getString(2)+" ");
out.print("|");
out.print(rs.getString(3));
out.print("<br>");
}
out.print("<br>");
out.print("数据库操作成功,恭喜你");
rs.close();
statement.close();
connection.close();
%>

一个简单的javaBean标签访问使用实例

 package xh;

 /**
* @author gacl
* Person类就是一个最简单的JavaBean
*/
public class Person { //------------------Person类封装的私有属性---------------------------------------
// 姓名 String类型
private String name;
// 性别 String类型
private String sex;
// 年龄 int类型
private int age;
//是否已婚 boolean类型
private boolean married;
//--------------------------------------------------------- //------------------Person类的无参数构造方法---------------------------------------
/**
* 无参数构造方法
*/
public Person() { }
//--------------------------------------------------------- //------------------Person类对外提供的用于访问私有属性的public方法---------------------------------------
public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getSex() {
return sex;
} public void setSex(String sex) {
this.sex = sex;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public boolean isMarried() {
return married;
} public void setMarried(boolean married) {
this.married = married;
}
//---------------------------------------------------------
}
 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%--
在jsp中使用jsp:useBean标签来实例化一个Java类的对象
<jsp:useBean id="person" class="xh.Person" scope="page"/>
┝<jsp:useBean>:表示在JSP中要使用JavaBean。
┝id:表示生成的实例化对象,凡是在标签中看见了id,则肯定表示一个实例对象。
┝class:此对象对应的包.类名称
┝scope:此javaBean的保存范围,四种范围:page、request、session、application
--%>
<jsp:useBean id="person" class="xh.Person" scope="page"/>
<%
//person对象在上面已经使用jsp:useBean标签实例化了,因此在这里可以直接使用person对象
//使用setXxx方法为对象的属性赋值
//为person对象的name属性赋值
person.setName("笑哼");
//为person对象的Sex属性赋值
person.setSex("男");
//为person对象的Age属性赋值
person.setAge(25);
//为person对象的married属性赋值
person.setMarried(false);
%>
<!DOCTYPE HTML>
<html>
<head>
<title>javaBean标签访问实例</title>
</head> <body>
<%--使用getXxx()方法获取对象的属性值 --%>
<h2>姓名:<%=person.getName()%></h2>
<h2>性别:<%=person.getSex()%></h2>
<h2>年龄:<%=person.getAge()%></h2>
<h2>已婚:<%=person.isMarried()%></h2>
</body>
</html>

<jsp:useBean>标签的执行原理:"首先在指定的域范围内查找指定名称的JavaBean对象,如果存在则直接返回该JavaBean对象的引用,如果不存在则实例化一个新的JavaBean对象并将它以指定的名称存储到指定的域范围中。