1、第八章 JSP中JavaBean的应用(续),西南科技大学网络教育系列课程 动态网页设计(JSP),计数器JavaBean,Counter.java,public synchronized long setCount()count+; return count;,counterJavaBeanJsp.jsp,用JavaBean 访问数据库(一),QueryBean.java,public String query_statement; /*定义sql语句*/ public String param; /*查询条件*/ public ResultSet result=null; /*查询结果*/
2、public Connection conn;,public void setParam(String param) this.param=param; ,用JavaBean 访问数据库(一),QueryBean.java,public void setConnection(String driverName,String jdbcURL,String username,String passwd) throws Exception Connection conn1; Class.forName(driverName); conn1=DriverManager.getConnection(jd
3、bcURL,username,passwd); conn1.setAutoCommit(false); this.conn = conn1; ,用JavaBean 访问数据库(一),QueryBean.java,public ResultSet getResult() try PreparedStatement select_stm=conn.prepareStatement(query_statement,java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY); if (param!=nu
4、ll) for(int i=0;iparam.length;i+) select_stm.setString(i+1,parami); result=select_stm.executeQuery(); catch(Exception e)System.out.println(e); return result; ,用JavaBean 访问数据库(一),可以将操作数据库的程序封装在JavaBean中,方便Jsp程序调用,实例一:queryJavaBeanJsp.jsp,query.setConnection(.),query.setQuerystatement(stringSqlString)
5、;,rs=query.getResult();,用JavaBean 访问数据库(二),与前面例子对比,将连接和操作数据库的程序全部封装在JavaBean中,使得数据库访问程序具有更好的封装性,实例二:connmysql.jsp,用JavaBean 访问数据库(二),Connmysql.java,String sDBDriver = “org.gjt.mm.mysql.Driver“;String sConnStr = “jdbc:mysql:/localhost:3306/testDatabse“;String username=“root“;String password=“;Connect
6、ion conn = null;ResultSet rs = null;,用JavaBean 访问数据库(二),Connmysql.java,public Connmysql() try Class.forName(sDBDriver); catch(java.lang.ClassNotFoundException e) System.err.println( e.getMessage();,用JavaBean 访问数据库(二),Connmysql.java,public ResultSet executeQuery(String sql) try conn = DriverManager.g
7、etConnection(sConnStr,username,password); Statement stmt = conn.createStatement();rs = stmt.executeQuery(sql); catch(SQLException ex) System.err.println(ex.getMessage();return rs;,购物车实例,clear() contains(Object value) containsValue(Object value) containsKey(object key) elements() get(Object key) isEm
8、pty() keys() put(Object key,Object value) remove(Object key) size(),Hashtable类,购物车实例,相关文件buyCar.javaaddGoods.jsp buyBook1.jsp buyBook2.jsp buyBook3.jsp deleteGoods.jsp minusGoods.jsp,Goods表 Goods_id bigint(20) PRI Goods_name varchar(40)Goods_price float,分页操作JavaBean,页码操作Bean dataPageBean.java,数据库操作Bean Connmysql.java,带分页显示数据的程序 dataPage1.jsp,利用外部的Bean,JSP之所以强大,很大程度上依赖于外部组件的使用。有很多著名的公司开发外部Bean组件,比如SUN公司和IBM公司等。最常用的组件:Email组件、图形组件和文件上传组件,绘制图形,在Java图形编程领域中,最著名的组件是JGraph组件,该组件在绘制二维和三维方面功能非常优秀。最新的JGraph组件可以从“http:/ 程序名称:Usejgraph.java,