Jsp编程
JAVA综合面试题:页面的抓取、解析、保存数据库和生成HTML的页面展示 收藏
次例子可以用来学习网络编程,正则表达式的使用,泛型,数据库的基本操作等JAVA知识
问题如下:来源于论坛
http://topic.csdn.net/u/20090616/13/59aa4e2d-3752-45df-9c1b-c65c46c3e4d7.html
写一个jsp页面,访问时显示从下面的页面提取出的销售商详细信息:价格、运费、经销
商基本信息等,并写到一个数据库表里。
http://www.amazon.com/gp/offer-listing/B0012J52OC/
数据抓取的问题,涉及到
1 用URLConnection 读取页面信息,用httpclient也行
2 用Pattern 解析页面并拿到你要的信息
3 显示数据
4 存入数据库
这个是一个综合的考试,涉及的知识面比较广。
1 我这里只给出关键的部分,使用java程序实现,而不是JSP的代码。移植工作请自行完成。
2 我使用自己的数据库连接,请替换为应用服务器提供的数据源为好
3 代码分三部分,数据库结构,POJO类和应用程序,当然还有一个辅助类,也是我自己写的
4 欢迎光临老紫竹的JAVA世纪网 http://www.java2000.net, 呵呵,广告放里面了
一、数据库结构 AmazonGoods.sql 使用的是MySQL的数据库
view plaincopy to clipboardprint?
-- ----------------------------
-- Table structure for amazongoods
-- ----------------------------
CREATE TABLE `amazongoods` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`price` decimal(10,0) NOT NULL,
`shipping` decimal(10,0) NOT NULL,
`Seller` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Table structure for amazongoods
-- ----------------------------
CREATE TABLE `amazongoods` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`price` decimal(10,0) NOT NULL,
`shipping` decimal(10,0) NOT NULL,
`Seller` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
二、POJO类 AmazonGoods.java
view plaincopy to clipboardprint?
package com.laozizhu.test.amazon;
相关文档:
第一讲(参考《Java Web程序设计基础教程》第1章)
1 JSP 和 Java的关系
一般Java指的标注版 Java SE
另外两个版本:Java EE 和 Java ME
JSP属于Java EE的一部分。
Java EE:
组件:Web层组件(JSP+Servlet)+业务层组件(EJB)
&n ......
●jsp连接MySQL数据库
testmysql.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/softforum?
user=soft&pas ......
第一种:
<script language="javascript" type="text/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>
第二种:
<script language="javascript">
alert("返回");
window.history.back ......
由于要做上传 就找了个例子 留着参考
上传:需要smartupload组件
import com.jspsmart.upload.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
/**
* 上传公共类,对SmartUpload进行了封装
* ......