java实现连接mysql数据库单元测试查询数据项目分享
2015-05-09 11:15
801 查看
1、按照javaweb项目的要求逐步建立搭建起机构,具体的类包有:model 、db、dao、test;具体的架构详见下图:
2、根据搭建的项目架构新建数据库test和数据库表t_userinfo并且添加对应的测试数据; (这里我使用的是绿色版的数据库,具体的下载地址:http://pan.baidu.com/s/1mg88YAc) 具体的建立数据库操作详见下图:
3、编写包中的各种类代码,具体参考代码如下:
UserInfo.java
UserInfoDBManger.java
UserInfoDao.java
UserInfoTest.java
4、在编写好类内容之后,在搭建项目过程中要加入辅助的JUnit的测试包junit.jar,同时也要导入数据库的连接mysq-connector-java-5.1.7-bin.jar sqljdbc.jar,这样才可以连接到数据库;
5、所有的工作做好之后,就可以启动服务进行运行了查看结果了,如果在JUnit测试台和控制台出现如下结果就表示项目运行成功了。
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<UserInfo> find(){ List<UserInfo> list=new ArrayList<UserInfo>(); 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<UserInfo> 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测试台和控制台出现如下结果就表示项目运行成功了。
相关文章推荐
- java实现连接mysql数据库单元测试查询数据项目分享
- java实现连接mysql数据库单元测试查询数据的实例代码
- java项目中使用JDBC连接mysql数据库查询数据
- IntelliJ IDEA2017 java连接mysql数据库并查询数据
- 使用java连接mysql数据库进行数据的查询插入更新及删除
- [置顶] 【java 操作mysql】java连接mysql数据库并查询数据
- Java连接MySQL数据库实现用户名密码的验证方法 Java语句中sql查询语句'' ""作用
- java中使用JDBC连接mysql数据库查询数据
- 我的第五个程序 java的JDBC连接mysql数据库 实现输入查询
- java Web连接MySQL数据库工具类 实现分组查询取组最后一条数据
- 通过代理类实现java连接数据库(使用dao层操作数据)实例分享
- 使用JDBC连接MySQL数据库--典型案例分析(八)----实现员工数据的分页查询
- java JDBC 连接数据库查询数据与直接使用sql的疑问
- 【java】itoo项目实战之百万数据查询优化收集与实践
- 【java】itoo项目实战之大数据查询之使用 new map 优化hibernate之级联查询
- 用Java实现向Cassandra数据库中插入和查询数据
- 利用JDBC实现java与MySQL数据库的连接及相关操作
- oracle12c JSON数据 使用SQL语句实现多表左外连接 显示无效数据 分页查询
- php连接mysql数据库(查询,插入数据)
- JAVA连接Mysql数据库,获取数据