记得导连接数据的依赖包
jdbc依赖包下载地址
不多说,直接附上代码
package com.fang.jdbc;
import java.sql.*;
/**
* @program: blog
* @description: 连接数据库并进行简单的操作
* @author: Fang
* @create: 2020-05-11 11:14
**/
public class JDBC {
/**
* 取得与数据库的连接
*
* @return Connection
*/
public Connection getConnection() {
//数据库账号
String user = "root";
//数据库密码
String pwd = "666";
// 定义连接接口
Connection con = null;
try {
/*------oracle数据库----*/
//加载驱动器
Class.forName("oracle.jdbc.driver.OracleDriver");
//连接协议
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
/*---------mysql--------*/
//加载驱动器
// Class.forName("com.mysql.jdbc.Driver");
//连接协议
//String url="jdbc:mysql://localhost:3306/mysql里面你所创建的数据库的名字";
//如果是mysql高于8.0版本包括8.0:com.mysql.jdbc.Driver改为com.mysql.cj.jdbc.Driver
//且url改为jdbc:mysql://localhost:3306/mysql里面你所创建的数据库的名字?useSSL=false&serverTimezone=UTC
con = DriverManager.getConnection(url, user, pwd);
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
/**
* 添加数据
*
* @return
*/
public boolean insert() {
//取得连接
Connection connection = getConnection();
//创建Sql语句预执行器--防止恶意的sql注入
PreparedStatement ps = null;
String sql = "insert into tb_test (name,age,sex) values(?,?,?)";
boolean flag = false;
try {
//预编译
ps = connection.prepareStatement(sql);
ps.setString(1, "fang");
ps.setString(2, "666");
ps.setString(3, "男");
//开始执行
flag = ps.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return flag;
}
/**
* 删除
*
* @return
*/
public boolean delete(String name) {
//取得连接
Connection connection = getConnection();
//创建Sql语句预执行器--防止恶意的sql注入
PreparedStatement ps = null;
String sql = "delete from tb_test where name=?";
boolean flag = false;
try {
//预编译
ps = connection.prepareStatement(sql);
ps.setString(1, name);
//开始执行
flag = ps.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return flag;
}
/**
* 修改数据
*
* @return
*/
public boolean update(String name, int age) {
//取得连接
Connection connection = getConnection();
//创建Sql语句预执行器--防止恶意的sql注入
PreparedStatement ps = null;
String sql = "update tb_test set age=? where name=?";
boolean flag = false;
try {
//预编译
ps = connection.prepareStatement(sql);
ps.setInt(1, age);
ps.setString(2, name);
//开始执行
flag = ps.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return flag;
}
/**
* 根据名字查询数据
*
* @return
*/
public void query(String name) {
//取得连接
Connection connection = getConnection();
//创建Sql语句预执行器--防止恶意的sql注入
PreparedStatement ps = null;
String sql = "select * from tb_test where name=?";
ResultSet rs = null;
try {
//预编译
ps = connection.prepareStatement(sql);
ps.setString(1, name);
//开始执行
rs = ps.executeQuery();
while (rs.next()) {
/*通过数据库表中的字段名取数据*/
String uname = rs.getString("name");
int age = rs.getInt("age");
String sex = rs.getString("sex");
System.out.println("name="+ uname);
System.out.println("age="+ age);
System.out.println("sex="+ sex);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
RefineDet论文及代码训练准备代码修改:开始训练测试结果关于目标检测的感悟与想法最后论文及代码先放论文:Single-Shot_Refinement_Neural_CVPR_2018_paper官方代码:[official code - caffe]pytorch版本:RefineDet.PyTorch其他版本也可以在github上找到,识别的准确度没有多少差距具体网络结构及原理等在这里不作阐述。训练准备这里我测试了PyTorch版本的,因为作者上传的代码使用比较简单,大家要测试的话要_目标检测实例
html>html lang="en">head> meta charset="UTF-8"> title>Titletitle> style> * { margin: 0; padding: 0; } li { list-style: none;
a.完全不能进行读写:(1) 通信协议不正确:有很多的I2C设备,并不支持所有的I2C协议,同时也不是一个比较标准的I2C设备;软件的通信时序不正确。(2)I2C设备地址不正确:有很多的I2C设备的地址是可以通过硬件设定的;也有器件资料提供的数据是错误的。(3)I2C通信线上没有加上拉电阻:由于I2C的从设备的SDA,SCL的PIN是输出开漏的,所以必须加上拉电阻,同时根据_i2c写不进去
文件 目录如上图: 看到网上写的模块化都比较复杂,写个入门版的 好让大家理解理解//common.jsvar studentList = [ { name: "xiaoming", age: "22", hobby: "sleep" }, { nam...
世界上最遥远的距离,不是从南极到北极,而是我在讲解算法为何如此精妙,你却能够安详地在课堂上休息。世界上最遥远的距离,不是珠峰与马里亚海沟的距离,而是我欲把古人的智慧全盘给你,你却不屑一顾毫不怜惜。世界上最遥远的距离,不是牛A与牛C之间狭小空隙,而是你们当中,有人在通往牛逼的路上一路狂奔,而有人步入大学校园就会放弃。 --摘自《大话数据结构》 ...
ubuntu1804和Ubuntu1604均可附一个已经配置好的安装包百度云网址,这也是之前在csdn里面找到的,感谢大佬们的无私奉献:链接:https://pan.baidu.com/s/1S9Ed0JA0hLISQ6y8P-wkgA提取码:mwp2最好是直接下载这个安装包,之后的安装会十分方便。以下教程都认为已经下载了这个安装包安装jdk(1.7版本,其实如果有1.8也可以)这里网上有很多类似的教程,例如:安装jdk1.8也可以直接把分享的百度云安装包download下来,按照里面的方法_apache ant build tool
安装完mysql后,紧接着是利用Mysql server instance config wizard安装mysql服务。由于要自定义data,log,binlog的目录,利用那个wizard还要对my.ini再作一次修改。这里通过手动安装mysql服务,个人感觉更方便。在windows(or winnt)下新建my.ini文件,内容如下(当然你可以对配置文件作适当修改,以适应你自己的my
这个解决方案对我有用。如果你现在已经安装了更高版本的,记得卸载brew uninstall thrift尝试:brew tap-new $USER/local-tapbrew extract --version=‘0.13.0’ thrift $USER/local-tapbrew install [email protected]资料来源:https://gist.github.com/tonydeng/02e571f273d6cce4230dc8d5f394493c关于thrift - 如何安装_thrift 0.13版本安装
首先,创建四个java类分别是用户类User,电脑类Computer,游戏类Game以及测试类Test;代码如下:1.用户类package 类和对象;import java.util.Scanner;public class User {//首先定义用户类中的属性,有名字还有积分String name; int fen;//首先来个键盘录入 Scanner..._猜拳游戏中用户的类说明
很多程序员在一开始并不注重性能的设计,只有当系统交付运行时,才 发现问题并且开始解决这一问题,但往往这只能挽救一点点。性能的管理应该一开始 就被整合到设计和开发当中去。 最普遍的问题就是临时对象大量经常的创建,这为性能埋下隐患。 性能的问题来自很多原因,最容易解决的可能是:你选择了不好的算法来进行计算,如 用冒泡法来排序巨量数据,或者你每次使用数据时都要反复计算一次,这应该使用Cac
bool, string(u)int, (u)int8, (u)int16, (u)int32, (u)int64(u)uintptr // 指针byte, rune // rune,32位4字节,go的字符类型float32, float64complex64, complex128 // 复数,欧拉公式:cmplx.Exp(1i*math.P..._go 什么叫内建变量
I have a Hashtable in Java and want to iterate over all the values in the table and delete a particular key-value pair while iterating.How may this be done?解决方案You need to use an explicit java.util.It..._java中的hashtable迭代和删除