发表于: 2017-04-12 18:49:02

2 1341


今天时间安排:

上午看jdbc是什么,怎么连接数据库的视频。写好后报错。一直在查错。

中间吃饭,看人民的名义。。睡午觉,反正就是没很抓紧时间啦。


今天所做:

复习了mysql语句,因为要用到数据库数据。

 新建表:

create table student1(

  id int primary key,

  name varchar(20) not null unique,

  type varchar(20) not null,

  time date,

  school varchar(20) not null,

  online_id int,

  wish varchar(20) not null,

  rec_senior varchar(20) not null,

  create_at varchar(20) not null,

  update_at date);

修改id为自增

ALTER TABLE `student1` CHANGE COLUMN `id` `id` INT NOT NULL AUTO_INCREMENT  ;

修改数据类型为date:

ALTER TABLE `student1` CHANGE COLUMN `create_at` `create_at` VARCHAR(20) NOT NULL DATE  ;  这个错了 

alter table student1 modify column create_at date;

添加数据:

总算对了

insert into student1 (name,type,time,school,online_id,wish,rec_senior,create_at)

 values ('韦琦','java','2017-4-2','无名大学','1501','如果我不能在IT特训营拼尽全力','无','2017-2-2');

更改数据:

 update student1 set wish='老大最棒';

查询数据:

select * from student1 where name='韦琦';

定义表的约束:

primary key :不允许为空,不允许重复。------我建的id没有增加数据,自动为1了。

auto_increment :定义主键自动增长

JDBC:

java database connectivity ,sun公司提供的一套连接规范。

java程序接口,连mysql的要有实现类,连Oracke就有它的实现类。

JDBC四个核心对象:

drivermanager :创建连接

connection:一个连接 

statement:操作sql语句,并返回相应结果的对象

resultset:结果集,客户端存表数据的对象


Junit :

建java class文件,命名。

在class文件里写方法。在方法上写@Test,导入junit.test包。就可以运行这个方法。

在第二个方法上也写@Test,就可以运行第二个方法而不用注释第一个方法。

测试方法要求:方法里不能有返回值。也不能有参数。

像这样



跟着视频把jdbc连接数据库搞好了,但是,只是照着教程做,并不太明白各步骤是干什么的,为何如此,没有整体意识。

把整个连接过程捋一捋。

1.新建java project,在新建的project 中右键新建名为lib的floder。

2.把下载的mysql connector jar 包中的.jar文件粘贴在lib下边。在jar包上右键—build path —add to build path,添加完成后,上面会出现一个文件夹,下面导入的jar文件前边有个 牛奶瓶。

3.然后在工程中新建class,输入代码。

//注册驱动

DriverManager.registerDriver(new com.mysql.jdbc.Driver());

//获取连接connection  

Connection conn =DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?useSSL=false","root","123456");

// 得到执行sql语句的对象statement

Statement stmt =conn.createStatement();

//执行sql语句 ,并返回结果

ResultSet rs=stmt.executeQuery("select*from student1");

//处理结果 

while(rs.next()){

System.out.println(rs.getObject(1));

}

//关闭资源

rs.close();

stmt.close();

conn.close();

最后返回结果是:1,有点不明白这个结果。


看到这段:

这个是使用driver连接数据库的,而通常开发中使用的是drivermanager或数据库连接池,这个仅作为理解数据库连接事例使用。



所出问题:

检查用户名密码,没错。jar包放在jdk安装目录下,重新加上去了。依然报错。

原来是jdbc:mysql:localhost:3306/数据库名localhost前面那里掉了“//”。加上后报图2的错。提示里有You need either to explicitly disable SSL by setting useSSL=false,因此在url的数据库名后面加上

framework?characterEncoding=utf8&useSSL=true,运行ok。

参考链接:http://blog.csdn.net/guoweimelon/article/details/50810399

  \

  错误提示:

 Wed Apr 12 18:22:48 CST 2017 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.



今天收获:

知道怎么连接jdbc了,还有junit。


明天要做:

今天完成的内容比如连接jdbc是看的视频,视频中jdbc这部分只看了一个视频,junit也是一个视频,但这个章节里面还有很多视频,听了一下,有些东西不明白。是看完这些视频还是接着做任务呢。感觉自己没基础耶。


还是先做任务吧。抓紧时间,这些任务明天能完成的吧。




返回列表 返回列表
评论

    分享到