java jdbc query&&insert实现

本文记录了使用Java JDBC进行数据库查询和插入操作的过程。首先,解决了查询时未显示数据的问题,通过重写toString方法实现了数据显示。然后,实现了插入数据的功能,遇到因数据库字段设计不合理导致的插入错误,并得到了解决。文中强调了数据库设计避免关键字冲突的重要性,并分享了开发中需要注意的事项。明日计划将完成更新和删除操作。
摘要由CSDN通过智能技术生成

1.在昨天的jdbc查询数据库的数据时候打印的是数据库的地址,师兄(给我指出问题出在哪里<打印的是地址---所以没有数据的出现>)所以今天先百度查询怎么解决问题


v2-5c7d42e1f58b7324b97c0428ac825a99_b.jpg


查询到解决的方法


v2-fe07525ee0f231e4e2c6911f74b508c1_b.jpg


这个是昨天出问题的关键没有重写 ToString方法


v2-1dc7757b97e441d6900519915b337c31_b.jpg



v2-ce4d3f90753dcfa81793fa66da7550bf_b.jpg


@Override

public String toString() {

return "User [id=" + id + ", username=" + username + ", classes=" + classes + ", birthday=" + birthday+ ", city=" + city + ", qq=" + qq + ", desc=" + desc + ", phone=" + phone + "]";

}

ToString方法重写后面就是要修改main方法里面的输出语句那个只能打印一条语句在控制台,所以要遍历for----each遍历一下才能输出全部的数据

下面是修改main方法的代码

public static void main(String[] args) throws Exception {

List<User> userList=new ArrayList<User>();

UserDao userDao=new UserDao();

userList=userDao.getAll();

for (User user:userList){

System.out.println(user.toString());

}

}

运行main方法测验一下打印的数据如下:


v2-7a5d7ee6d293e50e6eeebf5c5fe34553_b.jpg



和数据库的对比


v2-1dbdff0471dd04fdb6a06369161bd3a7_b.jpg


数据库的查询搞定了(昨天的打印没有数据也解决了----感谢师兄的指点)

2.在查询解决了就继续完成接下来的insert(插入数据)的操作

private void Insert(User user) throws Exception{

Connection conn =(Connection) JdbcUtil.getConnection();

String sql = "insert into stu_information (username,classes,birthday,city,qq,words,phone) values (?,?,?,?,?,?,?);";

PreparedStatement pstmt;

System.out.println("执行语句者获取成功");

pstmt = (PreparedStatement) conn.prepareStatement(sql);

//pstmt.setInt(1, user.getId());

pstmt.setString(1, user.getUsername());

pstmt.setString(2, user.getClasses());

pstmt.setString(3, user.getBirthday());

pstmt.setString(4, user.getCity());

pstmt.setInt(5, user.getQq());

pstmt.setString(6, user.getWords());

pstmt.setInt(7, user.getPhone());

System.out.println(pstmt.executeUpdate());

pstmt.close();

conn.close();

}

public static void main(String[] args) throws Exception {

//String[] string= {"老付","IT散班","1995-2-20","成都","1724085136","后台的好处","123546"};

UserDao userDao=new UserDao();

User userdata=new User();

userdata.setUsername("老2付");

userdata.setClasses("IT散班");

userdata.setBirthday("1995-2-20");

userdata.setCity("成都");

userdata.setQq(1724085136);

userdata.setWords("后台我的最爱");

userdata.setPhone(123546);

userDao.Insert(userdata);

System.out.println(userdata+"12345");

}

这是完整的insert的代码还有测试的数据

开始的原始数据


v2-49ef39223ea2a0a6ade0f4727d46334d_b.jpg


分别测试插入两条数据


v2-0446a84b998aecb73d04cd396c4076a9_b.jpg



v2-5c0d780e3d33f8773c41de9ce3ca339e_b.jpg


insert的插入数据完成

今天完成的事情:就是解决了昨天查询里面没有想要的数据,还有今天的insert的实现,往数据库里面插入数据,在这个过程中查了很多先关的资料,jdbc的实现有很多的方法,自己找了一种自己理解比较容易的方式----->收获很多

明天的计划:完成后面的update还有delete的实现,今天和昨天完成query(查询)和insert(插入)的操作,感觉自己还有好多的不足还需要多学习

今天遇到的问题:就是在insert的操作功能的实现上,由于数据库的字段设计不合理(设计了数据库的关键词字段),在插入的时候就一直报错,最后师兄给我解答了问题,在后面的数据库设计的时候,注意规避一些关键字的冲突.

收获:完成了完成query(查询)和insert(插入)的操作,虽然进度比较慢,但是感觉有一种扎实的感觉,知识在慢慢的积累,也在补以前的没有学习好的知识,还有师兄讲的一些注意事项,在开发的时候注意,不然那个错误不会好找,很浪费时间

今天感觉不错,感谢师兄的解惑----------->加油明天坚持

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值