ESTA软件方向第二次培训

2024-04-21 17:38

本文主要是介绍ESTA软件方向第二次培训,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

JDBC&爬虫入门

一、JDBC

1、什么是JDBC

Java DataBase Connectivity,一种用于执行SQL语句的Java API

这次培训只演示Java执行mysql语句

2、首先了解一些mysql指令

(1)创建数据库

create database esta;//esta是数据库名

(2)删除数据库

drop database esta;

(3)使用该数据库

use esta;

(4)显示数据库中的表

show tables;

(5)删除表

drop table student;//student是表名

(6)创建表

create table student(

id int auto_increment primary key,//自动加编号的主键

name varchar(50),        //varchar表示可变长度,存入数据是几个字节大小就占用几个字节大小,但超过设置的值时会被截断

sex char(20),          //char(T)表示不可变长度,每个值都占用T个字节,如果长度小于T,mysql就会在它的右边以空格字符补足.

birthday varchar(50)

)default charset=utf8;   //设置默认编码为utf-8

(7)插入数据

insert into student values(null,esta,‘女’,2000-10-2);

(8)查询表中的数据

select * from student;//*表示选择所有

select id,name from student;//表示只选取idname两列

(9)修改某一条数据

update student set sex='' where id=1;//将主键为1的数据中的sex改为''

(10)删除数据

delete from student where id=1;//删除主键为1的这条记录

3、尝试使用命令行执行mysql指令

(1)打开上次培训时安装的xampp

2)开启mysql服务(点击mysql对应的start

3)点击shell打开命令行

4)输入命令:mysql -u root -p回车之后会让你输入密码,如果没有密码的话直接回车即可

5)现在就可以开始运行2中的mysql命令了,实践一波。

4、Java代码来替代命令行中对mysql的操作
1)、开启数据库

先进行3中的(1)与(2)步,将数据库服务打开。

2)、下载并解压jar

官方下载链接:https://dev.mysql.com/downloads/connector/j/


3)、导入jar包
在工程中导入jar包:新建工程- > 右击工程名-> 构建路径-> 添加外部归档-> 选择(2)中解压得到的.jar文件

                

(4)、编写代码
package ESTA;
import java.sql.*;import com.mysql.jdbc.PreparedStatement;public class esta_conncet {public static void main(String[] args){//连接对象Connection conn;//驱动String driver = "com.mysql.jdbc.Driver";//jdbc:mysql://localhost:3306/esta 为数据库eata的地址//?useUnicode=true&characterEncoding=utf8加上这个防止汉字乱码String addr = "jdbc:mysql://localhost:3306/esta?useUnicode=true&characterEncoding=utf8";//用户名String username ="root";//密码String password = "";try{//加载驱动Class.forName(driver);//建立连接conn = DriverManager.getConnection(addr, username, password);//判断是否连接if(!conn.isClosed()){System.out.println("连接成功");}Statement state = conn.createStatement();//创建表,sql为在数据库中创建表的命令语句,与2中的语句完全相同,不过因为字符串过长,用+连接String sql = "create table student("+"id int auto_increment primary key,"+"name varchar(50),"+"sex varchar(20),"+"birthday varchar(30)"+")default charset=utf8;";//state.executeLargeUpdate()方法用于运行mysql命令,如果成功即返回0if(state.executeLargeUpdate(sql)==0){System.out.println("创建成功");}//到这里为止,就已经在名为esta的数据库中创建了一个名为student的表//上面创建表时使用Statement对象来操作数据库,但Statement实现传参较为麻烦//并且速度效率和安全方面也不及Preparedstatement,//初学测试的时候可以用statement,但是以后使用尽量用PrepareStatement//Preparedstatement利用?(占位符)传参,下面插入数据使用Preparedstatement演示//PreparedStatement.setString(int arg0, String arg1)用于将占位符补齐,从而实现传参//arg0表示占位符的索引,表示要将占位符替换掉的参数String name = "esta";String sex = "male";String birthday = "2000";PreparedStatement pst = (PreparedStatement) conn.prepareStatement("insert into student values(null,?,?,?);");//获得一个PreparedStatement对象,并传入sql语句pst.setString(1, name);//占位符索引从1开始,用name替换第一个占位符pst.setString(2, sex);//用sex替换第二个占位符pst.setString(3, birthday);//用birthday替换第三个占位符pst.executeUpdate();//执行语句//到这里为止,就在student表中插入了一组数据(记录),尝试从从表中将这组数据提取出来//下面这个语句也与2中的插入语句一样//相信你们看到这里,已经知道jdbc事实上就是用Java来执行sql的命令,命令一模一样String sql_1 = "select * from student";//这条命令表示获取student表中的所有记录ResultSet rs = state.executeQuery(sql_1);//执行上面的命令,并将结果存入一个结果集中while(rs.next()){                         //遍历所有记录System.out.print(rs.getInt("id")+"   ");System.out.print(rs.getString("name")+"   ");System.out.print(rs.getString("sex")+"   ");System.out.println(rs.getString("birthday"));}pst.close();//使用完数据库一定要记得关闭连接state.close();conn.close();} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}}
上面的代码实现了在数据库中创建一个表,在表中插入一组数据并从数据库中提取输出这组数据。但是Java可以对数据库进行的操作还有很多,比如更新一组数据、删除一张表等。实际操作起来也是像上面代码中那样用Java来执行mysql命令,所以只要熟练掌握了mysql的命令,那么用Java来操作数据库将是一件非常简单的事,多实践即可。


二、爬虫入门

1、安装pythonpycharm

python下载地址:https://www.python.org/ftp/python/3.6.5/python-3.6.5.exe

安装时勾选 Add Python 3.6 to PATH


Pycharm下载地址:https://www.jetbrains.com/pycharm/download/#section=windows

2、打开pycharm新建工程
3、导入相关库

requests库用于爬取  beautifulsoup用于解析

可以开启cmd,输入pip install [名称]下载导入  如:pip install requests

也可以在pycharm中点击File -> Setting ->Project:[工程名] -> Project Interpreter -> +号


搜索需要的库


点击 Install Package

 4、获取必要的一些东西

尝试爬取河海大学官网主页面源代码,在写代码前,应该先观察一下要爬取网站的结构,打开要爬取的网站,快捷键Fn+F12(或win+F12)打开查看审查元素工具,点击Network


按F5刷新页面

点击Name这一列的第一个


在这里可以看到浏览器对网站进行访问时的headers,也就是浏览器的头,有了这个,网站服务器会在一定程度上把你的爬虫当成是浏览器。


拷贝Request Headers。

5、编写代码

右击pycharm中已建立的工程的Scripts文件夹,点击New ——> Python File ——>输入文件名,确定

import requests
from bs4 import BeautifulSoupclass spider(object):#创建一个spider类def __init__(self):#相当于Java中的构造函数self.headers = {      #浏览器头,就是刚刚拷贝下来的,以键值对形式规范好,与Java中的map相似,在python中成为字典"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","Accept-Encoding":"gzip, deflate","Accept-Language":"zh-CN,zh;q=0.9","Cache-Control":"max-age=0","Connection":"keep-alive","Host":"www.hhu.edu.cn","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Safari/537.36"}def get_html(self,url):#创建一个爬起函数html = requests.get(url,headers=self.headers).text#爬取print(html)if __name__ == '__main__':spider = spider().get_html("http://www.hhu.edu.cn/")

因为时间关系,只是将获取到的html源代码输出了,没有演示BeautifulSoup的解析效果,ppt中提到的利用selenium实现自动登录的代码也没有演示,大家如果有兴趣的话可以随时找我们交流 esta_iot@163.com

这篇关于ESTA软件方向第二次培训的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/923667

相关文章

软件设计师备考——计算机系统

学习内容源自「软件设计师」 上午题 #1 计算机系统_哔哩哔哩_bilibili 目录 1.1.1 计算机系统硬件基本组成 1.1.2 中央处理单元 1.CPU 的功能 1)运算器 2)控制器 RISC && CISC 流水线控制 存储器  Cache 中断 输入输出IO控制方式 程序查询方式 中断驱动方式 直接存储器方式(DMA)  ​编辑 总线 ​编辑

【STM32】SPI通信-软件与硬件读写SPI

SPI通信-软件与硬件读写SPI 软件SPI一、SPI通信协议1、SPI通信2、硬件电路3、移位示意图4、SPI时序基本单元(1)开始通信和结束通信(2)模式0---用的最多(3)模式1(4)模式2(5)模式3 5、SPI时序(1)写使能(2)指定地址写(3)指定地址读 二、W25Q64模块介绍1、W25Q64简介2、硬件电路3、W25Q64框图4、Flash操作注意事项软件SPI读写W2

免费也能高质量!2024年免费录屏软件深度对比评测

我公司因为客户覆盖面广的原因经常会开远程会议,有时候说的内容比较广需要引用多份的数据,我记录起来有一定难度,所以一般都用录屏工具来记录会议内容。这次我们来一起探索有什么免费录屏工具可以提高我们的工作效率吧。 1.福晰录屏大师 链接直达:https://www.foxitsoftware.cn/REC/  录屏软件录屏功能就是本职,这款录屏工具在录屏模式上提供了多种选项,可以选择屏幕录制、窗口

HomeBank:开源免费的个人财务管理软件

在个人财务管理领域,找到一个既免费又开源的解决方案并非易事。HomeBank 正是这样一个项目,它不仅提供了强大的功能,还拥有一个活跃的社区,不断推动其发展和完善。 开源免费:HomeBank 是一个完全开源的项目,用户可以自由地使用、修改和分发。用户友好的界面:提供直观的图形用户界面,使得非技术用户也能轻松上手。数据导入支持:支持从 Quicken、Microsoft Money

嵌入式方向的毕业生,找工作很迷茫

一个应届硕士生的问题: 虽然我明白想成为技术大牛需要日积月累的磨练,但我总感觉自己学习方法或者哪些方面有问题,时间一天天过去,自己也每天不停学习,但总感觉自己没有想象中那样进步,总感觉找不到一个很清晰的学习规划……眼看 9 月份就要参加秋招了,我想毕业了去大城市磨练几年,涨涨见识,拓开眼界多学点东西。但是感觉自己的实力还是很不够,内心慌得不行,总怕浪费了这人生唯一的校招机会,当然我也明白,毕业

内卷时代无人机培训机构如何做大做强

在当今社会,随着科技的飞速发展,“内卷”一词频繁被提及,反映了各行业竞争日益激烈的现象。对于无人机培训行业而言,如何在这样的时代背景下脱颖而出,实现做大做强的目标,成为每个培训机构必须深思的问题。以下是从八个关键方面提出的策略,旨在帮助无人机培训机构在内卷时代中稳步前行。 1. 精准定位市场需求 深入研究市场:通过市场调研,了解无人机行业的最新趋势、政策导向及未来发展方向。 明确目标

PDF 软件如何帮助您编辑、转换和保护文件。

如何找到最好的 PDF 编辑器。 无论您是在为您的企业寻找更高效的 PDF 解决方案,还是尝试组织和编辑主文档,PDF 编辑器都可以在一个地方提供您需要的所有工具。市面上有很多 PDF 编辑器 — 在决定哪个最适合您时,请考虑这些因素。 1. 确定您的 PDF 文档软件需求。 不同的 PDF 文档软件程序可以具有不同的功能,因此在决定哪个是最适合您的 PDF 软件之前,请花点时间评估您的

理解分类器(linear)为什么可以做语义方向的指导?(解纠缠)

Attribute Manipulation(属性编辑)、disentanglement(解纠缠)常用的两种做法:线性探针和PCA_disentanglement和alignment-CSDN博客 在解纠缠的过程中,有一种非常简单的方法来引导G向某个方向进行生成,然后我们通过向不同的方向进行行走,那么就会得到这个属性上的图像。那么你利用多个方向进行生成,便得到了各种方向的图像,每个方向对应了很多

梳理2024年,螺丝钉们爱用的3款剪辑软件

这年头,视频到处都是,就跟天上的星星一样数不清。不管你是公司里的新面孔,还是职场上的老狐狸,学会怎么剪视频,就好比找到了赢的秘诀。不管是给上司汇报工作,展示你的产品,还是自己搞点小视频记录生活,只要是剪辑得漂亮,肯定能一下子吸引大家的目光,让人记得你。咱们今天就来侃侃现在超火的三款视频剪辑工具,尤其是PR剪辑,你肯定听说过,这货在剪辑界可是大名鼎鼎,用它剪视频,既专业又麻利。 NO1. 福昕轻松

秒变高手:玩转CentOS 7软件更换的方法大全

在 CentOS 7 中更换软件源可以通过以下步骤完成。更换源可以加快软件包的下载速度,特别是当默认源速度较慢时。以下是详细步骤: 前言 为了帮助您解决在使用CentOS 7安装不了软件速度慢的问题,我们推出了这份由浪浪云赞助的教程——“CentOS7如何更换软件源加快下载速度”。 浪浪云,以他们卓越的弹性计算、云存储和网络服务受到广泛好评,他们的支持和帮助使得我们可以将最前沿的技术知识分