1、按照javaweb项目的要求逐步建立搭建起机构,具体的类包有:model 、db、dao、test;
具体的架构详见下图:
2、根据搭建的项目架构新建数据库test和数据库表t_userinfo并且添加对应的测试数据; (这里我使用的是绿色版的数据库,具体的下载地址:http://pan.baidu.com/s/1mg88YAc)
具体的建立数据库操作详见下图:
3、编写包中的各种类代码,具体参考代码如下:
UserInfo.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
/** * 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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
/** * 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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
/** * 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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
/** * 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数据库单元测试查询数据的实例代码全部内容了,希望大家多多支持服务器之家~