`
jilong-liang
  • 浏览: 482850 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类

使用Jsoup和Dom4j封装jdbc连接数据库

阅读更多
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Properties;

import org.apache.log4j.PropertyConfigurator;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.jsoup.Jsoup;

import com.app.entity.sys.JdbcInfo;

public class PropertyUtil {
	private Document doc;
	private JdbcInfo jdbcInfo; 
	public JdbcInfo getJdbcInfo() {
		if(jdbcInfo==null)
		jdbcInfo=new JdbcInfo();
		return jdbcInfo;

	}
	/**
	 * ==============================================================
	 */

	private PropertyUtil() {
		try {
			doc = new SAXReader().read(Thread.currentThread().getContextClassLoader().getResourceAsStream("sys-config.xml"));
			Element driverNameElement = (Element) doc.selectObject("/config/db-info/driver-name");
			Element urlElement = (Element) doc.selectObject("/config/db-info/url");
			Element usernameElement = (Element) doc.selectObject("/config/db-info/username");
			Element passwordElement = (Element) doc.selectObject("/config/db-info/password");
			jdbcInfo = new JdbcInfo();
			jdbcInfo.setDriverName(driverNameElement.getStringValue());//获取driver-name节点值
			jdbcInfo.setUrl(urlElement.getStringValue());
			jdbcInfo.setUsername(usernameElement.getStringValue());
			jdbcInfo.setPassword(passwordElement.getStringValue());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	/**
	 * 利用Jsoup解析xml
	 * @throws Exception
	 */
	private static void Jsoup()throws Exception{
		String pathname="src/config/doc/xml/sys-config.xml";
		File flie=new File(pathname);
		org.jsoup.nodes.Document doc = Jsoup.parse(flie, "UTF-8");
		String driverName=doc.select("driver-name").text();//获取driver-name节点值
		String url=doc.select("url").text();
		String username=doc.select("username").text();
		String password=doc.select("password").text();
		System.out.println(password);
	} 
}

 



package com.app.entity.sys;

import java.io.Serializable;

public class JdbcInfo  implements Serializable {
	private String driverName;
	private String url;
	private String username;
	private String password;

	public String getDriverName() {
		return driverName;
	}

	public JdbcInfo(String driverName, String url, String username,
			String password) {
		this.driverName=driverName;
		this.url=url;
		this.username=username;
		this.password=password;

	}

	public JdbcInfo() {
	}

	@Override
	public String toString() {
		return "JdbcInfo [driverName=" + driverName + ", password=" + password
				+ ", url=" + url + ", username=" + username + "]";
	}

	public void setDriverName(String driverName) {
		this.driverName = driverName;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}
}

 

<?xml version="1.0" encoding="UTF-8"?> 
<config> 
	<db-info> 
		<driver-name>oracle.jdbc.driver.OracleDriver</driver-name> 
		<url>jdbc:oracle:thin:@localhost:1521:oracle</url> 
		<username>sa</username> 
		<password>sa</password> 
	</db-info> 
</config> 

 

0
0
分享到:
评论

相关推荐

    用jsoup框架进行音乐网站的数据爬取。以及用spring-boot+JDBC封装搭建音乐网站平台系统。.zip

    1. **连接数据库**:使用`DriverManager.getConnection()`建立数据库连接。 2. **执行SQL语句**:通过`Statement`或`PreparedStatement`对象执行INSERT、SELECT、UPDATE、DELETE等操作。 3. **处理结果集**:对于...

    新闻爬虫的demo

    在Java中,常用的数据库连接库有JDBC(Java Database Connectivity)和ORM(Object-Relational Mapping)框架,如Hibernate和MyBatis。JDBC是Java标准的一部分,提供了与各种数据库系统交互的接口。ORM框架则简化了...

    java网络爬虫

    Java的try-catch语句可以捕获并处理异常,而log4j或slf4j等日志框架则用于记录程序运行过程中的信息,方便调试和问题排查。 九、持久化存储 除了临时存储数据,网络爬虫还可能需要将抓取的信息进行长期存储,这涉及...

    [搜索链接]Java网络爬虫(蜘蛛)源码_zhizhu.zip

    Java提供了丰富的IO库(如File和BufferedReader)和数据库驱动(如JDBC)支持数据存取。 9. **爬虫框架**:为简化开发,Java有一些成熟的爬虫框架,如WebMagic、Jsoup-Crawler和Colly。这些框架封装了网络请求、...

    Java网络爬虫源代码

    10. **日志记录**:为了便于调试和监控,爬虫程序应该记录详细的执行日志,Java的Log4j或SLF4J是常用的日志框架。 通过学习和分析这个Java网络爬虫源代码,你可以了解上述技术的实际应用,加深对网络爬虫原理的理解...

    利用java实现从百度网站上获取搜索数据

    Java中,`CSV`或`JSON`库可以用来处理和导出数据,而`JDBC`则可以用来连接和操作数据库。 7. **多线程和异步处理**:如果需要大量抓取数据,可能需要利用多线程或异步处理来提高效率。Java的并发库提供了丰富的工具...

    JAVA网络爬虫项目源码 swing界面+爬虫算法实现

    对于简单的项目,可能会使用FileWriter或CSV格式,而更复杂的情况则可能涉及数据库操作,如JDBC连接MySQL或SQLite。 7. **异常处理**:在编写网络爬虫时,网络错误、服务器响应错误等情况是常见的,因此良好的异常...

    好程序员Java教程之如何用Jsoup实现爬虫技术

    对于文本数据,如商品名称,可以创建一个实体Bean来封装数据,然后通过JDBC或ORM框架(如Hibernate)存入数据库。例如,创建一个`Product`类,包含`name`和`imageUrl`字段,然后将`names`和`images`的对应元素组合并...

    java爬虫程序

    如果数据量大,可能需要使用数据库如MySQL、MongoDB,Java提供了JDBC接口和各种ORM框架(Hibernate、MyBatis)便于与数据库交互。 5. **网页状态码和重定向**:Java爬虫需要处理HTTP响应状态码,比如200表示成功,...

    人工智能-项目实践-搜索引擎-java编写,获取百度和360搜索引擎,关键词对应网站的排名

    最后,为了使项目更易于使用和维护,我们可以封装这些功能成一个可配置的命令行工具,或者开发一个简单的Web界面,让用户输入关键词并显示抓取的排名信息。 总的来说,这个项目涵盖了网络请求、HTML解析、数据存储...

    job4j_grabber

    Java有JDBC API用于连接和操作各种数据库,或者可能使用NoSQL数据库如MongoDB。 8. **异常处理**:为了保证程序的健壮性,异常处理是必不可少的。Java的try-catch-finally语句块用于捕获和处理可能出现的异常。 9....

    java web网站常用抓取其他网站内容

    例如,使用JDBC连接MySQL,或者使用NoSQL数据库如MongoDB,以及文件系统的操作如Apache Commons IO。 7. **爬虫框架**:为简化开发,可以使用Java爬虫框架,如WebMagic、Colly等。它们封装了HTTP请求、HTML解析、...

    zhizhu.rar_htmllexer.jar_爬虫新闻_网络爬虫_网络爬虫 获取

    JAVA提供了JDBC接口用于连接各种数据库,如MySQL、PostgreSQL等。 7. **异常处理与日志记录**:良好的错误处理和日志记录是任何软件系统的重要组成部分,对于爬虫来说,遇到404错误、网络连接问题等都需要有合适的...

    java技术点

    16. **数据库连接池**:如C3P0,Druid。 17. **ORM实体填充**:自动将数据库结果转换为Java对象。 18. **分页查询**:根据数据库方言生成SQL。 19. **钓鱼网站检测**:URL验证,SSL证书检查。 20. **实时消息推送**...

    eCommerce-scrapper-

    Jsoup提供了DOM解析、CSS选择器等功能,便于我们查找和提取所需的数据元素。 3. **模拟交互**:如果网站有动态加载或者需要登录才能访问的数据,可能需要模拟用户行为,比如点击按钮、填写表单。HtmlUnit是一个无头...

Global site tag (gtag.js) - Google Analytics