发表于: 2017-12-01 22:43:44

3 775


昨天开始弄JdbcTemplate,感觉比较难,在师兄的指导下(让我开始从原生的jdbc开始链接数据库)

------>今天就开始着手coding

1.新建一个java -->demo


在建一个jdbc的包

建一个javajdbc链接的util



编写jdbcUtil链接数据库的类

package com.fuwei.util;

import java.sql.Connection;

import java.sql.DriverManager;

public class JdbcUtil {

/*

* 链接数据了并且将其封装 可以供其他数据操作调用 װ

*/

@SuppressWarnings("finally")

public static Connection getConnection() {

Connection conn=null;

 String driverName="com.mysql.jdbc.Driver";

 String dbURL="jdbc:mysql://localhost:3306/student";

 String userName="root";

 String userPwd="666666";

 try {

  Class.forName(driverName);

  conn = DriverManager.getConnection(dbURL,userName,userPwd);

 }

 catch(Exception e)

 {

  e.printStackTrace();

 } finally{

 return conn;

 }

}

 

public static void main(String[] args) {

Connection conn=JdbcUtil.getConnection();

if (conn==null) {

System.out.println("error");

}else {

System.out.println("finish");

}

}

}

运行代码测试成功


第一步完成(链接数据库用原生的jdbc)----->

接下来就是写一个实体类实现增删改查的基本功能

创建一个实体类User


我最先是测试,就只写了id name 两个字段

接下来创建UserDao业务查询的业务层

package com.fuwei.dao;

import java.sql.ResultSet;

import java.util.ArrayList;

import java.util.List;

import com.fuwei.model.User;

import com.fuwei.util.JdbcUtil;

import com.mysql.jdbc.Connection;

import com.mysql.jdbc.PreparedStatement;

public class UserDao {

// 获得所有的商品信息

public ArrayList<User> getAll() {

Connection conn = null;

PreparedStatement stmt = null;

ResultSet rs = null;

ArrayList<User> list = new ArrayList<User>(); // 商品集合

try {

conn =(Connection) JdbcUtil.getConnection();

String sql = "select * from stu_information;"; // SQL语句

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

rs = stmt.executeQuery();

while (rs.next()) {

User user = new User();

user.setId(rs.getInt("id"));

user.setUsername(rs.getString("username"));

user.setClasses(rs.getString("classes"));

user.setBirthday(rs.getString("birthday"));

user.setCity(rs.getString("city"));

user.setQq(rs.getInt("qq"));

user.setDesc(rs.getString("desc"));

user.setPhone(rs.getInt("phone"));

list.add(user);// 把一个商品加入集合

}

return list; // 返回集合。

} catch (Exception ex) {

ex.printStackTrace();

return null;

} finally {

// 释放数据集对象

if (rs != null) {

try {

rs.close();

rs = null;

} catch (Exception ex) {

ex.printStackTrace();

}

}

// 释放语句对象

if (stmt != null) {

try {

stmt.close();

stmt = null;

} catch (Exception ex) {

ex.printStackTrace();

}

}

}

}

public static void main(String[] args) {

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

UserDao userDao=new UserDao();

userList=userDao.getAll();

System.out.println(userList+"++++-+-");

}

}

运行的结果(这个不是我要结果,弄了好久我也获取不了里面的值)--->自己也改不了

[com.fuwei.model.User@3099e91c, com.fuwei.model.User@48974631, com.fuwei.model.User@43816032, com.fuwei.model.User@62d2953d, com.fuwei.model.User@6f440a7a, com.fuwei.model.User@5c0c08a7, com.fuwei.model.User@1a0c3b27, com.fuwei.model.User@18ff8acd, com.fuwei.model.User@30f1a58d, com.fuwei.model.User@48abe515]

这个是DAO的我自己写了方法测试,但是打印的是user里面的字符法人码,不知道怎么回事.但是可以运行查询没有报错,今天弄了一个下午,主要是不熟悉,我还是没有解决问题不能转成我想要的数据

 

今天的收获:就是开始coding了有些不熟悉,但是查资料,和相关的以前的知识,可以解决,但是还是有些不舍很熟悉,学到了jdbc的链接原生的,以前有了解,但是每次都是复制以前的,今天是自己慢慢的写的,感觉好多是以前没有注意到的细节,好友那个后面获取的数据我不知道什么意思(好像是那个几个字段的什么码的格式)

明天计划:再次把接下来的任务完成,熟悉jdbc的其他证明实现,还有解决那个user里面获取的数据

遇到的困难:就是那个获取的数据不知道转成什么格式,也不能转换成我先要最终的数据,这个有点麻烦

还有就是jdbc我不熟悉,我还是慢慢查资料慢慢解决的(以前没有注意到的细节和重点)

 

收获:就是jdbc的一些细节更加熟悉,还有dao层有了更深入的了解,还有业务的基本也是在dao,就是明白自己还有不足的在jdbc 的一些细节也很重要的地方,这些后面的任务倒要用到,今天还是比较忙碌的一天,查了很多资料

加油坚持------------> 麻烦师兄帮我解决上面那个问题(我想了很久没有解决)

 



返回列表 返回列表
评论

    分享到