博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java实现连接mysql数据库单元测试查询数据项目分享
阅读量:5791 次
发布时间:2019-06-18

本文共 6595 字,大约阅读时间需要 21 分钟。

1、按照javaweb项目的要求逐步建立搭建起机构,具体的类包有:model 、db、dao、test;具体的架构详见下图:

 

2、根据搭建的项目架构新建数据库test和数据库表t_userinfo并且添加对应的测试数据; (这里我使用的是绿色版的数据库,具体的下载地址:http://pan.baidu.com/s/1mg88YAc) 具体的建立数据库操作详见下图:

3、编写包中的各种类代码,具体参考代码如下:

UserInfo.java

/** * FileName:     UserInfo.java * @Description: TODO封装对象的信息 * Copyright: personage   * Company  personage     * @author:    gaoxing * @version    V1.0  * Createdate:         2014-5-25 下午2:26:41 * * Modification  History: * Date         Author        Version        Discription * ----------------------------------------------------------------------------------- * 2014-5-25       GX          1.0             1.0 * Why & What is modified: 
<修改原因描述>
*/package com.org.user.model;/** * @ClassName: UserInfo * @Description:TODO封装对象的信息 * @author: gaoxing * @date: 2014-5-25 下午2:26:41 */public class UserInfo { private int userid; private String username; private String password; /** * @Title: UserInfo * @Description: TODO(描述这个方法的作用) * @param: @param userid * @param: @param username * @param: @param password * @throws */ public UserInfo(int userid, String username, String password) { super(); this.userid = userid; this.username = username; this.password = password; } /** * @Title: UserInfo * @Description: TODO无参的构造方法 * @param: * @throws */public UserInfo() { super();}public int getUserid() { return userid; } public void setUserid(int userid) { this.userid = userid; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }

UserInfoDBManger.java

/** * FileName:     UserInfoDBManger.java * @Description: TODO 连接数据库的操作 * Copyright: personage   * Company  personage     * @author:    gaoxing * @version    V1.0  * Createdate:         2014-5-25 下午2:47:38 * * Modification  History: * Date         Author        Version        Discription * ----------------------------------------------------------------------------------- * 2014-5-25       GX          1.0             1.0 * Why & What is modified: 
<修改原因描述>
*/package com.org.user.db;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import com.mysql.jdbc.Connection;import com.mysql.jdbc.PreparedStatement;/** * @ClassName: UserInfoDBManger * @Description:TODO连接数据库的操作 * @author: gaoxing * @date: 2014-5-25 下午2:47:38 */public class UserInfoDBManger { private static Connection conn = null; private PreparedStatement ps = null; private ResultSet rs = null; public static Connection getConn() { String url = "jdbc:mysql://localhost:3306/test"; try { Class.forName("com.mysql.jdbc.Driver"); try { conn = (Connection) DriverManager.getConnection(url, "root", "mysql"); } catch (SQLException e) { System.out.println(e.getMessage()); } } catch (ClassNotFoundException e) { System.out.println(e.getMessage()); } return conn; } public void close() { try { rs.close(); ps.close(); conn.close(); } catch (SQLException e) { e.getMessage(); } } }

UserInfoDao.java

/** * FileName:     UserInfoDao.java * @Description: TODO 处理通过数据库的连接进行操作对象信息 * Copyright: personage   * Company  personage     * @author:    gaoxing * @version    V1.0  * Createdate:         2014-5-25 下午2:36:09 * * Modification  History: * Date         Author        Version        Discription * ----------------------------------------------------------------------------------- * 2014-5-25       GX          1.0             1.0 * Why & What is modified: 
<修改原因描述>
*/package com.org.user.dao;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import com.mysql.jdbc.Connection;import com.mysql.jdbc.PreparedStatement;import com.org.user.db.UserInfoDBManger;import com.org.user.model.UserInfo;/** * @ClassName: UserInfoDao * @Description:TODO处理通过数据库的连接进行操作对象信息 * @author: gaoxing * @date: 2014-5-25 下午2:36:09 */public class UserInfoDao { Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; public List
find(){ List
list=new ArrayList
(); String sql="select * from t_userinfo "; conn=UserInfoDBManger.getConn(); try { ps=(PreparedStatement) conn.prepareStatement(sql); rs=ps.executeQuery(); while (rs.next()) { UserInfo ui=new UserInfo(); ui.setUserid(rs.getInt(1)); ui.setUsername(rs.getString(2)); ui.setPassword(rs.getString(3)); list.add(ui); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; }}

UserInfoTest.java

/** * FileName:     UserInfoTest.java * @Description: TODO测试dao包的方法 * Copyright: personage   * Company  personage     * @author:    gaoxing * @version    V1.0  * Createdate:         2014-5-25 下午5:43:03 * * Modification  History: * Date         Author        Version        Discription * ----------------------------------------------------------------------------------- * 2014-5-25       GX          1.0             1.0 * Why & What is modified: 
<修改原因描述>
*/package com.org.user.test;import static org.junit.Assert.*;import java.util.List;import org.junit.AfterClass;import org.junit.BeforeClass;import org.junit.Test;import com.org.user.dao.UserInfoDao;import com.org.user.model.UserInfo;/** * @ClassName: UserInfoTest * @Description:TODO 测试dao包的方法 * @author: gaoxing * @date: 2014-5-25 下午5:43:03 */public class UserInfoTest { /** * @Title: setUpBeforeClass * @Description: TODO(描述这个方法的作用) * @param: @throws java.lang.Exception * @return: void * @throws */ @BeforeClass public static void setUpBeforeClass() throws Exception { } /** * @Title: tearDownAfterClass * @Description: TODO(描述这个方法的作用) * @param: @throws java.lang.Exception * @return: void * @throws */ @AfterClass public static void tearDownAfterClass() throws Exception { } /** * Test method for {@link com.org.user.dao.UserInfoDao#find()}. */ @Test public void testFind() { UserInfoDao udao=new UserInfoDao(); List
list=udao.find(); for (int i = 0; i < list.size(); i++) { UserInfo ui=list.get(i); System.out.println("名称: "+ui.getUsername()+"密码: "+ui.getPassword()); } }}

4、在编写好类内容之后,在搭建项目过程中要加入辅助的JUnit的测试包junit.jar,同时也要导入数据库的连接mysq-connector-java-5.1.7-bin.jar  sqljdbc.jar,这样才可以连接到数据库;

5、所有的工作做好之后,就可以启动服务进行运行了查看结果了,如果在JUnit测试台和控制台出现如下结果就表示项目运行成功了。

转载于:https://www.cnblogs.com/gxbk629/p/4489555.html

你可能感兴趣的文章
csrf 跨站请求伪造相关以及django的中间件
查看>>
MySQL数据类型--与MySQL零距离接触2-11MySQL自动编号
查看>>
生日小助手源码运行的步骤
查看>>
Configuration python CGI in XAMPP in win-7
查看>>
bzoj 5006(洛谷 4547) [THUWC2017]Bipartite 随机二分图——期望DP
查看>>
CF 888E Maximum Subsequence——折半搜索
查看>>
欧几里德算法(辗转相除法)
查看>>
面试题1-----SVM和LR的异同
查看>>
MFC控件的SubclassDlgItem
查看>>
如何避免历史回退到登录页面
查看>>
《图解HTTP》1~53Page Web网络基础 HTTP协议 HTTP报文内的HTTP信息
查看>>
unix环境高级编程-高级IO(2)
查看>>
树莓派是如何免疫 Meltdown 和 Spectre 漏洞的
查看>>
雅虎瓦片地图切片问题
查看>>
HTML 邮件链接,超链接发邮件
查看>>
HDU 5524:Subtrees
查看>>
手机端userAgent
查看>>
pip安装Mysql-python报错EnvironmentError: mysql_config not found
查看>>
http协议组成(请求状态码)
查看>>
怎样成为一个高手观后感
查看>>